<?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[m5stack camera module - hardware design bug]]></title><description><![CDATA[<p dir="auto">We have tested 7 m5stack camera modules we have bought from a vendor at AliExpress.</p>
<p dir="auto">We see an odd behaviour sometimes they work, sometimes not, some show image artefacts some do not even start AP.</p>
<p dir="auto">Digging deeper we probably found the cause and this is what we also found on Espressif Wroverkit as a real bug – there are no pullup resistors on the I2C bus !!!</p>
<p dir="auto">The GPIOs for SDA/SCL are programmed as open collector with internal pullup but this is much too weak for I2C bus.<br />
This has also been posted already in the ESP32 forum, it is absolutely necessary to have pullups (&lt;= 10k) on SDA and SCL.</p>
<p dir="auto">Looking into the  schematics of m5stack camera module. I2C signals SIO_D and SIO_C are connected to GPIO25 and GPIO23 respectively (Pin3 and Pin5 of the FPC connector). You can see in the schematics that these GPIOs are connected to<br />
the ESP32 (Pin 36 and Pin14) but do not have a pullup resistor.</p>
<p dir="auto">If you are running I2C only with weak internal pullup of ESP32 you will have a very unreliable system, if you are lucky the OV2640 get setup but maybe some bytes are not transmitted correctly. And this is exactly what we see, sometimes it is working (but with issues) sometimes not at all.</p>
<p dir="auto">As there is no rework possible m5stack should consider to do a new harware revision</p>
]]></description><link>https://community.m5stack.com/topic/322/m5stack-camera-module-hardware-design-bug</link><generator>RSS for Node</generator><lastBuildDate>Sun, 15 Mar 2026 14:15:46 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/topic/322.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 13 Sep 2018 08:40:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Wed, 17 Oct 2018 05:33:10 GMT]]></title><description><![CDATA[<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/766">@playthegame</a> "Unsoldered Peripherals" are classed as optional extras but I see where you are going with the pullups.<br />
Didn't know about Bitluni so currently scouring his work.</p>
]]></description><link>https://community.m5stack.com/post/1744</link><guid isPermaLink="true">https://community.m5stack.com/post/1744</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Wed, 17 Oct 2018 05:33:10 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Tue, 16 Oct 2018 22:43:54 GMT]]></title><description><![CDATA[<p dir="auto">Well, because of lack of documentation you are on your own.</p>
<p dir="auto">The demo example <a href="https://github.com/m5stack/esp32-cam-demo/blob/m5cam-psram/sdkconfig" target="_blank" rel="noopener noreferrer nofollow ugc">lists</a></p>
<h1>Pin Configuration</h1>
<p dir="auto">CONFIG_D0=32<br />
CONFIG_D1=35<br />
CONFIG_D2=34<br />
CONFIG_D3=5<br />
CONFIG_D4=39<br />
CONFIG_D5=18<br />
CONFIG_D6=36<br />
CONFIG_D7=19<br />
CONFIG_XCLK=27<br />
CONFIG_PCLK=21<br />
CONFIG_VSYNC=22<br />
CONFIG_HREF=26<br />
CONFIG_SDA=25<br />
CONFIG_SCL=23<br />
CONFIG_RESET=15</p>
<p dir="auto">The big question is: Is the BME280 and MPU6050 soldered on the board (as you indicated)? Is the I2C  SDA of the BME280 physically connected to G22 as the leaflet says or G25?</p>
<p dir="auto">For me unsoldered peripherals is very suspicious. It smells like big hardware bug. If M5Camera with PSRAM based on WROVER module uses really G22 for the I2C and also connects this pin as VSYNC to the cam the bug is obvious.</p>
<p dir="auto">A proper design is with I2C pullups. Here is an example from bitluni<br />
<img src="http://bitluni.net/wp-content/uploads/2017/11/Schematic.png" alt="Bild Text" class=" img-fluid img-markdown" /></p>
]]></description><link>https://community.m5stack.com/post/1742</link><guid isPermaLink="true">https://community.m5stack.com/post/1742</guid><dc:creator><![CDATA[PlayTheGame]]></dc:creator><pubDate>Tue, 16 Oct 2018 22:43:54 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Tue, 16 Oct 2018 05:59:05 GMT]]></title><description><![CDATA[<p dir="auto">Just updated my pins_arduino.h file for the M5Camera.<br />
<a href="https://github.com/Ajb2k3/M5Drone/blob/master/pins_arduino.h" target="_blank" rel="noopener noreferrer nofollow ugc">https://github.com/Ajb2k3/M5Drone/blob/master/pins_arduino.h</a></p>
<p dir="auto">Can someone double check this please as I haven't listed I2S yet.</p>
]]></description><link>https://community.m5stack.com/post/1736</link><guid isPermaLink="true">https://community.m5stack.com/post/1736</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Tue, 16 Oct 2018 05:59:05 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Sun, 14 Oct 2018 20:18:10 GMT]]></title><description><![CDATA[<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/766">@playthegame</a> 在 <a href="/post/1725">m5stack camera module - hardware design bug</a> 中说：</p>
<blockquote>
<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/443">@ajb2k3</a><br />
This is not true.<br />
The M5Stack ESP32 Camera Module is using a OV2640 with a "hack" of the I2S interface because this ESP32 subsystem is able to DMA for the data. The camera control is over the Serial Camera Control Bus (SCCB) protocol that is using I2C routines. Additionally the GROVE connector makes the I2C accessible for peripherals.<br />
The M5Stack ESP32 WROVER with PSRAM Camera Module additionally has the BME280 and MPU6050 on a second I2C.</p>
<p dir="auto">But who knows? Still there are no up to date schematics. I mean something with the actual wiring of the PCB. Not the overview picture. Which is btw only posted on Aliexpress:<br />
<img src="https://ae01.alicdn.com/kf/UTB8QQcnh__IXKJkSalUq6yBzVXaD.jpg" alt="Aliexpress" class=" img-fluid img-markdown" /></p>
<p dir="auto">My opinion: It is a silly idea to share the camera VSYNC  and SIOC with the BME280 and MPU6050.</p>
</blockquote>
<p dir="auto">Actually it does not have the BME and MPU (I have had this convo with m5stack and dissasembled it.<br />
The MPU version is on its way!<br />
The Grove is on a seperate I2C bus.</p>
<p dir="auto">Ahhh I see, Buy hacing the I2S bus you gain the full duplex needed for the camera along with the other lines which allow you to use the same clock line but seperate data lines.<br />
<a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/766">@playthegame</a> Cool didn't know that as Just been concentrating on running the two I2C buses.<br />
<a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/1">@M5Stack</a>, can we get some clear up here over the configuration?</p>
]]></description><link>https://community.m5stack.com/post/1727</link><guid isPermaLink="true">https://community.m5stack.com/post/1727</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Sun, 14 Oct 2018 20:18:10 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Sun, 14 Oct 2018 18:53:26 GMT]]></title><description><![CDATA[<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/443">@ajb2k3</a><br />
This is not true.<br />
The M5Stack ESP32 Camera Module is using a OV2640 with a "hack" of the I2S interface because this ESP32 subsystem is able to DMA for the data. The camera control is over the Serial Camera Control Bus (SCCB) protocol that is using I2C routines. Additionally the GROVE connector makes the I2C accessible for peripherals.<br />
The M5Stack ESP32 WROVER with PSRAM Camera Module additionally has the BME280 and MPU6050 on a second I2C.</p>
<p dir="auto">But who knows? Still there are no up to date schematics. I mean something with the actual wiring of the PCB. Not the overview picture. Which is btw only posted on Aliexpress:<br />
<img src="https://ae01.alicdn.com/kf/UTB8QQcnh__IXKJkSalUq6yBzVXaD.jpg" alt="Aliexpress" class=" img-fluid img-markdown" /></p>
<p dir="auto">My opinion: It is a silly idea to share the camera VSYNC  and SIOC with the BME280 and MPU6050.</p>
]]></description><link>https://community.m5stack.com/post/1725</link><guid isPermaLink="true">https://community.m5stack.com/post/1725</guid><dc:creator><![CDATA[PlayTheGame]]></dc:creator><pubDate>Sun, 14 Oct 2018 18:53:26 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Sun, 14 Oct 2018 16:41:20 GMT]]></title><description><![CDATA[<p dir="auto">As far as I am aware (from studying the docs) The Camera doesn't use I2C (hence the current lack of need for the pullups on the internal i2c bus. From what I read, the camera uses the quicker SPI interface.</p>
]]></description><link>https://community.m5stack.com/post/1722</link><guid isPermaLink="true">https://community.m5stack.com/post/1722</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Sun, 14 Oct 2018 16:41:20 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Sun, 14 Oct 2018 07:58:53 GMT]]></title><description><![CDATA[<p dir="auto">I think they are not using pullups for I2C in their other products too and this is a general bug in M5Stack hardware.</p>
]]></description><link>https://community.m5stack.com/post/1718</link><guid isPermaLink="true">https://community.m5stack.com/post/1718</guid><dc:creator><![CDATA[PlayTheGame]]></dc:creator><pubDate>Sun, 14 Oct 2018 07:58:53 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Fri, 12 Oct 2018 17:40:10 GMT]]></title><description><![CDATA[<p dir="auto">The "Uncased" model is useless, the psram version is far better.</p>
<p dir="auto"><a class="mention plugin-mentions-user plugin-mentions-a" href="https://community.m5stack.com/uid/769">@hg</a> wait a few months as a new version of the camera is on its way.</p>
]]></description><link>https://community.m5stack.com/post/1713</link><guid isPermaLink="true">https://community.m5stack.com/post/1713</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Fri, 12 Oct 2018 17:40:10 GMT</pubDate></item><item><title><![CDATA[Reply to m5stack camera module - hardware design bug on Fri, 12 Oct 2018 12:17:37 GMT]]></title><description><![CDATA[<p dir="auto">I was thinking about buying the m5stack camera module, but if this is the case, it makes it almost unusable.<br />
Anyone can confirm this is the case on their hardware too, and it's not an old batch?</p>
]]></description><link>https://community.m5stack.com/post/1711</link><guid isPermaLink="true">https://community.m5stack.com/post/1711</guid><dc:creator><![CDATA[hg]]></dc:creator><pubDate>Fri, 12 Oct 2018 12:17:37 GMT</pubDate></item></channel></rss>