arduino-libraries / Arduino_SensorKit

28 stars 16 forks source link

Documentation update; 3.3/5V switch on the board #10

Closed marcmerlin closed 3 years ago

marcmerlin commented 3 years ago

@marqdevx , I'll open a separate issue for this. As a reminder, I'm not asking for personal help, or being demanding :) , I was given this board to test and give feedback on, pretending that I'm a new user, so I'm doing just that :)

You said "You can switch the 3V3/5V switch, it will not make any damage to the Arduino Board cause it has its own regulator. The only issue is that the Display only works with 5V."

So, the arduino board, even if it has a 3.3V MCU, has a 5V line. Therefore your board receives 5V in both cases, but on the VREF line, receive 3.3V or 5V depending on what arduino you have (the newer/better ones, all being 3.3V). The issue is that if any sensor sends back 5V on a data line that is a 3.3V only GPIO on the board, that GPIO may get fried (you know this of course, just writing it out to be clear)

Documentation that explains what the switch does, would help. Is there a level shifter that takes 5V output from a device and brings it back down to 3.3V so that it doesn't fry anything (looks like not, I found no chips on the board)? If some of the sensors need 5V for power, every arduino board has a 5V pin, even if the arduino itself works at 3.3V, so I'm confused as to how the switch would help.

Some devices (you said the OLED) only work with 5V data input? (so a 3.3V high from an arduino 101 will not be able to talk to it?)

Basically a page explaining all this in your documentation would be welcome, I know some about those issues, but I'm not fully clear what the switch does, and what devices won't work at 3.3V and why? (it's typically for 5V devices to also work with 3.3V, even neopixels typically work with 3.3V signals)

marcmerlin commented 3 years ago

Thinking about this some more, I think I know what you're doing: All sensors, except maybe one? Work with 3.3V or 5V. The switch decides whether you are taking the 3.3V (Vref) instead of 5V (Vusb) from the arduino. On a 3.3V arduino, you definitely want to feed 3.3V to the sensors so that they don't try to send back 5V logic to the MCU's GPIO pins, which could fry them. The part where I'm confused is: why don't you take the Vref pin from the arduino which will be 3.3V or 5V depending on the switch and do the right thing no matter what? If you did that, you wouldn't need the switch at all?

marqdevx commented 3 years ago

In this case there is no issue with the 5V and the 3V3 GPIOs.

The carrier board is not only made for this kit. We cannot remove that switch.

Thanks for your feedback! :) Have a good one

marqdevx commented 3 years ago

Btw I will try to add some explanation about the switch issue in the content, I forgot to tell you. Thanks again!

marcmerlin commented 3 years ago

Hi @marqdevx , thanks for your reply. Just so that we're on the same page:

marcmerlin commented 3 years ago

hi, any update on that point (I didn't find documentation on the switch, do you have a link?)