New answers tagged

0

This is kind of convoluted to put as a comment and it is sort of an answer, so I'm making it an answer. Just to warn you, I have not tried to compile any of the code snippets here. Wire.onReceive(receiveData); registers your function so that it can be later called back in the context of the interrupt service routine used for handling I2C ("Wire") ...


1

Turns out the voltage regulator was AMS1117 - not MIC5205-KB50/KB33/KBAA like the one in the article. Ripping it off gave me the 0.026 mA idle current which is even better than what I was hoping for.


2

I fear we have a colloring issue. Your green is my blue ;-). I have looked into the data sheet of the level shifter IC and TI only describes scenarios with a higher voltage on the right side and a lower voltage on the left side. Also the allowed voltage translations do not contain 5V to 5V. So I would say in equal voltage scenario the Level shifter may not ...


0

There seems to be a number of different Sim900 shields from different suppliers? I suggest you check/post the datasheet of the one you're using. If I2C works without the shield, and does not work with the shield connected , then it seems logical that there is a pin clash. There is a good Random Nerd Tutorial on getting started with the shield on a Uno. Maybe ...


1

I'm working on something similar at the moment. Not a complete answer put some thoughts: Have you considered that the Uno is a 5v board and the ESP32 is 3.3v? You may need a signal level shifter (there are many to chose from) something like Pololu-2595 which is breadboard friendly. There's a good ESP32 I2C explanation at Random Nerd Tutorials.


1

It looks like the answer is a bit delayed, but if somebody else sees this issue once again. It might not be directly visible in the documentation (Datasheet or Solution Reference Manual), but here what you can find in the Trust M Datasheet Annex B (Section 11): "The OPTIGA™ Trust M will not acknowledge the slave address sent by a host if it is either ...


1

Why are you limited to sending one value? You can have multiple Wire.write() calls in one transmission. The slave side just needs to know to expect multiple values in order to accommodate. The best way to do this would be to read in values as long as the master is sending them (check out https://www.arduino.cc/en/Reference/WireRead). Then your master changes ...


Top 50 recent answers are included