Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3.3 V and 5 V tolerant design #4

Open
gsauthof opened this issue Oct 29, 2022 · 0 comments
Open

3.3 V and 5 V tolerant design #4

gsauthof opened this issue Oct 29, 2022 · 0 comments

Comments

@gsauthof
Copy link

Reading through the Sparkfun hook-up guide I was surprised to find a recommendation for a Sparkfun Logic Level Converter since the original schematics read like it would be superfluous. I left a comment under the guide and was recently informed that this issue tracker would be a better place for such feedback.

For reference my comment (posted it in May 2022):

You mention in the tutorial that one should use the SparkFun Logic Level Converter when programming a 3.3 V device. I first thought that this is a mistake because the original USBtinyISP schematic features a 74AHC125N which is 5V tolerant on its pins such that you just need to connect 3.3 V from the device you program to the 74AHC125N (and open the switch/jumper to break the on-board 5V to VCC connection).

But then I looked at your schematic/product images and noticed that you are using the 74AC125 instead which indeed isn't 5 V tolerant!

So it would be great if you could produce an improved AVR-Pocket-Programmer version which simply just uses a 5V tolerant buffer such as the 74AHC125.


I also asked about this on the Electronics SE site. I think that the answer of User 'Justme' contains some additional useful feedback you might want to consider in a future hardware revision.

I'll reproduce the relevant part here, even if the tone is a bit harsh, since the raised points might still be of interest to you:

The programmer schematic seems to be quite gimmicky and dubious. By design it uses software bit-banging for USB communication because the MCU has no hardware peripheral for USB. That would be technically OK, but since the MCU can't work at high enough speeds at 3.3V supply that would match USB data logic levels, the MCU needs to run at 5V supply and resistors and zeners are needed to limit 5V from GPIO from destroying PC USB data pins.

Also there is a 100uF capacitor on USB 5V line, and that's 10x more what USB specifications allow without limiting the surge current. Some PCs may trigger an overcurrent event and shut dowb the port. It might also trigger some fuses or polyfuses on some PCs.

This design really makes you think if you even want to plug it in to your computers or will it work programming non-5V target devices.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant