<?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[WiPy LoPy I2C with ATMEGA]]></title><description><![CDATA[<p dir="auto">I tried to to connect my LoPy with an Arduino Pro Mini @ 8MHz 3.3V via I2C. The results were not the expected.</p>
<p dir="auto">The reason I want to do this, is that I must count pulses from various devices. ESP8266 and ESP32 are not stable with ISR so I decided to keep the ATMEGA with the bug free hardware interrupts at PINS 2,3. Currently I use Software Serial with UART and it works just fine. But I would like to go further using I2C.</p>
<p dir="auto">I tested the solution but it didn't work. I was getting wrong bytes from time to time and that's why the setup is considered as not reliable.</p>
<p dir="auto">Does anybody managed to achieve this?</p>
<p dir="auto">Thanks<br />
Constantinos</p>
]]></description><link>https://forum.pycom.io/topic/1017/wipy-lopy-i2c-with-atmega</link><generator>RSS for Node</generator><lastBuildDate>Mon, 18 May 2026 06:29:31 GMT</lastBuildDate><atom:link href="https://forum.pycom.io/topic/1017.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 11 Apr 2017 23:03:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to WiPy LoPy I2C with ATMEGA on Tue, 11 Apr 2017 23:03:40 GMT]]></title><description><![CDATA[<p dir="auto">I tried to to connect my LoPy with an Arduino Pro Mini @ 8MHz 3.3V via I2C. The results were not the expected.</p>
<p dir="auto">The reason I want to do this, is that I must count pulses from various devices. ESP8266 and ESP32 are not stable with ISR so I decided to keep the ATMEGA with the bug free hardware interrupts at PINS 2,3. Currently I use Software Serial with UART and it works just fine. But I would like to go further using I2C.</p>
<p dir="auto">I tested the solution but it didn't work. I was getting wrong bytes from time to time and that's why the setup is considered as not reliable.</p>
<p dir="auto">Does anybody managed to achieve this?</p>
<p dir="auto">Thanks<br />
Constantinos</p>
]]></description><link>https://forum.pycom.io/post/6280</link><guid isPermaLink="true">https://forum.pycom.io/post/6280</guid><dc:creator><![CDATA[constantinos]]></dc:creator><pubDate>Tue, 11 Apr 2017 23:03:40 GMT</pubDate></item><item><title><![CDATA[Reply to WiPy LoPy I2C with ATMEGA on Wed, 12 Apr 2017 05:58:18 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.pycom.io/uid/603">@constantinos</a><br />
Maybe because I2C is still software implementation...</p>
]]></description><link>https://forum.pycom.io/post/6285</link><guid isPermaLink="true">https://forum.pycom.io/post/6285</guid><dc:creator><![CDATA[livius]]></dc:creator><pubDate>Wed, 12 Apr 2017 05:58:18 GMT</pubDate></item><item><title><![CDATA[Reply to WiPy LoPy I2C with ATMEGA on Wed, 12 Apr 2017 07:12:45 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.pycom.io/uid/603">@constantinos</a><br />
Have you tried lowering your I2C speed (baurate= init parameter)?</p>
<p dir="auto">Also how long is your cable? You can try adding external pull-up (to 3.3V) resistors too (maybe 4.7K)</p>
]]></description><link>https://forum.pycom.io/post/6292</link><guid isPermaLink="true">https://forum.pycom.io/post/6292</guid><dc:creator><![CDATA[jmarcelino]]></dc:creator><pubDate>Wed, 12 Apr 2017 07:12:45 GMT</pubDate></item><item><title><![CDATA[Reply to WiPy LoPy I2C with ATMEGA on Wed, 12 Apr 2017 07:35:44 GMT]]></title><description><![CDATA[<p dir="auto">Are you using the Arduino libraries with your ATMEGA? If so those enable AVR's internal pull-ups too, so you have two devices enabling weak, not really up to the job, pull-ups at both ends. I guess it's very possible the bus isn't really running on spec doing that.</p>
<p dir="auto">I don't know if you can disable the pull-ups on the Arduino or Pycom side, but maybe worth investigating.</p>
<p dir="auto">Edit : On the Arduino side you should be able to</p>
<pre><code>  digitalWrite(SDA, 0);
  digitalWrite(SCL, 0);
</code></pre>
<p dir="auto">After calling Wire.begin to disable the pull-ups? Maybe that could help.</p>
]]></description><link>https://forum.pycom.io/post/6293</link><guid isPermaLink="true">https://forum.pycom.io/post/6293</guid><dc:creator><![CDATA[jmarcelino]]></dc:creator><pubDate>Wed, 12 Apr 2017 07:35:44 GMT</pubDate></item><item><title><![CDATA[Reply to WiPy LoPy I2C with ATMEGA on Thu, 13 Apr 2017 04:54:15 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.pycom.io/uid/212">@jmarcelino</a> Cables are really very short. Can't be shorter... Baud rate is 100000. I tried different baud rates but this value seems to be the correct.</p>
<p dir="auto">I will try the pullup resistors today</p>
]]></description><link>https://forum.pycom.io/post/6343</link><guid isPermaLink="true">https://forum.pycom.io/post/6343</guid><dc:creator><![CDATA[constantinos]]></dc:creator><pubDate>Thu, 13 Apr 2017 04:54:15 GMT</pubDate></item></channel></rss>