<?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[[CoreS3] I2C doesn&#x27;t work...]]></title><description><![CDATA[<p dir="auto">Hi!</p>
<p dir="auto">I can't get I2C working properly with my CoreS3...</p>
<p dir="auto">Environment:</p>
<ul>
<li>CoreS3</li>
<li>ENV-III sensor on Port A or Port B (no difference)</li>
<li>Arduino IDE 2.2.1 with M5CoreS3 0.0.4</li>
<li>Same with PlatformIO Core 6.1.11 with M5CoreS3 0.0.4</li>
</ul>
<p dir="auto">The issue is really weird:</p>
<ol>
<li>Connect a sensor on Port A or B</li>
<li>Flash the "CoreS3 UserDemo" with M5Burner. Sensor can be seen in the I2C menu</li>
<li>Flash a program using I2C (E.g. the <code>I2C_Tester.ino</code> from the sample folder)</li>
<li>So far so good, it all works, we can get data from the SHT30 and the QMP6988 without any issue. Works on Port A and Port B.</li>
<li>Power off the device completely (Battery off, USB cable disconnected), the re-connect.</li>
<li>I2C doesn't work anymore (behavior is slightly different with the port: Port A times out and Port B just doesn't see any sensor, but none work)</li>
<li>The only way to get I2C back is to re-flash "CoreS3 UserDemo"</li>
</ol>
<p dir="auto">I2C does work as expected with UiFlow, so I assume the CoreS3 and the ENV-III aren't faulty.<br />
I would think that I2C isn't properly initialized at startup...</p>
<p dir="auto">The PIO console sometimes shows memory allocation error during startup (before <code>setup()</code> is invoked)</p>
<pre><code>0:40:11.059 &gt; ESP-ROM:esp32s3-20210327
20:40:11.059 &gt; Build:Mar 27 2021
20:40:11.060 &gt; rst:0xc (RTC_SW_CPU_RST),boot:0x2b (SPI_FAST_FLASH_BOOT)
20:40:11.060 &gt; Saved PC:0x40377900
20:40:11.062 &gt; SPIWP:0xee
20:40:11.062 &gt; mode:DIO, clock div:1
20:40:11.064 &gt; load:0x3fce3808,len:0x44c
20:40:11.066 &gt; load:0x403c9700,len:0xbe4
20:40:11.068 &gt; load:0x403cc700,len:0x2a68
20:40:11.090 &gt; entry 0x403c98d4
20:40:11.245 &gt; [   186][E][Wire.cpp:152] allocateWireBuffer(): Can't allocate memory for I2C_0 rxBuffer
20:40:11.247 &gt; [   187][I][esp32-hal-i2c.c:75] i2cInit(): Initialising I2C Master: sda=2 scl=1 freq=100000
20:40:12.143 &gt; [  1084][I][esp32-hal-psram.c:96] psramInit(): PSRAM enabled
20:40:12.160 &gt; Initialize M5
20:40:13.660 &gt; M5CoreS3 initializing...OK
</code></pre>
]]></description><link>https://community.m5stack.com/topic/5654/cores3-i2c-doesn-t-work</link><generator>RSS for Node</generator><lastBuildDate>Sun, 19 Apr 2026 00:09:33 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/topic/5654.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 19 Sep 2023 19:02:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [CoreS3] I2C doesn&#x27;t work... on Wed, 20 Sep 2023 10:50:41 GMT]]></title><description><![CDATA[<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/4037">@felmue</a> That was the problem</p>
<p dir="auto">Thank you very much!</p>
]]></description><link>https://community.m5stack.com/post/22272</link><guid isPermaLink="true">https://community.m5stack.com/post/22272</guid><dc:creator><![CDATA[Amedee]]></dc:creator><pubDate>Wed, 20 Sep 2023 10:50:41 GMT</pubDate></item><item><title><![CDATA[Reply to [CoreS3] I2C doesn&#x27;t work... on Wed, 20 Sep 2023 08:12:43 GMT]]></title><description><![CDATA[<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/4037">@felmue</a> there is also a king running issue with the ENV III unit</p>
]]></description><link>https://community.m5stack.com/post/22269</link><guid isPermaLink="true">https://community.m5stack.com/post/22269</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Wed, 20 Sep 2023 08:12:43 GMT</pubDate></item><item><title><![CDATA[Reply to [CoreS3] I2C doesn&#x27;t work... on Wed, 20 Sep 2023 08:10:22 GMT]]></title><description><![CDATA[<p dir="auto">Hello <a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/54198">@Amedee</a></p>
<p dir="auto">on M5CoreS3 the 5 V on the Groove ports needs to be enabled explicitly. See section <em>Power Management</em> <a href="https://docs.m5stack.com/en/core/CoreS3" target="_blank" rel="noopener noreferrer nofollow ugc">here</a>.</p>
<p dir="auto">Try calling below function in <code>setup()</code>:</p>
<pre><code>M5.Axp.powerModeSet(POWER_MODE_USB_IN_BUS_OUT);
</code></pre>
<p dir="auto">Thanks<br />
Felix</p>
]]></description><link>https://community.m5stack.com/post/22268</link><guid isPermaLink="true">https://community.m5stack.com/post/22268</guid><dc:creator><![CDATA[felmue]]></dc:creator><pubDate>Wed, 20 Sep 2023 08:10:22 GMT</pubDate></item></channel></rss>