<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Problems with the I2C Grove Interface]]></title><description><![CDATA[<p dir="auto">Hello dear M5Stack Team,</p>
<p dir="auto">I come from Germany and unfortunately my English is not perfect.<br />
I hope you can understand me.</p>
<p dir="auto">I think the 5MStack product line is really good. It's all in a nice case and the products are well made.<br />
Now I unfortunately noticed a few things which are not so beautiful, but maybe I didn't see it correctly.</p>
<p dir="auto">It's about the I2C Grove interface. I think there are some hardware design bugs.<br />
Unfortunately I can't see the I2C Grove interface in the schematics of the M5Stack.<br />
Therefore I assume that SCL and SDA from the Grove interface are directly connected to the ESP32. (without logic)</p>
<p dir="auto">Now to the problems:</p>
<ol>
<li>
<p dir="auto">A level shifter is missing in the M5Stack.<br />
If I look at the schematics of the sensors (e.g. the ENV unit) I can see that the pull-up resistors in the sensor modules are connected to 5V (VCC).<br />
<img src="https://docs.m5stack.com/assets/img/product_pics/unit/unit_env_grove_a.png" alt="Bild Text" class=" img-fluid img-markdown" /><br />
<img src="https://docs.m5stack.com/assets/img/product_pics/unit/env_sch.JPG" alt="Bild Text" class=" img-fluid img-markdown" /><br />
This means that 5V is connected to the inputs of the ESP32. The ESP32 only supports voltages up to 3.6V. The 5V voltage could demage the I2C inputs of the M5Stack.<br />
With a level shifter in the M5Stack this problem could be solved.</p>
</li>
<li>
<p dir="auto">The pull-up resistors are built into the sensors.<br />
Unfortunately the pull-up resistors are built into the sensors. This is very unfortunate because if I use the Unit Hub to use several sensors then I have several pull-up resistors parallel to my I2C bus.<br />
<img src="http://www.sengpielaudio.com/FormelWiderstandParallel01.gif" alt="Bild Text" class=" img-fluid img-markdown" /><br />
The total resistance of the pullup is getting smaller and smaller due to this.<br />
So maybe bigger circuits can't work anymore because the pullup resistance is too small.</p>
</li>
</ol>
<p dir="auto">Why is the pull-up resistor not installed centrally in the M5Stack?</p>
<p dir="auto">I hope you don't misunderstand me. I love the M5Stack, but I noticed these problems.</p>
<p dir="auto">Greetings from Germany</p>
<p dir="auto">Staind</p>
]]></description><link>https://community.m5stack.com/topic/523/problems-with-the-i2c-grove-interface</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 23:37:35 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/topic/523.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 20 Jan 2019 17:24:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problems with the I2C Grove Interface on Thu, 07 Nov 2019 08:35:21 GMT]]></title><description><![CDATA[<p dir="auto">Hello, Did you end up finding a solution ? This is my issue and I think it may be related :</p>
<p dir="auto">Hello, I am trying to integrate a RTC module (DS3231). It works fine as long as I don't use the M5Stack library. As soon as I combine M5.begin() with Wire.begin() there seems to be a conflict. Scanning I2C reveals 2 devices :</p>
<p dir="auto">0x57 - M5 LCD ?<br />
0x68 - RTC Module DS3231</p>
<p dir="auto">Any clue as to what is going wrong ? What PINS are used by the LCD ? I suppose 21 (SDA) and 18 (SCL) ?</p>
<p dir="auto">Kind Regards,</p>
<p dir="auto">Tony</p>
]]></description><link>https://community.m5stack.com/post/6289</link><guid isPermaLink="true">https://community.m5stack.com/post/6289</guid><dc:creator><![CDATA[Tokn59]]></dc:creator><pubDate>Thu, 07 Nov 2019 08:35:21 GMT</pubDate></item><item><title><![CDATA[Reply to Problems with the I2C Grove Interface on Sun, 11 Aug 2019 10:03:47 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/staind87" aria-label="Profile: staind87">@<bdi>staind87</bdi></a> said in <a href="/post/2581">Problems with the I2C Grove Interface</a>:</p>
<blockquote>
<p dir="auto">Hello dear M5Stack Team,</p>
<p dir="auto">I come from Germany and unfortunately my English is not perfect.<br />
I hope you can understand me.</p>
<p dir="auto">I think the 5MStack product line is really good. It's all in a nice case and the products are well made.<br />
Now I unfortunately noticed a few things which are not so beautiful, but maybe I didn't see it correctly.</p>
<p dir="auto">It's about the I2C Grove interface. I think there are some hardware design bugs.<br />
Unfortunately I can't see the I2C Grove interface in the schematics of the M5Stack.<br />
Therefore I assume that SCL and SDA from the Grove interface are directly connected to the ESP32. (without logic)</p>
<p dir="auto">Now to the problems:</p>
<ol>
<li>
<p dir="auto">A level shifter is missing in the M5Stack.<br />
If I look at the schematics of the sensors (e.g. the ENV unit) I can see that the pull-up resistors in the sensor modules are connected to 5V (VCC).<br />
<img src="https://docs.m5stack.com/assets/img/product_pics/unit/unit_env_grove_a.png" alt="Bild Text" class=" img-fluid img-markdown" /><br />
<img src="https://docs.m5stack.com/assets/img/product_pics/unit/env_sch.JPG" alt="Bild Text" class=" img-fluid img-markdown" /><br />
This means that 5V is connected to the inputs of the ESP32. The ESP32 only supports voltages up to 3.6V. The 5V voltage could demage the I2C inputs of the M5Stack.<br />
With a level shifter in the M5Stack this problem could be solved.</p>
</li>
<li>
<p dir="auto">The pull-up resistors are built into the sensors.<br />
Unfortunately the pull-up resistors are built into the sensors. This is very unfortunate because if I use the Unit Hub to use several sensors then I have several pull-up resistors parallel to my I2C bus.<br />
<img src="http://www.sengpielaudio.com/FormelWiderstandParallel01.gif" alt="Bild Text" class=" img-fluid img-markdown" /><br />
The total resistance of the pullup is getting smaller and smaller due to this.<br />
So maybe bigger circuits can't work anymore because the pullup resistance is too small.</p>
</li>
</ol>
<p dir="auto">Why is the pull-up resistor not installed centrally in the M5Stack?</p>
<p dir="auto">I hope you don't misunderstand me. I love the M5Stack, but I noticed these problems.</p>
<p dir="auto">Greetings from Germany</p>
<p dir="auto">Staind</p>
</blockquote>
<p dir="auto">I recently have problems with using both ENV unit and TOF unit on a I2C hub on M5StickC. Using just 1 one of them at one time works. I wonder if this is related to what you discovered?</p>
<p dir="auto">Also, would using a PaHub solve the problem?</p>
]]></description><link>https://community.m5stack.com/post/5087</link><guid isPermaLink="true">https://community.m5stack.com/post/5087</guid><dc:creator><![CDATA[ws1088]]></dc:creator><pubDate>Sun, 11 Aug 2019 10:03:47 GMT</pubDate></item><item><title><![CDATA[Reply to Problems with the I2C Grove Interface on Sat, 26 Jan 2019 08:31:09 GMT]]></title><description><![CDATA[<p dir="auto">Yes it is unfortunate that there's just not enough information on these boards, they seem to be spending lots of effort generating different modules but not so much effort in support documentation which is a shame because it's a great product.</p>
]]></description><link>https://community.m5stack.com/post/2701</link><guid isPermaLink="true">https://community.m5stack.com/post/2701</guid><dc:creator><![CDATA[gadjet]]></dc:creator><pubDate>Sat, 26 Jan 2019 08:31:09 GMT</pubDate></item></channel></rss>