tag:blogger.com,1999:blog-2366303236405828492024-02-25T04:44:44.233+08:00Arduino for BeginnersThis blog is into Arduino and electronics for Beginners from Malaysia. I will be focusing on what projects you can use the Arduino for, Arduino shields, physical computing and interaction with the real world using various types of sensors and actuators. Some focus would be on Arduino in Malaysia like where to obtain electronics parts, gathering, workshops and meetups. Please join the facebook group for discussions, additional project photos and information sharing among beginners.Unknownnoreply@blogger.comBlogger46125tag:blogger.com,1999:blog-236630323640582849.post-67543798665733271642023-07-01T22:02:00.018+08:002023-07-01T22:08:29.333+08:00Cytron Robo Pico review<h2 style="text-align: left;">Introduction</h2><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZsTea5pg8V_6ZJyT1K50y4HX1_hjmCFmTFwUYc89gM9qqGTGagIOriHvsrgB9OILlTLyIR2ATy0T7YrgnfwRDM3BHSJypiWt8iagBCsC8MfefOYez9uUzdBS4LRtjp-3I4skVledMx7Y3DjiiLpjW_MECWBLYFofcIO-9EN6nb_JwAH2OhJqvdGCwx5mW/s2482/IMG_20230629_203307.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1653" data-original-width="2482" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZsTea5pg8V_6ZJyT1K50y4HX1_hjmCFmTFwUYc89gM9qqGTGagIOriHvsrgB9OILlTLyIR2ATy0T7YrgnfwRDM3BHSJypiWt8iagBCsC8MfefOYez9uUzdBS4LRtjp-3I4skVledMx7Y3DjiiLpjW_MECWBLYFofcIO-9EN6nb_JwAH2OhJqvdGCwx5mW/w400-h266/IMG_20230629_203307.jpg" width="400" /></a></div><br /><br /><div><br /></div><div>Cytron send me a new product, <b>Robo Pico</b> (<a href="https://cytron.io/p-robo-pico-simplifying-robotics-with-raspberry-pi-pico/?tracking=rporpg">link</a>) together with <b>Pico W</b> (<a href="https://my.cytron.io/p-raspberry-pi-pico-wireless-board-smd-presoldered-headers">link2</a>) for review and here are the essential summary. </div><div><br /></div><h2 style="text-align: left;">Unboxing & PCB layout</h2><div><ul style="text-align: left;"><li>the box comes with Robo Pico purple board</li><li>4 x grove cables to 4 female dupont</li><li>cute mini screw driver</li><li>nice purple soldermask PCB</li></ul>This Printed Circuit Board (PCB) is well designed with <b>CLEAN and CLEAR</b> labels on front and back of PCB. All pins are <b>CLEARLY </b>labeled without the need to refer to the documentations. I really ike the flexible power options to power up this board from USB, DC in and also Li-Ion battery + charging options al bult-in.</div><div><br /></div><div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhx4EFNceX-mHoao5-RIvglG0-lwFoUgJt6-RE7ke2kK8Kb7SbOh7_p3GwIDrG7tiabd6T5NJUOB8HCGYpxRbo8LeHiH0fDZACu_4-XCuoZfx21VRUxyiyffbzTVEjBUIoI5ArJrZ3XzOcMzomNmFE_qvkIVW5mlKxzWcBTaASkIvGq6zEvj8Ooaa4oJb2d/s2489/IMG_20230629_203322.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1706" data-original-width="2489" height="274" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhx4EFNceX-mHoao5-RIvglG0-lwFoUgJt6-RE7ke2kK8Kb7SbOh7_p3GwIDrG7tiabd6T5NJUOB8HCGYpxRbo8LeHiH0fDZACu_4-XCuoZfx21VRUxyiyffbzTVEjBUIoI5ArJrZ3XzOcMzomNmFE_qvkIVW5mlKxzWcBTaASkIvGq6zEvj8Ooaa4oJb2d/w400-h274/IMG_20230629_203322.jpg" width="400" /></a></div></div><h2 style="text-align: left;">Flexible power options + battery charging</h2><div><ul style="text-align: left;"><li>USB Micro from the Pico/Pico W</li><li>DC-in ( 3.6 - 6V ) ( green screw terminals )</li><li>single cell LiPO/Li-Ion battery ( ph2.0 connector )</li><li>Built-in 1-cell charger to charge the battery when USB is plugged in.</li><li>On / Off switch</li></ul><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhYtkv6iQTblQ3ZudjAblMpjE27cO24-CkTHHfGt_2uklNvsBzznY0fSvyjw3gu1mLxc67ipuvHzn9OMPzUjjhwhqyyIwRIbheMgzQlr5LNi88Sx3XZSGGhZ9dxWUqyy0LqnEAWBV3nP4XO89CdBEeC6IV5J1F3Run_fxaK_np1qUCXRV6h9Q5PwxC_1EBs" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="475" data-original-width="718" height="212" src="https://blogger.googleusercontent.com/img/a/AVvXsEhYtkv6iQTblQ3ZudjAblMpjE27cO24-CkTHHfGt_2uklNvsBzznY0fSvyjw3gu1mLxc67ipuvHzn9OMPzUjjhwhqyyIwRIbheMgzQlr5LNi88Sx3XZSGGhZ9dxWUqyy0LqnEAWBV3nP4XO89CdBEeC6IV5J1F3Run_fxaK_np1qUCXRV6h9Q5PwxC_1EBs" width="320" /></a></div><br /><div><br /></div></div><h2 style="text-align: left;">Available Ports</h2><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjc6kMnKUmxpkA0V6mBwX8Isoqt8Oeb-1n6CycCRJK5EtP8kwfzuCn6f9zmH9pINliETuvZ8STz2SA8XukRGr_ULKG9wSulJmxGMPm3xD7dplHZ1xWKqpHVXc1Oxa5EJhiGrDw5EFG6t9Zke5Hy8UTQrDl2P_G7sF1XKEjPO1Abs58OHvAKQ9aQTqJmoCwT" style="margin-left: 1em; margin-right: 1em;"><img data-original-height="555" data-original-width="1085" height="328" src="https://blogger.googleusercontent.com/img/a/AVvXsEjc6kMnKUmxpkA0V6mBwX8Isoqt8Oeb-1n6CycCRJK5EtP8kwfzuCn6f9zmH9pINliETuvZ8STz2SA8XukRGr_ULKG9wSulJmxGMPm3xD7dplHZ1xWKqpHVXc1Oxa5EJhiGrDw5EFG6t9Zke5Hy8UTQrDl2P_G7sF1XKEjPO1Abs58OHvAKQ9aQTqJmoCwT=w640-h328" width="640" /></a></div><br /><br /></div><div><ul style="text-align: left;"><li>2 x 20 ways female headers for Pi Pico/W</li><li>1 x reset button ( *** )</li><li>2 x channel DC motor driver</li><li>4 x servo motor ports</li><li>4 x motor quick test buttons</li><li>2 x user buttons</li><li>7 x grove ports</li><li>1 x maker port ( Qwiic / STEMMA QT / JST SH-4 ) </li><li>13 x LED indicators on all the non-power grove ports</li><li>2 x RGB LED WS2812B/NeoPixels</li><li>1 x piezo buzzer</li><li>on/off switch</li></ul><div><br /></div></div><h2 style="text-align: left;">Reviews & Sample Project</h2><div>Being an Arduino site, I will do this review using <b>Arduino framework</b> with the following using the Raspberry Pi Pico / RP2040 by Earle Philhower ( <a href="https://github.com/earlephilhower/arduino-pico">arduino-pico</a> ) and the documentation are located here <a href="https://arduino-pico.readthedocs.io/en/latest/">https://arduino-pico.readthedocs.io/en/latest/</a></div><div><br /></div><div>Since this comes with a <b>Pico W with headers</b> (<a href="https://my.cytron.io/p-raspberry-pi-pico-wireless-board-smd-presoldered-headers">link2</a>), I decided to do a <b>web controlled Servo</b> + <b>RGB LED</b> using a slider.</div><div><br /></div><div>I have hookup 2 x servo motors to GPIO14 and GPIO15 and a 18650 battery with a PH2.0 connector to the battery port.</div><div><br /></div><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7L18GfeNSH0lv8edMUrxPaHfxGBYNlWY3_C_x1HCOs3jT-krSXQ7NjV7hPWcGyyojqHk_Mz7kmfTIMrML49bw0eQTzG9Ve8GgfKvCLSRiFA4VYCPbmxxX5HTWpSy79dCQFXDdFTzB3Y47MUnNlo9wOVZxCrWcN0ilq6YrxuOH_BSRV0Evb7RmEICdZSwI/s2048/IMG_20230630_131059.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1117" data-original-width="2048" height="219" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7L18GfeNSH0lv8edMUrxPaHfxGBYNlWY3_C_x1HCOs3jT-krSXQ7NjV7hPWcGyyojqHk_Mz7kmfTIMrML49bw0eQTzG9Ve8GgfKvCLSRiFA4VYCPbmxxX5HTWpSy79dCQFXDdFTzB3Y47MUnNlo9wOVZxCrWcN0ilq6YrxuOH_BSRV0Evb7RmEICdZSwI/w400-h219/IMG_20230630_131059.jpg" width="400" /></a></div><br /></div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgYUTRjsDWTFDiV-NthXa_1uHTSFuuYRAVrqWCHWmEpgvhnz92_uVNB1PPOyWJMyo4ntUp3nQEvvgUde5DSoa9tK83hsX3i9tSsR1j76HHTJZMAjmkaKXMEgQUnWMlOyxDQX9XXBVMvdCHy4RBgRNbxJiuwF1HRfzmsIk5bdCr6I6WTdhLVOe0-6q778hd/s2048/IMG_20230630_131116.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1216" data-original-width="2048" height="238" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgYUTRjsDWTFDiV-NthXa_1uHTSFuuYRAVrqWCHWmEpgvhnz92_uVNB1PPOyWJMyo4ntUp3nQEvvgUde5DSoa9tK83hsX3i9tSsR1j76HHTJZMAjmkaKXMEgQUnWMlOyxDQX9XXBVMvdCHy4RBgRNbxJiuwF1HRfzmsIk5bdCr6I6WTdhLVOe0-6q778hd/w400-h238/IMG_20230630_131116.jpg" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div>This is the first time I m using the <b>Pico W</b> but I have been using Pico in my past project before. The amazing thing is ALL the past Wifi examples ( mostly from ESP32 ) <b>JUST WORKS</b> without any modifications to the source codes. If you are unsure which Pico to get, get the Pico W for future expandions.</div><div><br /></div><div>The major differences between Pico and Pico W is that the Pico built-in LED is on GPIO25 where the Pico W have the GPIO25 driving the Wireless module.</div><div><br /></div><div>I am utilizing the 8 blue LED ( above the 5 grove connectors ) as a left or right car signal indicator animations when the servo is turning to the left or right.</div><div><br /></div><div>When the servo is turning left, the rows of blue LED will animate a left signal turn and then the servo is turning right, it will do the right signal animation.</div><div><br /></div><div>The video for this review is located at <a href="https://www.tiktok.com/@stanleyseow/video/7250847592966343938">www.tiktok.com/@stanleyseow/</a></div><div><br /></div><div>Here is the source code at <a href="https://pastebin.com/ZARAa14L">https://pastebin.com/ZARAa14L</a></div><div><br /></div><h2 style="text-align: left;">Compared to Maker Pi Pico</h2><div><a href="https://my.cytron.io/p-maker-pi-pico-base">https://my.cytron.io/p-maker-pi-pico-base</a></div><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEh9RdD1SW75P_9jYEZtLcspZ3tVsDGnRCHuxd0o2lTlr2Jp4zAfWvkn0zHYamNI_r1warKbNw-6hFVa4GfqtPBQwNTDIszPl3GyCJt6R8rbKbDk_nP784hBkz4-Eccsl7bbH-C0Xfii65LslZRR61xete2bobkhqLEyBmJSpgptH3cG4ij38LjjRk-3OVtF" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="383" data-original-width="515" height="238" src="https://blogger.googleusercontent.com/img/a/AVvXsEh9RdD1SW75P_9jYEZtLcspZ3tVsDGnRCHuxd0o2lTlr2Jp4zAfWvkn0zHYamNI_r1warKbNw-6hFVa4GfqtPBQwNTDIszPl3GyCJt6R8rbKbDk_nP784hBkz4-Eccsl7bbH-C0Xfii65LslZRR61xete2bobkhqLEyBmJSpgptH3cG4ij38LjjRk-3OVtF" width="320" /></a></div><br /></div><div><br /></div><h3 style="text-align: left;">Robo Pico :</h3><div><ul style="text-align: left;"><li>Have 2 x DC Motor drivers</li><li>Have 4 x Servo motors pins</li><li>Battery port and charging circuit </li><li>1 x Maker port ( Qwiic / STEMMA QT / JST SH-4 ) </li></ul><h3 style="text-align: left;">Maker Pi Pico :</h3></div><div><ul style="text-align: left;"><li>SDcard slot</li><li>L/R audio output</li><li>1 less WS2812B RGB LED</li></ul></div><div><br /></div><h2 style="text-align: left;">Summary Links</h2><div><ul style="text-align: left;"><li>Robo Pico <a href="https://cytron.io/p-robo-pico-simplifying-robotics-with-raspberry-pi-pico/?tracking=rporpg">https://my.cytron.io/p-robo-pico-simplifying-robotics-with-raspberry-pi-pico</a></li><li>Pico W <a href="https://my.cytron.io/p-raspberry-pi-pico-wireless-board-smd-presoldered-headers">https://my.cytron.io/p-raspberry-pi-pico-wireless-board-smd-presoldered-headers</a></li><li>Arduino Pico Framework <a href="https://github.com/earlephilhower/arduino-pico">https://github.com/earlephilhower/arduino-pico</a></li><li>Arduino Pic Docs <a href="https://arduino-pico.readthedocs.io/en/latest/">https://arduino-pico.readthedocs.io/en/latest/</a></li><li>Source code <a href="https://pastebin.com/ZARAa14L">https://pastebin.com/ZARAa14L</a></li><li>Robo Pico Video demo <a href="https://www.tiktok.com/@stanleyseow/video/7250847592966343938">www.tiktok.com/@stanleyseow</a></li><li>related Maker Pi Video 1 <a href="https://www.tiktok.com/@stanleyseow/video/7119343811972680987">www.tiktok.com/@stanleyseow</a></li><li>related Maker Pi Video 2 <a href="https://www.tiktok.com/@stanleyseow/video/7111553997336579355">www.tiktok.com/@stanleyseow</a></li></ul></div><div><br /></div><h3 style="text-align: left;">Contact Info </h3><div><ul style="text-align: left;"><li><a href="https://linktr.ee/stanleyseow">https://linktr.ee/stanleyseow</a></li><li><a href="https://www.tiktok.com/@stanleyseow/">https://www.tiktok.com/@stanleyseow/</a></li><li><a href="https://www.facebook.com/SVTmaker/">https://www.facebook.com/SVTmaker/</a></li></ul></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><br /><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><div><br /></div></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><p><br /></p><p><br /></p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-61339776728323829932023-02-21T22:07:00.003+08:002023-02-21T22:07:23.059+08:00Introduction to FPGA for Makers<p> </p><div style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-6236PzG25UIe65yRWABUpS-PpDzKesNLQv_E4DWHCTera9fpkgzy0YgsN_KQ13teymkhAnkOg44G14IU1BuWDIsQsIQieneLSU_koAA3cjJSH05WapmHGczheJtaoR3ytI8fMiQdFd4anu0_AyziZdNHmqU_3jduU5ecDMRK6fT0Og5ay3BKTQyWUQ/s1200/FPGAs-Icon.png"><img border="0" data-original-height="1200" data-original-width="1200" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-6236PzG25UIe65yRWABUpS-PpDzKesNLQv_E4DWHCTera9fpkgzy0YgsN_KQ13teymkhAnkOg44G14IU1BuWDIsQsIQieneLSU_koAA3cjJSH05WapmHGczheJtaoR3ytI8fMiQdFd4anu0_AyziZdNHmqU_3jduU5ecDMRK6fT0Og5ay3BKTQyWUQ/s320/FPGAs-Icon.png" width="320" /></a></div><br /><p></p><p>For hobbyist and makers, exploring FPGA ( Field Programmable Gate Array ) is a major milestones as a maker. My experience with FPGA was when I was working for a web acceleration company that uses FPGA to accelerate web connections and DDoS prevention. </p><p>My reasons to start exploring FPGA was when I was designing a hardware that requires me to support multiple hardware and sensors and ability to detect and use those hardware seemlessly.</p><p>As a maker, we always find the lowest cost method to get the best bang for the buck and secondly, it MUST be open source and not using any proprietary software as much as possible.</p><p>While exploring and searching for my FPGA, several FPGA brands appear quite often like Xilinx, Altera and Lattice. After much more digging, I found out that Lattice have very good support for open source hardware as they were the smallest of the 3 trios.</p><p>A few FPGA development boards caught my attention and one was really interesting ( and low cost too ), it was actually a <a href="https://hackaday.com/2020/01/24/new-part-day-led-driver-is-fpga-dev-board-in-disguise/#more-395868">LED Driver</a> ( read more details in the link) called ColorLight 5A-75B with a <a href="https://www.latticesemi.com/Products/FPGAandCPLD/ECP5">Lattice ECP5</a> with 25k LUT, lots of pins, 2 x Gigabit Ethernet and external RAM. The reason I like this FPGA board is because during that time, I was also exploring and driving LED Panels with 64x64 pixels.</p><p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5DGqNDmnk5aQDcG9IRlZ0JfKz236J5vzyKdwqq05s_nEziVF2n0l-npVy16gc_3qqCgtzD0VVqvvZaGD1e7C9-i_lASCW7F8JyP3QL4G3kJ2ZppFDACV4jJPWf0ExLnhVADlSAF3d1zJWYdy9oM28P48IiNPorxMJCFJYCkvABtaFUSfYTpaWt-lr4A/s471/colorlight.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="307" data-original-width="471" height="209" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5DGqNDmnk5aQDcG9IRlZ0JfKz236J5vzyKdwqq05s_nEziVF2n0l-npVy16gc_3qqCgtzD0VVqvvZaGD1e7C9-i_lASCW7F8JyP3QL4G3kJ2ZppFDACV4jJPWf0ExLnhVADlSAF3d1zJWYdy9oM28P48IiNPorxMJCFJYCkvABtaFUSfYTpaWt-lr4A/s320/colorlight.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">ColorLight 5A-75B</td></tr></tbody></table><br /><p></p><p>After some trial and errors, I managed to program the ColorLight to drive an actual 64x64 LED Panels. First time successfully program a FPGA.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgoHBh61v3uVo-tBvldsz5S_Dqjzs3_sOMiZoEQNGjkoml7NVizV3jrPPLFDYHdhixru9RnhVeQvV5yn0C7MiCJt_KHoRD7M8XCPLAZqXKwOFIEjFctPNjIUq5Iswa-DQJQwPnhUaqWoKguAfyVcZOouX25QxCaN2U5mmPMpiVZ19_hKxmmxTCYToGVA/s4000/IMG_20210617_132908.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4000" data-original-width="3000" height="391" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgoHBh61v3uVo-tBvldsz5S_Dqjzs3_sOMiZoEQNGjkoml7NVizV3jrPPLFDYHdhixru9RnhVeQvV5yn0C7MiCJt_KHoRD7M8XCPLAZqXKwOFIEjFctPNjIUq5Iswa-DQJQwPnhUaqWoKguAfyVcZOouX25QxCaN2U5mmPMpiVZ19_hKxmmxTCYToGVA/w293-h391/IMG_20210617_132908.jpg" width="293" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">ColorLight with LED Panels</td></tr></tbody></table><p>The ColorLight was program using a <b>FT2232</b> board that comes with 2 UART ports and commonly used in Lattice official <a href="https://www.latticesemi.com/Products/DevelopmentBoardsAndKits/iCE40HX8KBreakoutBoard.aspx">development board</a>.</p><p><br /></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwiSXJw667TPqi1ldlHBEsUTxIuRyTzDbtFqAEprFXip_rkHh7oKajjBip-0Zb-qPP5jtWBP-Ov-WPeOS-aWcOJEFKTHSmIDyKeXHKL3eC8_cKPkJwvIWYp0NB6srpOdrQVcwmnRr8-hwjFgtOHXOlml4x77ZjhoUwMpNG4GifdYHSBBERoUjEZJ0jJA/s4000/IMG_20210617_112932.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4000" data-original-width="3000" height="363" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwiSXJw667TPqi1ldlHBEsUTxIuRyTzDbtFqAEprFXip_rkHh7oKajjBip-0Zb-qPP5jtWBP-Ov-WPeOS-aWcOJEFKTHSmIDyKeXHKL3eC8_cKPkJwvIWYp0NB6srpOdrQVcwmnRr8-hwjFgtOHXOlml4x77ZjhoUwMpNG4GifdYHSBBERoUjEZJ0jJA/w272-h363/IMG_20210617_112932.jpg" width="272" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">FT2232 with ColorLight</td></tr></tbody></table><br /><div>One of the <b>major drawback</b> of this FPGA board - ColorLight was that it can ONLY have output ports and only 1 input port for the build-in button at the corner. that was because it was specially made to drive 5V LED Panels, 8 of them while accepting video input from the gigabit ethernet ports from the video server.</div><div><br /></div><div>Many hardware hackers did a lot of hacking on this board like below :-</div><div><br /></div><div>Lots of details here ( your starting point at first link )</div><div><a href="https://github.com/q3k/chubby75/tree/master/5a-75b">https://github.com/q3k/chubby75/tree/master/5a-75b</a><br /></div><div><br /></div><div><a href="https://hackaday.io/project/174032-chubby-hat">Chubby Hat - Hacking ColorLight as cheap dev board</a><br /></div><div><br /></div><div><a href="https://twitter.com/claude1079/status/1231194849350647808">Tweet post to swap out a bi-directional FET</a><br /></div><div><br /></div><div><a href="https://zeromips.org/posts/2022-05-29-5a-75b/">zeromips details video on how to swap those chips</a><br /></div><div><br /></div><div><a href="https://lucasteske.dev/2020/06/hacking-a-esp32-into-fpga-board">Hacking an ESP32 into colorlight</a></div><div><br /></div><div><br /></div>
After ordering the chips listed by the tweet, I proceed to swap out the 74HC245 with the bi-directional chip. The part number is <span style="background-color: white; color: #0f1419; font-family: TwitterChirp, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-size: 17px; white-space: pre-wrap;"><b>SN74CBT3245APW</b> </span><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvJsIz4ikg2e5xpeqwAtqaAD5s-VeYfKEi3UsiO6dognERJL5rCEcVfuxAcnpjb3dwNBi63Mx9okudi8gOebKlzWdgR83O2yU9PrCJMTJL5nTLyr08Sqp2MQ4Jy8Y6ozoKauobiHuZ5y-ryVMXAsOUqRct0UMinJNyqbXVl362BcjRJVvYQXsiI0T5qQ/s4000/IMG_20230217_104812.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1800" data-original-width="4000" height="144" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvJsIz4ikg2e5xpeqwAtqaAD5s-VeYfKEi3UsiO6dognERJL5rCEcVfuxAcnpjb3dwNBi63Mx9okudi8gOebKlzWdgR83O2yU9PrCJMTJL5nTLyr08Sqp2MQ4Jy8Y6ozoKauobiHuZ5y-ryVMXAsOUqRct0UMinJNyqbXVl362BcjRJVvYQXsiI0T5qQ/s320/IMG_20230217_104812.jpg" width="320" /></a></div><div class="separator" style="clear: both;"><br /></div>
<div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQh3BVbRrVnNab_N-dZNMTQYevz4j3HpN4YnbM1C4Suc_ejS66Z-8T8MW3I_ElbdsODRnC03FgqoYCqfXuX5VFzaeTS4VcL7L4QgAANqAFJ2e8KpVDBfHYM31p_-6NdzJvZTtl3JjpS1kVSgHstdQllqGUYTsNmEsl_pkYpw7304eLnsd26V2vSQjWkw/s4000/IMG_20230214_212259.jpg" style="display: block; padding: 1em 0px; text-align: center;"><img alt="" border="0" data-original-height="1800" data-original-width="4000" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQh3BVbRrVnNab_N-dZNMTQYevz4j3HpN4YnbM1C4Suc_ejS66Z-8T8MW3I_ElbdsODRnC03FgqoYCqfXuX5VFzaeTS4VcL7L4QgAANqAFJ2e8KpVDBfHYM31p_-6NdzJvZTtl3JjpS1kVSgHstdQllqGUYTsNmEsl_pkYpw7304eLnsd26V2vSQjWkw/s320/IMG_20230214_212259.jpg" width="320" /></a></div>
With some hotair, I pasted some kapton take to protect the plastic parts, the 74HC245 come off easily. After cleaning up the pads, I proceed to solder the new FET to the pads. Lets try with some solderpaste as the pins are very small and close together.<div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYAfcmC9ct_p2o2krdad7zvNpUhHLSU8LMZ32aXnr2Ts9ZjU2nDLaZN0ybTGfJ-ajmdBCTLRGuLdYaXdPswOn2M5sOcYCHruJix7CG5oSx6zmY361AQYQFo3Q2fgb6ROayO5Qu8d_vnNLAHVvysx30j8h6qN3HmcIP66WW7sFwinuY6Ww7OPeyNaSNRQ/s4000/IMG_20230217_115021.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1800" data-original-width="4000" height="144" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYAfcmC9ct_p2o2krdad7zvNpUhHLSU8LMZ32aXnr2Ts9ZjU2nDLaZN0ybTGfJ-ajmdBCTLRGuLdYaXdPswOn2M5sOcYCHruJix7CG5oSx6zmY361AQYQFo3Q2fgb6ROayO5Qu8d_vnNLAHVvysx30j8h6qN3HmcIP66WW7sFwinuY6Ww7OPeyNaSNRQ/s320/IMG_20230217_115021.jpg" width="320" /></a></div><br /><div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhELDvzpHWBTocGBPSdyM6lDnQdZJm-PiGaOiQEu5p5YD78uXlCp-N540zMZOnkLQe3Y1HsbUZY2vyqJm--nijbvidu_sgPmusie8syEQT3GeRRKt_6MRx45VJN7-jqpCxYIaDfiEMq-ccdt1Ges0Vlt-r6_5k_oCu3IG4Q1hsx5fOo6jE9AvvY-mWc0A/s4000/IMG_20230217_115212.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1800" data-original-width="4000" height="144" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhELDvzpHWBTocGBPSdyM6lDnQdZJm-PiGaOiQEu5p5YD78uXlCp-N540zMZOnkLQe3Y1HsbUZY2vyqJm--nijbvidu_sgPmusie8syEQT3GeRRKt_6MRx45VJN7-jqpCxYIaDfiEMq-ccdt1Ges0Vlt-r6_5k_oCu3IG4Q1hsx5fOo6jE9AvvY-mWc0A/s320/IMG_20230217_115212.jpg" width="320" /></a></div><br /><div>After blowing hotair, those solderpaste becomes a big solder bridge and I use a wick to suck up all excess solder on the pins. The results was good but just too much work. For the second chip, I just directly apply solder and and wick all the excess solder on the pins.</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhWY9ZdNG7Bm4s8vBdv0B8jAZnrmQY8Gd60YPAmZeYdiUiAjqbQfbgtTXgiKk_E15xSTemw7-T6rIUD3tR5gfQ78EYjFhiJi4mNGcAQ6bYXjW09JcXRAgo3qaDZkWR-4gBLi95As97kBuF0AknUw99m-cc0RKw1KB42EZICizFaz4SFgICFdsdqML50Q/s4000/IMG_20230217_151233%20(1).jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1800" data-original-width="4000" height="144" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhWY9ZdNG7Bm4s8vBdv0B8jAZnrmQY8Gd60YPAmZeYdiUiAjqbQfbgtTXgiKk_E15xSTemw7-T6rIUD3tR5gfQ78EYjFhiJi4mNGcAQ6bYXjW09JcXRAgo3qaDZkWR-4gBLi95As97kBuF0AknUw99m-cc0RKw1KB42EZICizFaz4SFgICFdsdqML50Q/s320/IMG_20230217_151233%20(1).jpg" width="320" /></a></div><br /><div>Here is the results after soldering two chips to the board. </div><div><br /></div><div><b>*** The input voltage must be lowered using a diode to 4.3V from 5V</b></div><div><br /></div><div>After a successful test that the pins can support both input and output, I switch to use <a href="https://github.com/FPGAwars/icestudio">icestudio from fpgawars</a> to program the FPGA using a graphical flow based interface with apio.</div><div><br /></div><div><div><br /></div></div></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwzus6ecKw1FKrk4LmgbjrLks1LgyUs-t7mTFs-HLNfYptdAaLs3_o_45XoF7C5JBHuY6t7nlN6GGo4Xd__hk8RdRRoNA-jTWuIt2nQUTABI8b6GHB8SSuqrQFSW8gALGzBsWISZRwjv3Xik6W2NqW47Wvz1qGZs7dGN6G3zBN8EBCms3asi5KCrdL_Q/s779/image.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="779" data-original-width="771" height="383" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwzus6ecKw1FKrk4LmgbjrLks1LgyUs-t7mTFs-HLNfYptdAaLs3_o_45XoF7C5JBHuY6t7nlN6GGo4Xd__hk8RdRRoNA-jTWuIt2nQUTABI8b6GHB8SSuqrQFSW8gALGzBsWISZRwjv3Xik6W2NqW47Wvz1qGZs7dGN6G3zBN8EBCms3asi5KCrdL_Q/w380-h383/image.png" width="380" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">icestudio</td></tr></tbody></table><br /><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTUK1Xp6u5PKuFO5cf8jdNJ4YtEhPUrYQut7wR8MD4Vjke7EDsckhERdwd_vHUD4-zinPfIRnKm6nb_XZySjPszu9rTYz2UqgVVe_759ejI8zEOgYpdGL6DHhTSpk6BS72ndYvQ8Sx74UjocNlsaRv4RMV63Ip4hW4nKHiBK7adLMZ5YlWZqEBU6MOfA/s4000/IMG_20230218_102553.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1800" data-original-width="4000" height="233" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTUK1Xp6u5PKuFO5cf8jdNJ4YtEhPUrYQut7wR8MD4Vjke7EDsckhERdwd_vHUD4-zinPfIRnKm6nb_XZySjPszu9rTYz2UqgVVe_759ejI8zEOgYpdGL6DHhTSpk6BS72ndYvQ8Sx74UjocNlsaRv4RMV63Ip4hW4nKHiBK7adLMZ5YlWZqEBU6MOfA/w519-h233/IMG_20230218_102553.jpg" width="519" /></a></div><br /><div>Above is the final picture with <b>8-DIP switches pmod</b> as input and <b>8-LED tristate pmod</b> as output.</div><div><br /></div><div><b><u>summary Links</u></b></div><div><ul style="text-align: left;"><li><span style="color: #0000ee;"><u>https://hackaday.com/2020/01/24/new-part-day-led-driver-is-fpga-dev-board-in-disguise/#more-395868</u></span></li><li><span style="color: #0000ee;"><u>https://github.com/q3k/chubby75/tree/master/5a-75b</u></span></li><li><span style="color: #0000ee;"><u>https://github.com/FPGAwars/icestudio</u></span></li></ul><div><br /></div></div><div><br /></div><div><br /></div><div><br /></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-35173265112329266932021-06-18T23:57:00.004+08:002021-06-19T00:04:32.669+08:00Per-key RGB for SVT RGB Dumbpad<p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1lFrC8lxER_cWgGOKBU0-GhOHqS0nQcn11T9SpYT2xOym_vLWykA5RRlNS_k4_bzyemZvG1ziRg_yetZSVLMM0oevOMJeetKxH6EMGIxuMGwuLtgTWHKjqVR87GeWpMinVW8jLlyHf-v2/s2048/IMG_20210615_003216.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1536" data-original-width="2048" height="191" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1lFrC8lxER_cWgGOKBU0-GhOHqS0nQcn11T9SpYT2xOym_vLWykA5RRlNS_k4_bzyemZvG1ziRg_yetZSVLMM0oevOMJeetKxH6EMGIxuMGwuLtgTWHKjqVR87GeWpMinVW8jLlyHf-v2/w255-h191/IMG_20210615_003216.jpg" width="255" /></a></div><br /><p><br /></p><p>For the next SVT Dumbpad iteration, I was exploring to add per-key RGB to the 4x4 keys. Here is how it all started.</p><p>While doing some research on what LED are commonly used for per-key keyboards, I found this page on Hackaday <a href="https://hackaday.com/2020/01/28/new-part-day-sk6812-mini-e-a-hand-solderable-neopixel-compatible-led/">new-part-day-sk6812-mini-e</a> introducing this new part called SK6812-mini E. This part is unique as it is a surface mounted parts but half of it goes into the PCB cut-outs.</p><p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv0PHxlFmazWGAoaFByl4U01p6gP_arHLdBzIpDLBTOqbzFBXPZDCFou2wRkdybH7EgX58z5Olws3kKdC18FertL_OcTd2u1osi7F61JJAjlQEfNcxzQ-SdCPYicV5HpA8WIQ0ZgTb0_Mv/" style="margin-left: auto; margin-right: auto;"><img alt="SK6812-mini e" data-original-height="383" data-original-width="1064" height="144" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv0PHxlFmazWGAoaFByl4U01p6gP_arHLdBzIpDLBTOqbzFBXPZDCFou2wRkdybH7EgX58z5Olws3kKdC18FertL_OcTd2u1osi7F61JJAjlQEfNcxzQ-SdCPYicV5HpA8WIQ0ZgTb0_Mv/w400-h144/image.png" title="SK6812-mini e" width="400" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SK6812-mini e dimensions</td></tr></tbody></table><br />The timing was perfect as this part (SK<b>6812-mini e</b>) was available from Lazada at a much cheaper price than previously publish at almost 67% lower. I order them and quickly cut the square holes and soldered them once they arrived.<p></p><p><br /></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOKRdUVfRWeOfuh7sCKtzNMPIQ2vFrq3rnMJciiYmxtj6tHUgvHYPC_O2PfSqCCOE9s6kzHs82oE0WUzjVeUdcaKgcu26lnukmmgQNHGcuQ-SeRXshpLhjBQOMJQZSrM4c-l4MFunGz-pQ/s2048/IMG_20210423_011511.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1536" data-original-width="2048" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOKRdUVfRWeOfuh7sCKtzNMPIQ2vFrq3rnMJciiYmxtj6tHUgvHYPC_O2PfSqCCOE9s6kzHs82oE0WUzjVeUdcaKgcu26lnukmmgQNHGcuQ-SeRXshpLhjBQOMJQZSrM4c-l4MFunGz-pQ/s320/IMG_20210423_011511.jpg" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SK6812-mini e front side</td></tr></tbody></table><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoQY53S_uy8E3kLn4c-QRZ79TkbT90pvmkF9-bAtBgIc9G42-gMO9VC5J9YZeG4ELlA3dHhTHA0STXkxAVIUKLnUb-Ia_wGhGuvqK38FR5ealeLw3PS4k5zj0p2fZWwJhFBQtbDVwi6MDa/s2048/IMG_20210423_011501.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1536" data-original-width="2048" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoQY53S_uy8E3kLn4c-QRZ79TkbT90pvmkF9-bAtBgIc9G42-gMO9VC5J9YZeG4ELlA3dHhTHA0STXkxAVIUKLnUb-Ia_wGhGuvqK38FR5ealeLw3PS4k5zj0p2fZWwJhFBQtbDVwi6MDa/s320/IMG_20210423_011501.jpg" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SK6812-mini e back side</td></tr></tbody></table><p><br /></p><p>Thanks for a few other open source keyboard designs, I figured out how to make the cut-out for the footprint for this special parts. As the part is soldered from the back of the PCB but the LED is front facing, I m really really afraid to screw up the pinout. I had to label them clearly ( DI and DO ).</p><p><br /></p><p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGVxCjxtnu-94AOB7NENaxf_qkINM8rcANPoZDLTceqs5TvYgD2y050-mhu0AdAUPbvKgYvI2XhO2GQNaUeLbx66hstEpE6CBMqRQMRIFn67sVd6fJAMoPu_peIlBlV7bSWx_Vpl6mxcNg/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="759" data-original-width="1208" height="201" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGVxCjxtnu-94AOB7NENaxf_qkINM8rcANPoZDLTceqs5TvYgD2y050-mhu0AdAUPbvKgYvI2XhO2GQNaUeLbx66hstEpE6CBMqRQMRIFn67sVd6fJAMoPu_peIlBlV7bSWx_Vpl6mxcNg/" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SK6812-mini footprint</td></tr></tbody></table><br />After adding the per-key LED with cut-out holes, I do not I have not enough space for the 4 LED WS2812B LED strips and had to re-position all the diodes and use actual WS2812B surface mount parts instead. I only have areas on the top and bottom part of the PCB for the WS2812B LED for the underglow LED.<p></p><p><br /></p><p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYUOwT6kFc1EiRUiAxeX0gxEJMxXJKTPKLJoMlefZywoYCvdm_GPCn7HN82QhyRYkP4Zr8t7VpSt9W96OXP-AuXQJPDvcpQYYbwLSIw_a-yCl0QesXMGVSovFADFoyJgXjaSgu6_dGhhS-/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="729" data-original-width="753" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYUOwT6kFc1EiRUiAxeX0gxEJMxXJKTPKLJoMlefZywoYCvdm_GPCn7HN82QhyRYkP4Zr8t7VpSt9W96OXP-AuXQJPDvcpQYYbwLSIw_a-yCl0QesXMGVSovFADFoyJgXjaSgu6_dGhhS-/" width="248" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB2 3D Render</td></tr></tbody></table><br />As I have NOT added so many LEDs ( 16 + 8 ) to the keyboard before, I was a little nervous about the 5V power consumptions and add a three way solder bridge to be able to choose between underglow LED, per-key LED or both of them together. To use back the same SVT Dumbpad firmware, I wire the four LEDs similar as the underglow so I have six parallel LEDs, four facing the top ( per-key LED ) and two facing the bottom (underglow).<p></p><p>The rest of the keyboard remain unchanged but I enlarged the solder pads of the diodes for easy hand soldering. Once the design was done, I usually waited a few more days just in case I think of last minute fixes or new features to add.</p><p><br /></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbbcaKmPoBRXx32hAiMHh-tbFCQGq8Vo78rq_z9cpn6ai1rZiZL_fnGpw4B3dcBHadEREXNBUPtD-wMKruufKGYp9gX3cExWYAqSZ61U26Uj7mQBL-K60h9B1gTRyfeGD-8zNQPNWBiPpq/s2048/IMG_20210618_233554.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="2048" data-original-width="1997" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbbcaKmPoBRXx32hAiMHh-tbFCQGq8Vo78rq_z9cpn6ai1rZiZL_fnGpw4B3dcBHadEREXNBUPtD-wMKruufKGYp9gX3cExWYAqSZ61U26Uj7mQBL-K60h9B1gTRyfeGD-8zNQPNWBiPpq/s320/IMG_20210618_233554.jpg" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB2 Dumbpad PCB</td></tr></tbody></table><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><p>Once the PCB arrived, I quickly soldered those per-key LED first without even soldering the rest of the keyboard components. I just use mini grabbers and ran Arduino FastLED to test those LEDs to ensure all the 16 + 8 LED is working fine.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLcKf_iWux_F7WwnrS7RbufYtC41dWGjtBWNYmRxSqi44dU0OnoyQJl_DSEuV6NhCcrCKHjasg-2QcYOH0snwSbbenewon4ZFKftQCMRNupuS6BVesjeJV_ALTJt5BeN9jK4A_62-JeC92/s2048/IMG_20210606_121903.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1536" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLcKf_iWux_F7WwnrS7RbufYtC41dWGjtBWNYmRxSqi44dU0OnoyQJl_DSEuV6NhCcrCKHjasg-2QcYOH0snwSbbenewon4ZFKftQCMRNupuS6BVesjeJV_ALTJt5BeN9jK4A_62-JeC92/s320/IMG_20210606_121903.jpg" /></a></div><br /><p>I spend so much time focusing on the SK6812 footprint I neglect the footprint for WS2812B that I have used in my previous product before. It turns out the silkscreen was flipped 180 degree but luckily the wiring was correct, so I de-soldered all the 8 WS2812B and re-solder them 180 degree flipped.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEia8sNhtmGmFxryFeIImOGB7LL2HFBM03nyPiOS_ngYS2biKUgq_6oVsJZ_3IA4gWUBd2-ARRoSAOjOFdHZwJDbpFUE0gdqw57TsY-frQ5wc0gUIqluztkjvSX3kd6YGgwTU67nU3thqQuI/s2048/IMG_20210605_174924.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="2048" data-original-width="1536" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEia8sNhtmGmFxryFeIImOGB7LL2HFBM03nyPiOS_ngYS2biKUgq_6oVsJZ_3IA4gWUBd2-ARRoSAOjOFdHZwJDbpFUE0gdqw57TsY-frQ5wc0gUIqluztkjvSX3kd6YGgwTU67nU3thqQuI/s320/IMG_20210605_174924.jpg" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">de-soldered WS2812B</td></tr></tbody></table><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip769Ijt7zGXXZGbo4GgIZSKqremVra5qxJZBfpvcUUI75RsMFXQVN073hj3d7UJaWsV0r1J31vDS8tEtACsxGl3g3bAOJBsA9gBkXOF2_xOzWxiN0CW8oxX4uVuw616piDuUkKVFdjXdP/s2048/IMG_20210607_115839.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1983" data-original-width="2048" height="291" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip769Ijt7zGXXZGbo4GgIZSKqremVra5qxJZBfpvcUUI75RsMFXQVN073hj3d7UJaWsV0r1J31vDS8tEtACsxGl3g3bAOJBsA9gBkXOF2_xOzWxiN0CW8oxX4uVuw616piDuUkKVFdjXdP/w300-h291/IMG_20210607_115839.jpg" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB2 Dumbpad</td></tr></tbody></table><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiiIbLLZzCGWyjPqhXJRVSU5xrhIp9tnDwSREdUgkQV9Xnpbep7bVB7gpW1Qtl1ODyRLwfVrIQpky8CUEaMrL7L0gjozRA0z2J8k04r8MVGFXsivnCscboYQCfLih9aZalmojMWTKUFYM76/s2048/IMG_20210605_180435.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="2048" data-original-width="1536" height="361" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiiIbLLZzCGWyjPqhXJRVSU5xrhIp9tnDwSREdUgkQV9Xnpbep7bVB7gpW1Qtl1ODyRLwfVrIQpky8CUEaMrL7L0gjozRA0z2J8k04r8MVGFXsivnCscboYQCfLih9aZalmojMWTKUFYM76/w271-h361/IMG_20210605_180435.jpg" width="271" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Testing per-key RGB LED</td></tr></tbody></table><div><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBYkEKAnndr6cnSqEowR9ZW_7GLal4bRxt9qirKGuoPzagprujS5MX6ZKBWDdtyHgv3QSanu9rP_SCd4ZOzD_q-cspmz2RYDFSfWFATky-2ecU2V9R8y2X0zIgf3_1YU7_ybPFqVppIVOy/s2048/IMG_20210614_012538.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="2048" data-original-width="1536" height="349" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBYkEKAnndr6cnSqEowR9ZW_7GLal4bRxt9qirKGuoPzagprujS5MX6ZKBWDdtyHgv3QSanu9rP_SCd4ZOzD_q-cspmz2RYDFSfWFATky-2ecU2V9R8y2X0zIgf3_1YU7_ybPFqVppIVOy/w261-h349/IMG_20210614_012538.jpg" width="261" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Picture without casing</td></tr></tbody></table><br /><div><br /></div>As I also ordered some frosted acrylic, it looks really good on the new per-key RGB LED with diffused RGB lights coming out from the side and bottom.<div><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjziv9gaT9DCewJIr7-_cNl7eXq4fFUKBIZBcE-2ao1lRpwqR9YOaUYchsVx62SC0KXfo5NWazXSMDLsEs8O7WkKDNnpe4goUIBxbH_htlxftiFJxaDNWswsOoy1LLYBmZ726mCmhBaeM98/s2048/IMG_20210615_003142.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="2048" data-original-width="1536" height="357" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjziv9gaT9DCewJIr7-_cNl7eXq4fFUKBIZBcE-2ao1lRpwqR9YOaUYchsVx62SC0KXfo5NWazXSMDLsEs8O7WkKDNnpe4goUIBxbH_htlxftiFJxaDNWswsOoy1LLYBmZ726mCmhBaeM98/w268-h357/IMG_20210615_003142.jpg" width="268" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB2 with frosted casing</td></tr></tbody></table><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8l3jD3GbTWXAoLBGwgmzk67FEY-vHUN9v9b9mmcSNJkFh-pgWJM-hOdVrcBEOlifFRl90hEMO9pufComyhuB4a1tGQE2DgqYOdHsTMkXdUOiyfhHYZ8ImmPUf4PHn6ifc9UIXlsSf9zFW/s2048/IMG_20210617_114547.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1536" height="361" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8l3jD3GbTWXAoLBGwgmzk67FEY-vHUN9v9b9mmcSNJkFh-pgWJM-hOdVrcBEOlifFRl90hEMO9pufComyhuB4a1tGQE2DgqYOdHsTMkXdUOiyfhHYZ8ImmPUf4PHn6ifc9UIXlsSf9zFW/w271-h361/IMG_20210617_114547.jpg" width="271" /></a></div><br /><p>Below are some video on the SVT RGB2 Dumbpad keyboard.</p><p></p><ul style="text-align: left;"><li><a href="https://www.tiktok.com/@stanleyseow/video/6973638416663710978?is_copy_url=0&is_from_webapp=v1&sender_device=pc&sender_web_id=6975161790713005569">https://www.tiktok.com/@stanleyseow/video/6973638416663710978?is_copy_url=0&is_from_webapp=v1&sender_device=pc&sender_web_id=6975161790713005569</a></li><li><a href="https://www.tiktok.com/@stanleyseow/video/6974607527556205825?is_copy_url=0&is_from_webapp=v1&sender_device=pc&sender_web_id=6975161790713005569">https://www.tiktok.com/@stanleyseow/video/6974607527556205825?is_copy_url=0&is_from_webapp=v1&sender_device=pc&sender_web_id=6975161790713005569</a></li></ul><p></p><p><br /></p><p><br /></p><p><br /></p></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-65460828401148748712021-02-01T13:58:00.006+08:002021-06-19T15:23:47.050+08:00RGB SVT Hotswap and Improvements<div class="separator"><br /></div><div class="separator"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Me3I4xKK4lBVVeHiPg_XI_wshKOzpT-RMgbO-SUvUIs1nRSxTFLlL92GJFCwkUUXE-p0EcpUgeJsTW_A9e6P_wUXqxRdqKmX7uoEXt5h5vRS4hRolFriWCY0WFAby_9bKnTvycWY93A7/s3339/IMG_20201212_231119.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="3000" data-original-width="3339" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1Me3I4xKK4lBVVeHiPg_XI_wshKOzpT-RMgbO-SUvUIs1nRSxTFLlL92GJFCwkUUXE-p0EcpUgeJsTW_A9e6P_wUXqxRdqKmX7uoEXt5h5vRS4hRolFriWCY0WFAby_9bKnTvycWY93A7/w400-h360/IMG_20201212_231119.jpg" width="400" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">RGB SVT hotswap</td></tr></tbody></table><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><div><br /></div><div>This is the part 3, further improvements to the keyboard. As I was designing the keyboard, the biggest hurdle for consumer is soldering as not everyone have a soldering iron and tools at home. </div><div><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDqTKe4AAYAMdfuyXtf49ETsEqqRKP3QGkfuz6NTAo09PkM_yY-dTDFkBaNv2J6qOabObOGxZoEETzXiOq5jnU71FXCXo_TkGYwQNY7LTAuF8xdrwa4wwFpadOjzC7WqfxZp5JgWBPTH8M/s728/kailh+hotswap.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="430" data-original-width="728" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDqTKe4AAYAMdfuyXtf49ETsEqqRKP3QGkfuz6NTAo09PkM_yY-dTDFkBaNv2J6qOabObOGxZoEETzXiOq5jnU71FXCXo_TkGYwQNY7LTAuF8xdrwa4wwFpadOjzC7WqfxZp5JgWBPTH8M/s320/kailh+hotswap.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Kailh hotswaps</td></tr></tbody></table><br /><div><br /></div><div>With this reason, I decided to move away from a soldering solution to a hotswap solution using <a href="https://www.kailhswitch.com/info/mechanical-keyboard-switches-kailh-pcb-socket-30847668.html">Kailh hotswap PCB socket</a>. As I have already design the top PCB plates for holding the switches, I just need to change the footprint to a hotswap only. I also moved the diode to the bottom layer for easier soldering or repairs.</div><div><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8iGnQlGEJ9hlhuELio1riO2qiGxDjn6-q8Ebe8d_QaNptGjtQBAV62Xp1dU1H4znwLdEMqZ30alzquN4WJseNBgtMAZ-rRlXKw1vfHkrwSu51PqDZdQbEmQRmte90EO3VWjBhKa__JC1w/s1031/RGB+hotswap.png" style="margin-left: auto; margin-right: auto;"><img alt="RGB Kailh hotswap" border="0" data-original-height="767" data-original-width="1031" height="238" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8iGnQlGEJ9hlhuELio1riO2qiGxDjn6-q8Ebe8d_QaNptGjtQBAV62Xp1dU1H4znwLdEMqZ30alzquN4WJseNBgtMAZ-rRlXKw1vfHkrwSu51PqDZdQbEmQRmte90EO3VWjBhKa__JC1w/w320-h238/RGB+hotswap.png" title="RGB Kailh hotswap" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Kailh PCB Socket</td></tr></tbody></table><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_wlIkDQ3mFVXghJKK70US77U99-yeYA8rtxWd48VZ-NMa0jzkA6Ts0D7IIbXObSj0T8rrz3JXrzvy-dQq5iS4upAaPCYtx0-Qx-nTz8-5Ey5KmhX9tQ1QI0IQjM7eCHQa-JKM82knV9CQ/s3044/IMG_20201123_130346.jpg" style="margin-left: auto; margin-right: auto; text-align: center;"><img border="0" data-original-height="3044" data-original-width="3000" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_wlIkDQ3mFVXghJKK70US77U99-yeYA8rtxWd48VZ-NMa0jzkA6Ts0D7IIbXObSj0T8rrz3JXrzvy-dQq5iS4upAaPCYtx0-Qx-nTz8-5Ey5KmhX9tQ1QI0IQjM7eCHQa-JKM82knV9CQ/s320/IMG_20201123_130346.jpg" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">PCB with Kailh hotswap soldered</td></tr></tbody></table><br /><br /><br /><div>For this version, I will most likely sell them pre-soldered and qmk firmware flashed instead of in a kit form, so the customer can get add switches only without any soldering needed.</div><div><br /></div><div><b><u>Extra RGB LEDs</u></b></div><div><b><u><br /></u></b></div><div>Another "extra" feature, if you look closely at the end of the <a href="http://www.world-semi.com/Certifications/WS2812B.html">WS2812B LED</a> RGB strip, you can actually add more RGB LED and extend it beyond the keyboard.</div><div><br /></div><div><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibEL2YjWw9iZfOet0AvZQp7ELvpN9p6rfT4IkGm6TZyYAQXwrFLuTdQ-T_iFvpMjL3_4kTlITrg11fXcw74hdtzuPI7zrGq8Vh-JkvsLgsTMXjR5oudUwJZUu7mSN6uHMu24fYsQ-k0kmp/s1196/RGB+extend.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="200" data-original-width="1196" height="68" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibEL2YjWw9iZfOet0AvZQp7ELvpN9p6rfT4IkGm6TZyYAQXwrFLuTdQ-T_iFvpMjL3_4kTlITrg11fXcw74hdtzuPI7zrGq8Vh-JkvsLgsTMXjR5oudUwJZUu7mSN6uHMu24fYsQ-k0kmp/w400-h68/RGB+extend.png" width="400" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Extend WS2812 RGB</td></tr></tbody></table><div><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvJJ8o_saudrb_UjUeNTzSEt032XBW1A0LlQrMXWUEgKYWDRduUlu43kcnXLtZpXE9G9GV21AwNw64GOHlqKTkp-dF16t09Baf6RykwuD8Fjbh2s7iSuGTnRo093rHMV2NiS9ykBQe1tlX/s2048/IMG_20210107_003549.jpg" style="font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: large; margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="1690" data-original-width="2048" height="330" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvJJ8o_saudrb_UjUeNTzSEt032XBW1A0LlQrMXWUEgKYWDRduUlu43kcnXLtZpXE9G9GV21AwNw64GOHlqKTkp-dF16t09Baf6RykwuD8Fjbh2s7iSuGTnRo093rHMV2NiS9ykBQe1tlX/w400-h330/IMG_20210107_003549.jpg" width="400" /></a></div><div><br /><br /><div>Just solder a wire to the middle DATA pin and extend the RGB strip outside of the keyboard. Just <b>make sure</b> you supply enough 5V power if the WS2812 RGB strip is very long.</div><div><br /></div><div>For the firmware side, the following need to be change to reflect the number of RGB LEDs installed.</div><div><br /></div><div><b style="background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;"><i><span style="font-size: medium;">#define RGBLED_NUM 4</span></i></b></div><div><b style="background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;"><i><br /></i></b></div><div><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222;"><span style="background-color: white;">Change this number to the additional number of LED you added to the end of the RGB strip.</span></span></div><div><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222; font-size: medium;"><span style="background-color: white;"><br /></span></span></div><div><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222; font-size: medium;"><span style="background-color: white;"><br /></span></span></div><div><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222; font-size: medium;"><span style="background-color: white;">Final keyboard picture with Kailh PCB hotswap sockets with top support plates on acrylic enclosure.</span></span></div><div><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222; font-size: medium;"><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit1ATOmep3ZSWrWNzSbn9c7YhnG2x1noKOKj5BccLc9Vdqv1YlE17E5bwzC9CJRRmS8oFdzq_CPESJ0hYRhm5dt8GhdgY85jtKPjw6XiBBdNMNW5djTmFFECfZHNhnPm3GcNKwU18K2bTI/s2048/IMG_20210107_003623.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1697" data-original-width="2048" height="331" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit1ATOmep3ZSWrWNzSbn9c7YhnG2x1noKOKj5BccLc9Vdqv1YlE17E5bwzC9CJRRmS8oFdzq_CPESJ0hYRhm5dt8GhdgY85jtKPjw6XiBBdNMNW5djTmFFECfZHNhnPm3GcNKwU18K2bTI/w400-h331/IMG_20210107_003623.jpg" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM3QPR10yfvGlZJJYLWphZRahgmmkN7EnWJX0F1cXxRV_zcy3Q6aQcOVB5Pmk4aCaqo-_0oEAlC5I3zt-Azj4ypIgkaarqTBk4-P_ohqLlQM8Uf2Odi_DADedqJwAOob6O4PBA_6g2095V/s2048/IMG_20210107_003956.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1738" data-original-width="2048" height="340" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM3QPR10yfvGlZJJYLWphZRahgmmkN7EnWJX0F1cXxRV_zcy3Q6aQcOVB5Pmk4aCaqo-_0oEAlC5I3zt-Azj4ypIgkaarqTBk4-P_ohqLlQM8Uf2Odi_DADedqJwAOob6O4PBA_6g2095V/w400-h340/IMG_20210107_003956.jpg" width="400" /></a></div><br /><span style="background-color: white;"><br /></span></span></div><div><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222;"><span style="background-color: white; font-size: 13.2px;"><br /></span></span></div><h3 style="text-align: left;"><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222;"><span style="background-color: white; font-size: 13.2px;">Summary Links</span></span></h3><div><ul style="text-align: left;"><li><a href="https://www.kailhswitch.com/info/mechanical-keyboard-switches-kailh-pcb-socket-30847668.html">Kailh hotswap PCB socket</a></li><li><a href="http://www.world-semi.com/Certifications/WS2812B.html">WS2812B LED</a></li><li>Part 1 <a href="https://arduino-for-beginners.blogspot.com/2020/11/building-4x4-mechanical-keyboard-with.html">https://arduino-for-beginners.blogspot.com/2020/11/building-4x4-mechanical-keyboard-with.html </a></li><li>Part 2 <a href="https://arduino-for-beginners.blogspot.com/2020/12/qmk-flashing-and-coding-svt-rgb-4x4.html">https://arduino-for-beginners.blogspot.com/2020/12/qmk-flashing-and-coding-svt-rgb-4x4.html</a></li><li>Part 4 <a href="https://arduino-for-beginners.blogspot.com/2021/06/per-key-rgb-for-svt-rgb-dumbpad.html">https://arduino-for-beginners.blogspot.com/2021/06/per-key-rgb-for-svt-rgb-dumbpad.html</a></li></ul></div><div><br /></div><div><br /></div><div><span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="color: #222222;"><span style="background-color: white; font-size: 13.2px;"><br /></span></span></div><div><b style="background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13.2px;"><i><br /></i></b></div></div><div class="separator" style="clear: both; text-align: center;"><br /></div><br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-21922682915495850492020-12-14T11:42:00.013+08:002021-06-19T15:23:19.476+08:00QMK flashing and coding the SVT RGB 4x4 dumbpad<div style="text-align: left;">After more a week, the two black PCB sent for fabrications was finally back. Time to do some SMD soldering and figuring out on how to program the keyboard to work.</div><p>The RGB SVT source codes at <b>Summary Links</b> below.</p><p><br /></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><img height="236" src="https://lh6.googleusercontent.com/t0hM8dlILVE_pElugLoW0Fh-qWc85R-pJ92p35TKoIVB2letiN2aNGDROchEjZryDrmGE9vAo7_K8Yi3T2hJs63yURrEvBliNy9hg9KwodVNy2Czmf30JQmYcbKuYoZDm82OFhYk=w243-h236" style="margin-left: auto; margin-right: auto; margin-top: 0px;" width="243" /></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB dumbpad (front)</td></tr></tbody></table><br /><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><img height="238" src="https://lh5.googleusercontent.com/l-EvCsjpQ0bRvEhkveRzwuAP28FZdlJKZYog_qKLX5ChCLTcGVnFvdamkUbTfgqw_-OTifgAODnYyqJa3Gej8dBkBtOcv_w49DDPLC6x9wkmFm4yX5fBuknpcgoV8vTPhiAi7bbx" style="margin-left: auto; margin-right: auto; margin-top: 0px;" width="238" /></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB dumbpad (back)</td></tr></tbody></table><p><span id="docs-internal-guid-1974b7ba-7fff-7146-7628-eb31fd1c4ccf"><span style="font-family: Arial; font-size: 11pt; font-variant-east-asian: normal; font-variant-numeric: normal; vertical-align: baseline; white-space: pre-wrap;"></span></span></p><p><span id="docs-internal-guid-c03015a0-7fff-a312-2801-19960ec461a6"><span style="font-family: Arial; font-size: 11pt; font-variant-east-asian: normal; font-variant-numeric: normal; font-weight: 700; text-decoration-line: underline; text-decoration-skip-ink: none; vertical-align: baseline; white-space: pre-wrap;"></span></span></p><h3 style="text-align: left;">QMK firmware</h3><div>The Quantum Mechanical Keyboard ( QMK ) is an open source community centered around developing computer input devices. ( Text copied directly from QMK site )</div><p>It support a few commonly used micro-controller like Atmel atmega32u4, Freescale Teensy and STM32 families of micro-controllers. For my case, the Pro Micro uses the Atmel atmega32u4, a popular choice for Arduino that can emulate a keyboard / HID devices.</p><p>As I am just a fork of the dumbpad keyboard, I will also just need to modify the same keyboard by modifying the keymaps and config files only. The QMK does NOT use the Arduino IDE.</p><p>As my primary computer runs on Win 10 , I will choose the Windows development tools and downloaded the following software. </p><p></p><ul style="text-align: left;"><li>QMK Toolbox</li><li>MSYS2</li><li>VSCode ( I already have this ) </li></ul><div><br /></div><div>The MSYS2 installation was not as straight-forward as I expected but after a few trial and errors, installing and re-installing Python, I found the missing piece. Open a <b>MinGW 64-bit Terminal, I repeat, a MinGW 64-bit Terminal.</b></div><div><br /></div><div>Once everything was setup successfully, it is time to do some code editing.</div><div><br /></div><div>git clone the qmk firmware from github.</div><div>Go to the keyboard/dumbpad folder and open the config.h file, edit it with your favorite text editor.</div><div><br /></div><h4 style="text-align: left;">Figuring out the LED pins</h4><div><div class="separator" style="clear: both; text-align: center;"><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/s652/pro+micro+pinout.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="652" data-original-width="518" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/w155-h196/pro+micro+pinout.png" width="155" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/s652/pro+micro+pinout.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/s652/pro+micro+pinout.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/s652/pro+micro+pinout.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/s652/pro+micro+pinout.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/s652/pro+micro+pinout.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgajJ92WAAxxTVgUxh3OVZ1r0f1L6Z19zSkgjEsBe0zJX2oCQnYruagClzkOVeCGNqoLCC9WAI7kKotEM1yu0ETH4j8XBbC-3Dkf0VK36qaKPgn_D42W1aDRZD4QV4n2BQ072TnCasUNGgT/s652/pro+micro+pinout.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a></div><br /><div style="text-align: left;">As the pins are following the Atmel port pins instead of the Arduino digital pins, I have to map this according to the LED I connected to the Pro Micro.</div></div><div><br /></div>I was using port B6 as LED0 and port B1 as LED1<br />LED2 at port B3 is shared between LED2 or RGB LED pin.</div><p>I also noticed there are two extra on-board LED at port B0 and port D5, let's configure them as well. As the <b>Pro Micro</b> is facing downwards, the two on-board LED, will only shine downwards and not very useful in every use.</p><p><br /></p><p>Below are the config.h for the LEDs</p><p>/* LED layer indicators */</p><p>// Using external LED for layers indicator</p><p><b><i> #define LAYER_INDICATOR_LED_0 B6 // Red</i></b></p><p><b><i> #define LAYER_INDICATOR_LED_1 B1 // Blue or Green</i></b></p><p><span> </span>// On-board LED for debugging</p><p><b><i><span> </span>#define LAYER_INDICATOR_LED_2 B0</i></b></p><p><b><i><span> </span>#define LAYER_INDICATOR_LED_3 D5</i></b></p><p><br /></p><p>The next pin are the most exciting one, the RGB pins as below, you need to state the pin number and the number of LEDs on the LED strip. As I run them in mirror mode ( Both LED strip will display the same patterns, I just indicate 4 as the number of LEDs )</p><p><b><i><span> </span>#define RGB_DI_PIN B3</i></b></p><p><b><i><span> </span>#ifdef RGB_DI_PIN</i></b></p><p><b><i><span> </span>#define RGBLED_NUM 4</i></b></p><p>The rest of the RGB animations / patterns can be customized according to your own needs. </p><p><br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiiXkET-ld0xAAcq-A8atf7O6cpOevi_EsLURLXVF7a8ZXAxtXCnJjwtWimDT430Ap8f8ATXy531BQoq_CgmoSA5KRXoQAnCO27v-l0V5gaeZDgMYOIYZpZBFl2b-35xn6KurXHHroK7N/s1030/dumbpad.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="676" data-original-width="1030" height="263" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiiXkET-ld0xAAcq-A8atf7O6cpOevi_EsLURLXVF7a8ZXAxtXCnJjwtWimDT430Ap8f8ATXy531BQoq_CgmoSA5KRXoQAnCO27v-l0V5gaeZDgMYOIYZpZBFl2b-35xn6KurXHHroK7N/w400-h263/dumbpad.png" width="400" /></a></div><h3 style="clear: both; text-align: left;">Rotary Encoder</h3><p></p><div>The next pins to configure is the rotary encoder, the dumbpad keyboard support TWO rotary encoder, I got both encoder working but the final version, I will only use one encoder.</div><div><br /></div><div>I m using ENCODER0 connected to port D4 and B2.</div><div>ENCODER1 (unsued) is connected to port port D0 and D1</div><div><br /></div><div><div>/* Rotary encoder */</div><div>// D1, D0 is right encoder</div><div>// D4, B2 is left encoder</div><div><b><i>#define ENCODERS_PAD_A { D4 } </i></b></div><div><b><i>#define ENCODERS_PAD_B { B2 }</i></b></div></div><p>Once all the config.h pin definition is done, I make a copy of the default keymap folder for my keyboard, I called it svt_numpad</p><h3 style="text-align: left;"><br /></h3><h3 style="text-align: left;">Key Mappings</h3><p>Edit the keymap.c file, the default already have all the keys mapped.</p><p>From here, you can change the keys according to the documentation from QMK here.</p><p><a href="https://beta.docs.qmk.fm/using-qmk/simple-keycodes/keycodes_basic">https://beta.docs.qmk.fm/using-qmk/simple-keycodes/keycodes_basic</a></p><p>RGB stuff here </p><p><a href="https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgblight">https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgblight</a></p><div style="background-color: #1e1e1e; color: #d4d4d4; font-family: Consolas, "Courier New", monospace; font-size: 14px; line-height: 19px; white-space: pre;"><div> <span style="color: #6a9955;">/*</span></div><div><span style="color: #6a9955;"> BASE LAYER</span></div><div><span style="color: #6a9955;"> /-----------------------------------------------------`</span></div><div><span style="color: #6a9955;"> | | 7 | 8 | 9 | Bkspc |</span></div><div><span style="color: #6a9955;"> | |---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | | 4 | 5 | 6 | + |</span></div><div><span style="color: #6a9955;"> | |---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | | 1 | 2 | 3 | - |</span></div><div><span style="color: #6a9955;"> |-------------|---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | Play/Pause | TT(_SUB)| 0 | . | = |</span></div><div><span style="color: #6a9955;"> \-----------------------------------------------------'</span></div><div><span style="color: #6a9955;"> */</span></div><div> [<span style="color: #569cd6;">_BASE</span>] = <span style="color: #dcdcaa;">LAYOUT</span>(</div><div> KC_P7, KC_P8, KC_P9, KC_BSPC, </div><div> KC_P4, KC_P5, KC_P6, KC_KP_PLUS, </div><div> KC_P1, KC_P2, KC_P3, KC_KP_MINUS, </div><div> KC_MPLY, <span style="color: #dcdcaa;">TT</span>(<span style="color: #569cd6;">_SUB</span>), KC_P0, KC_PDOT, KC_EQL</div><div> ),</div><div> <span style="color: #6a9955;">/*</span></div><div><span style="color: #6a9955;"> SUB LAYER</span></div><div><span style="color: #6a9955;"> /-----------------------------------------------------`</span></div><div><span style="color: #6a9955;"> | | |RGB_M_SW | RGB_M_T | Numlock |</span></div><div><span style="color: #6a9955;"> | |---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | | | RGB_M_B | RGB_M_R | RGB_MOD |</span></div><div><span style="color: #6a9955;"> | |---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | | | RGB_HUI | RGB_HUD | RGB RMOD|</span></div><div><span style="color: #6a9955;"> |-------------|---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | MO(_DBG) | | RGB_VAI | RGB_VAD | RGB_TOG |</span></div><div><span style="color: #6a9955;"> \-----------------------------------------------------'</span></div><div><span style="color: #6a9955;"> */</span></div><div> [<span style="color: #569cd6;">_SUB</span>] = <span style="color: #dcdcaa;">LAYOUT</span>(</div><div> _______, RGB_M_SW, RGB_M_T, KC_NLCK, </div><div> _______, RGB_M_B, RGB_M_R, RGB_MOD, </div><div> _______, RGB_HUI, RGB_HUD, RGB_RMOD, </div><div> <span style="color: #dcdcaa;">MO</span>(<span style="color: #569cd6;">_DBG</span>), _______, RGB_VAI, RGB_VAD, RGB_TOG</div><div> ),</div><div> <span style="color: #6a9955;">/*</span></div><div><span style="color: #6a9955;"> DEBUG LAYER</span></div><div><span style="color: #6a9955;"> /-----------------------------------------------------`</span></div><div><span style="color: #6a9955;"> | | | | | Reset |</span></div><div><span style="color: #6a9955;"> | |---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | | | | | |</span></div><div><span style="color: #6a9955;"> | |---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | | | | | |</span></div><div><span style="color: #6a9955;"> |-------------|---------|---------|---------|---------|</span></div><div><span style="color: #6a9955;"> | | | | | |</span></div><div><span style="color: #6a9955;"> \-----------------------------------------------------'</span></div><div><span style="color: #6a9955;"> */</span></div><div> [<span style="color: #569cd6;">_DBG</span>] = <span style="color: #dcdcaa;">LAYOUT</span>( </div><div> _______, _______, _______, RESET, </div><div> _______, _______, _______, _______, </div><div> _______, _______, _______, _______, </div><div> _______, _______, _______, _______, _______</div><div> ),</div><div>};</div></div><p><br /></p><p><b><u>Summary Links</u></b></p><p></p><ul style="text-align: left;"><li><a href="https://github.com/stanleyseow/qmk_firmware/tree/master/keyboards/dumbpad">RGB SVT dumbpad forks</a></li><li><a href="https://beta.docs.qmk.fm/using-qmk/simple-keycodes/keycodes_basic">Keycodes basic</a></li><li><a href="https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgblight">RGB Lights</a></li><li>Part 1 : <a href="https://arduino-for-beginners.blogspot.com/2020/11/building-4x4-mechanical-keyboard-with.html">https://arduino-for-beginners.blogspot.com/2020/11/building-4x4-mechanical-keyboard-with.html</a></li><li>Part 3 : <a href="https://arduino-for-beginners.blogspot.com/2021/02/rgb-svt-hotswap-and-improvements.html">https://arduino-for-beginners.blogspot.com/2021/02/rgb-svt-hotswap-and-improvements.html</a></li><li>Part 4 <a href="https://arduino-for-beginners.blogspot.com/2021/06/per-key-rgb-for-svt-rgb-dumbpad.html">https://arduino-for-beginners.blogspot.com/2021/06/per-key-rgb-for-svt-rgb-dumbpad.html</a></li></ul><p></p><p><br /></p><p> <a href="http://arduino-for-beginners.blogspot.com/2021/02/rgb-svt-hotswap-and-improvements.html">Part 3</a> with additional modifications to support hotswap keys.</p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p> </p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-75069386044353364472020-11-22T01:32:00.043+08:002021-06-19T15:22:40.446+08:00Building a 4x4 mechanical keyboard with RGB and rotary encoder<h2 style="text-align: left;">Introduction ( Part 1 of 4 )</h2><p>While browsing the local fb <a href="https://www.facebook.com/groups/MalaysiaMechanicalKeyboard">mechanical keyboard group</a>, one member was doing a group buy on an interesting qmk firmware numpad called dumbpad from <a href="https://github.com/imchipwood/dumbpad">imchipwood</a>. I always wanted a programmable numeric pad and a rotary encoder for multi function use.</p><p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrNXxpH2C0XDwgpnyNhQp_dVOywKl8tsxGcuAN-jSeM2YbemvBN_cFIYefzYLEUmSfMWB0C8iEq8tlRJZrYdFXkcFzJ6pEnt_FGTUR2LG79L235IxFrBsFOuh_VA14xf2cHOrSpverP0ZS/s2641/IMG_20201026_110444.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="2291" data-original-width="2641" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrNXxpH2C0XDwgpnyNhQp_dVOywKl8tsxGcuAN-jSeM2YbemvBN_cFIYefzYLEUmSfMWB0C8iEq8tlRJZrYdFXkcFzJ6pEnt_FGTUR2LG79L235IxFrBsFOuh_VA14xf2cHOrSpverP0ZS/s320/IMG_20201026_110444.jpg" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB dumbpad</td></tr></tbody></table><p><br /></p><h3 style="text-align: left;">Fork of Dumbpad</h3><div>After doing some searching and looking at the nice pictures of this numpad, I decided to make my own version by forking the dumbpad. Unfortunately, it was designed in EagleCAD, a PCB design software I used to use long ago but switched over to KiCAD for most of my recent PCB designs.</div><div><br /></div><div>With the KiCAD import tool, I imported the entire design to Kicad and start my journey in designing this simple keyboard.</div><div> </div><div>Here are some initial enhancements I planned add to this 4x4 keyboard :-</div><div><ul style="text-align: left;"><li>RGB backlit using WS2812B</li><li>SMD components for PCB Assembly ( diodes, LEDs, resistors, buttons, caps )</li><li>Large solder pads so it does not peal off easily</li></ul><div><br /></div><div>The decision for using SMD components was so that I can send the entire keyboard for a PCB assembly services where you order all your components and PCB and the factory will do everything and send you back the completed PCB with all the components fully soldered. Another reason was because, once you go surface mount devices (SMD), you will NEVER go back to Through-Hole (TH) parts.</div><div><br /></div><div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVh0mrQPK-MXbl8veF74w36p-yg0oS1aLlj5kEVOZGjFJvP4wu2UP2F4QNsaMF-kNjFbVL5oKsgIt0Azgxea0bsmUZtE8Nto9hy4k8gk4aOWEIFvJrpMYxscva3ShhyIWsTa2uUyXVUYDe/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="620" data-original-width="1036" height="139" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVh0mrQPK-MXbl8veF74w36p-yg0oS1aLlj5kEVOZGjFJvP4wu2UP2F4QNsaMF-kNjFbVL5oKsgIt0Azgxea0bsmUZtE8Nto9hy4k8gk4aOWEIFvJrpMYxscva3ShhyIWsTa2uUyXVUYDe/w232-h139/image.png" width="232" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">3-pin vs 5-pin</td></tr></tbody></table><br /> </div><div>As I researched further, I noticed, without a top plates, the cherry mx style switches will need a <b>5-pins</b> version for stability instead of the more commonly available <b>3-pins</b> switch version sold locally. Most keyboard have a plate for stability and take some of the stress from the pressing force. Read more here on <a href="https://keyboard.university/200-courses/plate-materials-sizes">why use a plate</a>.</div></div><div><br /></div><div><br /></div><div><br /></div><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg83Juvbd8N0Rx78xw6X0n9ck-snEMIFOn8Vh5Pn7iGlzb95ebxCjlfsw7qIxlmIil1v7Bif4s38rHWemUw7EXWAOAmqMbDbcSn4WFxetMuoLDdQ7olnZ9W3SRd8fZXlt97GSReVlug4yZz/" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto; text-align: center;"><img alt="" data-original-height="690" data-original-width="876" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg83Juvbd8N0Rx78xw6X0n9ck-snEMIFOn8Vh5Pn7iGlzb95ebxCjlfsw7qIxlmIil1v7Bif4s38rHWemUw7EXWAOAmqMbDbcSn4WFxetMuoLDdQ7olnZ9W3SRd8fZXlt97GSReVlug4yZz/" width="305" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">3D drawings</td></tr></tbody></table><br />I also added 3D models in KiCAD of the Cherry-MX switch and EC11 rotary encoder for matching the holes and visualizing the dimensions.<br /><br /><div></div><div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcvDKsAGrNRmnRr7YCzasLLhNrFBrTIjvzeDy_aKbxZWuKVpC9Gud0Pez8F6CtUc4q6BwiSzJIiFWBiB1qUU3mgVcI7b3C8LZWftRP1vmCmnv3uapgROCQTc90ygRuAnx4ReOU29sIc87f/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="718" data-original-width="753" height="276" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcvDKsAGrNRmnRr7YCzasLLhNrFBrTIjvzeDy_aKbxZWuKVpC9Gud0Pez8F6CtUc4q6BwiSzJIiFWBiB1qUU3mgVcI7b3C8LZWftRP1vmCmnv3uapgROCQTc90ygRuAnx4ReOU29sIc87f/w290-h276/image.png" width="290" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Large solder pads<br /><br /></td></tr></tbody></table></div><div>Back to the drawing board, I made more and more changes, the only thing remain the same as the original was probably the position of the switch. I also added the 2 x RGB LED Strips using WS2812 LED strips.</div><div><br /></div><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWfbGnW5uEeZ306iJ6wNLTyiaRatnHWzjHqKjX0WJPJcE9ZzXFhZ7ZB8u88Mq_zEwst845kPigrLEqeyyyFkE6VKsNxCD_Ra3Sl0iEGL4r_3XhfCq8E0ejpM5Y_iYNqPghQqT9Aiqpt9tf/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="562" data-original-width="586" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWfbGnW5uEeZ306iJ6wNLTyiaRatnHWzjHqKjX0WJPJcE9ZzXFhZ7ZB8u88Mq_zEwst845kPigrLEqeyyyFkE6VKsNxCD_Ra3Sl0iEGL4r_3XhfCq8E0ejpM5Y_iYNqPghQqT9Aiqpt9tf/" width="250" /></a></div><br /><br />I edited all the footprints and made it bigger for all the soldering pads. The above is a cherry-mx + rotary combo switch.</div><div><br /></div><h3 style="text-align: left;">PCB Plates</h3><div>Once I made the top PCB plates, more design changes are needed :-</div><div><ul style="text-align: left;"><li>Pro Micro cannot fit between the PCB and top plates with only 5mm clearance</li><li>Reset buttons need to be placed at the bottom</li><li>Experimenting a FR4 only without copper pour and soldermask so the LED at the bottom PCB can shine through it</li></ul></div><p>Had to go research on various PCB face plates design from <a href="https://www.40percent.club/">40percent.club</a> and reading various post on different types of design for this.</p><p></p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglKqqyYUlzkMfZs7dER6l0Z4BIsv1zcSQ8AKUmvHe1iHzucjTCD5FICRYAY5v_L1oOf1eds_2dOeVZyrgQyHneFc4WvMk34bQzo7Ph-CaAzx3yIexvNjGJxVCMQLcSlW6VE3KHxNCSp6km/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="723" data-original-width="1123" height="206" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglKqqyYUlzkMfZs7dER6l0Z4BIsv1zcSQ8AKUmvHe1iHzucjTCD5FICRYAY5v_L1oOf1eds_2dOeVZyrgQyHneFc4WvMk34bQzo7Ph-CaAzx3yIexvNjGJxVCMQLcSlW6VE3KHxNCSp6km/" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB Plates</td></tr></tbody></table><p></p><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: left;">I finalized with this design and added more mounting point in case I need support from the PCB to the top plates. The <b>Pro Micro</b>, the micro-controller used in this design was swapped to the bottom and all the pins were swapped. I had to re-route everything again.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;"><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHNaHNieZUg4HQ3xcR7DCKnm0gVpEde3afPUDDY_VzRekH6kfJ-sR1cDkGXFVx3zemMaiElG97fvk7YqXci4i76j4glx8Maw1oznz632zuGRcrMQcv3oVF86KvVbCJRj64rMoWtiQbt8XY/" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="553" data-original-width="911" height="194" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHNaHNieZUg4HQ3xcR7DCKnm0gVpEde3afPUDDY_VzRekH6kfJ-sR1cDkGXFVx3zemMaiElG97fvk7YqXci4i76j4glx8Maw1oznz632zuGRcrMQcv3oVF86KvVbCJRj64rMoWtiQbt8XY/" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">SVT RGB bottom layer</td></tr></tbody></table><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Just had enough space for two RGB LED strips with 4 x WS2812 each in between middle and bottom row.</div><br />I also added an jumper option for the 3rd LED to choose between LED or underglow RGB.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">So far, it all schematics and PCB design without knowing will the QMK software even will work with the RGB LED underglow I just added.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Once the PCB was done, I have to do those boring stuff like ordering SMD parts ( 1N4148, Arduino Pro Micro, EC11 Rotary Encoder , knobs and other parts )</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">I check and re-check several times and held my breath and sent both the PCBs to the Seeed Studio <a href="https://www.seeedstudio.com/fusion_pcb.html">Fusion Services</a></div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">In summary here are the enhancements I have added to the original dumbpad :-</div><p></p><div class="separator" style="clear: both;"><ul style="text-align: left;"><li>Added 2 x RGB LED strips for LED underglow</li><li>Switched all components to SMD</li><li>Large solder pads for switches</li><li>Flipped the Pro Micro</li><li>PCB Plates to hold the switches</li><li>LED shining through PCB plates</li><li>Enlarge all pads for the Cherry-MX-Encoder footprints</li><li>A few extra M3 mounting holes</li></ul></div><p></p><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Continue in <a href="https://arduino-for-beginners.blogspot.com/2020/12/qmk-flashing-and-coding-svt-rgb-4x4.html">Part 2</a> once I received back the PCB and started coding the SVT RGB dumbpad on QMK firmware</div><div class="separator" style="clear: both; text-align: left;"><br /></div><h3 style="clear: both; text-align: left;">Summary Links</h3><div class="separator" style="clear: both; text-align: left;"><ul style="text-align: left;"><li>Part 2 <a href="https://arduino-for-beginners.blogspot.com/2020/12/qmk-flashing-and-coding-svt-rgb-4x4.html">https://arduino-for-beginners.blogspot.com/2020/12/qmk-flashing-and-coding-svt-rgb-4x4.html</a></li><li>Part 3 <a href="https://arduino-for-beginners.blogspot.com/2021/02/rgb-svt-hotswap-and-improvements.html">https://arduino-for-beginners.blogspot.com/2021/02/rgb-svt-hotswap-and-improvements.html</a></li><li>Part 4 <a href="https://arduino-for-beginners.blogspot.com/2021/06/per-key-rgb-for-svt-rgb-dumbpad.html">https://arduino-for-beginners.blogspot.com/2021/06/per-key-rgb-for-svt-rgb-dumbpad.html</a></li></ul></div><div class="separator" style="clear: both; text-align: left;"><br /></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-24210952301674754222020-06-17T21:54:00.001+08:002020-06-17T21:58:46.377+08:00Cytron Maker Nano<div dir="ltr" style="text-align: left;" trbidi="on">
I got a surprised today when I received a delivery package as I don't remember I ordered anything recently ... it turns out to be a <a href="https://my.cytron.io/p-maker-nano-simplifying-arduino-for-projects?search=cytron">Maker Nano</a> from <a href="https://my.cytron.io/">Cytron</a>, Malaysia Largest Digital Maker Marketplace.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><img alt="" height="232" src="data:image/png;base64,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" style="margin-left: auto; margin-right: auto;" width="320" /></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Maker Nano</td></tr>
</tbody></table>
<br />
<br />
Here are the pinout of the Maker Nano with the following add-ons :-<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFq7IJuFhyphenhyphenFzZHJCsT5uB7t-LGEOCUHEZfE_HxGGCbANu6KkRNVG1V2rOuK2a9H3WfH0dVqFjwX_GKJfGP-CICE1toUIGZUwNfGOvRc1n6QHBLpo8bbDaB7fS3-W2ktzi2buFwhyphenhyphen9cO4mm/s1600/Cytron-nano.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="512" data-original-width="795" height="257" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFq7IJuFhyphenhyphenFzZHJCsT5uB7t-LGEOCUHEZfE_HxGGCbANu6KkRNVG1V2rOuK2a9H3WfH0dVqFjwX_GKJfGP-CICE1toUIGZUwNfGOvRc1n6QHBLpo8bbDaB7fS3-W2ktzi2buFwhyphenhyphen9cO4mm/s400/Cytron-nano.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Maker Nano pinout</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<br />
<br /></div>
<div style="text-align: left;">
<ul style="text-align: left;">
<li>12 x LED</li>
<li>1 x buzzer at D8 ( I love the buzzer )</li>
<li>1 x button at D2</li>
</ul>
<div>
<br />
Recently I have been testing a few new board and the first thing to do is to locate where the LED pin is connected to. Some boards are obvious at pin 13 ( the default for Arduino ) but others are less obvious, pin 5 for a RISC-V chip ( pin 5 as in roman letter V ) and others, I had to search the Internet and schematic diagram to locate them, especially China made board with less documentation.</div>
<div>
<br /></div>
<div>
This board <b>Maker Nano</b> had LED at ALL the pin, no problems whatsoever...</div>
<div>
<br /></div>
<div>
Upon booting up, you will be greeted with a pleasant surprised, click on the video if you do not like surprises. </div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/uI7EMKTQCSg/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/uI7EMKTQCSg?feature=player_embedded" width="320"></iframe></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
I love PCB in purple!!! And also this is Product of Malaysia !!!!!</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitBpe6-3YFOgcdBOOusfm6j5T0ZWsvmLy5HrY1lic1Us0btz0n38eFHwyZqvafPBP1pRCg47nxYrX2_hOFYlcJFu4i_IQ8qFEvid2PNaINX4h2sLOflWcPIyVZYCITlxtS4HQIJkBsDM2s/s1600/IMG_20200613_113917.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1600" data-original-width="1200" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitBpe6-3YFOgcdBOOusfm6j5T0ZWsvmLy5HrY1lic1Us0btz0n38eFHwyZqvafPBP1pRCg47nxYrX2_hOFYlcJFu4i_IQ8qFEvid2PNaINX4h2sLOflWcPIyVZYCITlxtS4HQIJkBsDM2s/s400/IMG_20200613_113917.jpg" width="300" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Maker Nano Product of Malaysia </td></tr>
</tbody></table>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
Here are some photos of the Maker Nano compared to "regular" Nano with the screw terminal boards.<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBD8p4jt-Th0fshLnS19J8Sy7L8MiiJrndOrT3pSsKiHCH99jkMuNX_f3ZYTyj6QpcsRbUha37jN_mf50R7nHA5oZuUC2LpmIzk3L2dRGMT2Uoc1jiGXfIcb2eRhyphenhyphen9fOgF-xu_Op8FI5Up/s1600/IMG_20200617_210114.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1408" data-original-width="1600" height="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBD8p4jt-Th0fshLnS19J8Sy7L8MiiJrndOrT3pSsKiHCH99jkMuNX_f3ZYTyj6QpcsRbUha37jN_mf50R7nHA5oZuUC2LpmIzk3L2dRGMT2Uoc1jiGXfIcb2eRhyphenhyphen9fOgF-xu_Op8FI5Up/s320/IMG_20200617_210114.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Maker Nano in Terminal breakout </td></tr>
</tbody></table>
<br />
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPRLVbXPPKVze84w3AW5xq2lwckDdnQnP86OeY3TPxPhnQfBPeARQVy08FoVFpYHCIFeuZZqt_9iK7N-MZUbrDu8_uvCRh9nyFQU7nt90i-oz7VhT98a-3Wmxnp02EjHOtP1lfT15RfZb9/s1600/IMG_20200617_210050.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1504" data-original-width="1600" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPRLVbXPPKVze84w3AW5xq2lwckDdnQnP86OeY3TPxPhnQfBPeARQVy08FoVFpYHCIFeuZZqt_9iK7N-MZUbrDu8_uvCRh9nyFQU7nt90i-oz7VhT98a-3Wmxnp02EjHOtP1lfT15RfZb9/s320/IMG_20200617_210050.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Maker Nano vs Nano</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br /></div>
Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-236630323640582849.post-34910043422501194572020-04-07T00:55:00.000+08:002020-04-08T14:23:28.106+08:00SeeedStudio Xiao<div dir="ltr" style="text-align: left;" trbidi="on">
<h1 style="box-sizing: inherit; color: rgba(0, 0, 0, 0.54); font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 3.125rem; font-weight: 300; letter-spacing: -0.01em; line-height: 1.3; margin: 0px 0px 4rem;">
SeedStudio XIAO</h1>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWzt2epG3vV6qJUoLH7vB8UbqSNg5ejEeuJWEKefciaaEeii2IRdpGmici5ToNzeLyJXrPzgUqWQRQV6oQnxnTvntpsuOeSu7_8gh7WIf89z_pwSTceP55D6VTVzB4GhPljp-xnUtuFAjq/s1600/Screenshot+2020-04-07+at+12.21.23+AM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="939" data-original-width="1120" height="268" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWzt2epG3vV6qJUoLH7vB8UbqSNg5ejEeuJWEKefciaaEeii2IRdpGmici5ToNzeLyJXrPzgUqWQRQV6oQnxnTvntpsuOeSu7_8gh7WIf89z_pwSTceP55D6VTVzB4GhPljp-xnUtuFAjq/s320/Screenshot+2020-04-07+at+12.21.23+AM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SeeedStudio Xiao</td></tr>
</tbody></table>
<div>
<br /></div>
<div>
<div style="text-align: left;">
<span style="font-family: "verdana" , sans-serif; font-size: large;">It been a while since I last did any review on new mico-controller boards but this cute little board is small yet powerful. In the past, I have used <b>Arduino Zero</b> boards before with the <span style="background-color: white;"><b>SAMD21 Cortex M0+ </b>but they comes usually pretty large form factor. This product from SeeedStudio called <a href="https://www.seeedstudio.com/Seeeduino-XIAO-Arduino-Microcontroller-SAMD21-Cortex-M0+-p-4426.html">Xiao</a>. </span></span></div>
</div>
<div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC_rLWR7dMWE3a0iSPynw4tE2K5I7mzAffOx_MFk1-nH5xqO2vQrqc6X0EZZyqrCucP7SnOMhz7XOz36iO5o315Iox4W4rXgbNrTPMihsPAPWjPck30-K_HlO2kvwEKvBYCCILS5GDvhEe/s1600/Screenshot+2020-04-07+at+12.35.42+AM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="886" data-original-width="1348" height="210" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC_rLWR7dMWE3a0iSPynw4tE2K5I7mzAffOx_MFk1-nH5xqO2vQrqc6X0EZZyqrCucP7SnOMhz7XOz36iO5o315Iox4W4rXgbNrTPMihsPAPWjPck30-K_HlO2kvwEKvBYCCILS5GDvhEe/s320/Screenshot+2020-04-07+at+12.35.42+AM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SeeedStudio Xiao pinout</td></tr>
</tbody></table>
<div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #3c3c3c; font-family: "verdana" , sans-serif; font-size: large;">Let's run through the pinout of this tiny fellow. It comes with 11 Digital pins ( D0 to D10 ) which also double as Analog pind ( D0 to D10). Some of the pin also double as other functions like Serial ( D6 - Tx, D7 - Rx ), I2C ( D4 & D5 ) and SPI ( D8, D9, D10 ) so it should satisfied most of the basic needs of an Arduino board.</span></div>
<div style="text-align: left;">
<span style="background-color: white; color: #3c3c3c; font-family: "verdana" , sans-serif; font-size: large;"><br /></span></div>
<div style="text-align: left;">
<span style="color: #3c3c3c; font-family: OpenSans-Semibold;"><span style="background-color: white; font-family: "verdana" , sans-serif; font-size: large;">Besides being small, the price is also small at US$4.90 and comes with USB-C. I really like USB-C compared to the Micro-USB that gets yank off easily.</span></span></div>
<div>
<span style="color: #3c3c3c; font-family: OpenSans-Semibold;"><span style="background-color: white; font-family: "verdana" , sans-serif; font-size: large;"><br /></span></span></div>
<div>
<span style="color: #3c3c3c; font-family: OpenSans-Semibold;"><span style="background-color: white; font-family: "verdana" , sans-serif; font-size: large;">As I have a little bit time due to the lockdown here in Malaysia and I have designed some 90 degree WS2812 PCB Adapters from <a href="https://www.seeedstudio.com/fusion.html">SeeedStudio Fusion</a>, I decided to make a LED project.</span></span></div>
<div>
<span style="color: #3c3c3c; font-family: OpenSans-Semibold;"><span style="background-color: white;"><br /></span></span></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyaV1n0XzHJ3MPU0tRclPDop7iMo-k_CLV7e4lCqwylnHCMcQUlFiP1u2wVL4oHH1UNaxUIyIPx22W5JkIJybbYfOWCPgD2aoq2OKh_f5olGAC3EVBhUHg-ztoVqVlS0kyOKWBkWo6NlK4/s1600/IMG_20200406_174435.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1600" data-original-width="1200" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyaV1n0XzHJ3MPU0tRclPDop7iMo-k_CLV7e4lCqwylnHCMcQUlFiP1u2wVL4oHH1UNaxUIyIPx22W5JkIJybbYfOWCPgD2aoq2OKh_f5olGAC3EVBhUHg-ztoVqVlS0kyOKWBkWo6NlK4/s320/IMG_20200406_174435.jpg" width="240" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SVT WS2812 90 degree Adapter</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXzaSxJkM1KedNlhpUTP-OYTkbyO0s_-fw_YcuP35gYV6laUDKpT4K0Wx-tVHh90t-Axq3mYeYNS6U7YnSBmls3oR-Jz8XjHwMWKochmfybd2pvdilX2U8MCi2GEk_i4z7IlEAe2Q8qWLv/s1600/IMG_20200406_181202.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXzaSxJkM1KedNlhpUTP-OYTkbyO0s_-fw_YcuP35gYV6laUDKpT4K0Wx-tVHh90t-Axq3mYeYNS6U7YnSBmls3oR-Jz8XjHwMWKochmfybd2pvdilX2U8MCi2GEk_i4z7IlEAe2Q8qWLv/s320/IMG_20200406_181202.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SVT WS2812 90 degree Adapter</td></tr>
</tbody></table>
<div>
<span style="font-family: "verdana" , sans-serif; font-size: large;"><span style="color: #3c3c3c; font-family: OpenSans-Semibold;"><span style="background-color: white;">With four LED adapter, you can make a nice looking square LED shape. </span></span><span style="background-color: white; color: #3c3c3c;">For a size comparison, the SeeedStudio Xiao is even smaller than the 90 degree LED adapter!!!!</span></span></div>
<div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
<div>
<span style="color: #3c3c3c; font-family: OpenSans-Semibold;"><span style="background-color: white;"><br /></span></span></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVfjtQjUbxyOvRjBDovPztqvytmgEI-dHtNwX9ulayRceFcUdsgOBroPCXw94xpvCDARyQnKkarK5EqJVqZ0EeSq2BMWEVH4njETqwq-VAs5V-kBTRcrLJ5vykIWNRzshRoDXpvDiyHJjw/s1600/IMG_20200406_214158.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1200" data-original-width="1600" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVfjtQjUbxyOvRjBDovPztqvytmgEI-dHtNwX9ulayRceFcUdsgOBroPCXw94xpvCDARyQnKkarK5EqJVqZ0EeSq2BMWEVH4njETqwq-VAs5V-kBTRcrLJ5vykIWNRzshRoDXpvDiyHJjw/s400/IMG_20200406_214158.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">LED Adapter vs SeeedStudio Xiao</td></tr>
</tbody></table>
<div>
<span style="font-family: "verdana" , sans-serif; font-size: large;">As I do not usually use breadboard that often, I decided to solder the male header pins facing the top instead.</span></div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNgLFJSkOsTu4zwXR8TFjaZNJdhje5It1Y9jDJBEaRTgZts7C7EOw22nwjNVGBj94ij1uQd8o4gKNujVZwImltIXgA0ggNqLF37JUWTx-K7HbofcaZCFqnPCz29_M3mODb39eiet0BVHMS/s1600/IMG_20200407_001207.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1592" data-original-width="1600" height="318" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNgLFJSkOsTu4zwXR8TFjaZNJdhje5It1Y9jDJBEaRTgZts7C7EOw22nwjNVGBj94ij1uQd8o4gKNujVZwImltIXgA0ggNqLF37JUWTx-K7HbofcaZCFqnPCz29_M3mODb39eiet0BVHMS/s320/IMG_20200407_001207.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SeeedStudio Xiao with headers</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhutCJF5KdkfGJEhBMgvO3b877q2bviYVNyv3CofCYMdJ89Ou_-AWkZJBmvcCm37PW20iLteRT8j03NEOmNQ3lVnCbWTduaEVvER8790Kaob4ACS89ToQnwggUyP30EjFr_sfywmZhH6xSF/s1600/IMG_20200407_001219.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1487" data-original-width="1442" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhutCJF5KdkfGJEhBMgvO3b877q2bviYVNyv3CofCYMdJ89Ou_-AWkZJBmvcCm37PW20iLteRT8j03NEOmNQ3lVnCbWTduaEVvER8790Kaob4ACS89ToQnwggUyP30EjFr_sfywmZhH6xSF/s320/IMG_20200407_001219.jpg" width="310" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SeeedStudio Xiao with headers</td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN-FBLGi-hXv3IfBdgj2qGO4Ov-cvHcW0NgeygpP1aRff4nitGfmg3_e4Df4-DxhSfHsxZ7R-Xui6wqX98s8PcqfKRIxIICCGqxisZkoXcLxAwbyX83r2M9J9eeSmviJwsOw8sa2ckd5hJ/s1600/IMG_20200407_001425.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN-FBLGi-hXv3IfBdgj2qGO4Ov-cvHcW0NgeygpP1aRff4nitGfmg3_e4Df4-DxhSfHsxZ7R-Xui6wqX98s8PcqfKRIxIICCGqxisZkoXcLxAwbyX83r2M9J9eeSmviJwsOw8sa2ckd5hJ/s320/IMG_20200407_001425.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SeeedStudio Xiao with square WS2812 </td></tr>
</tbody></table>
<div>
<br /></div>
<div>
<span style="font-family: "verdana" , sans-serif; font-size: large;">Everything wired together and connect to the 5V power supply. Below are some video from the projects. </span></div>
<div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/eeXtZ_Qkljk/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/eeXtZ_Qkljk?feature=player_embedded" width="320"></iframe></div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
<div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
<div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/U8dYlO781RM/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/U8dYlO781RM?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div align="left" class="MsoNormal">
<span style="font-family: "Microsoft YaHei UI", sans-serif;"><br /></span></div>
<div align="left" class="MsoNormal">
<span style="font-family: "Microsoft YaHei UI", sans-serif;"><span style="font-size: x-small;"><span style="color: blue;"><a href="http://www.seeedstudio.com/">About Seeed Studio</a></span><o:p></o:p></span></span></div>
<div align="left" class="MsoNormal">
<span style="font-size: x-small;"><span style="font-family: "Microsoft YaHei UI", sans-serif;">Seeed is the IoT
hardware enabler providing services over 10 years that empower makers to
realize their projects and products. Seeed offers a wide array of hardware
platforms and sensor modules ready to be integrated with existing IoT platforms
and one-stop </span><a href="https://www.seeedstudio.com/fusion_pcb.html"><span style="color: blue; font-family: "Microsoft YaHei UI","sans-serif"; mso-bidi-font-family: SimSun; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt;">PCB fabrication</span></a><span style="font-family: "Microsoft YaHei UI", sans-serif;"> and </span><a href="https://www.seeedstudio.com/prototype-pcb-assembly.html"><span style="color: blue; font-family: "Microsoft YaHei UI","sans-serif"; mso-bidi-font-family: SimSun; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt;">PCB assembly
service</span></a><span style="font-family: "Microsoft YaHei UI", sans-serif;">. Seeed Studio
provides a wide selection of electronic parts including </span><a href="https://www.seeedstudio.com/category/Arduino-c-1001.html"><span style="color: blue; font-family: "Microsoft YaHei UI","sans-serif"; mso-bidi-font-family: SimSun; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt;">Arduino</span></a><span style="font-family: "Microsoft YaHei UI", sans-serif;"> </span><a href="https://www.seeedstudio.com/Raspberry-pi-c-1010.html"><span style="color: blue; font-family: "Microsoft YaHei UI","sans-serif"; mso-bidi-font-family: SimSun; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt;">Raspberry Pi</span></a><span style="font-family: "Microsoft YaHei UI", sans-serif;"> and many
different development board platforms Especially the </span><a href="https://www.seeedstudio.com/grove.html"><span style="color: blue; font-family: "Microsoft YaHei UI","sans-serif"; mso-bidi-font-family: SimSun; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt;">Grove Sytsem</span></a></span><span style="font-family: "Microsoft YaHei UI", sans-serif;"><span style="font-size: x-small;"> help engineers and makers to avoid
jumper wires problems. Seeed Studio has developed more than 280 Grove modules covering
a wide range of applications that can fulfill a variety of needs. </span><o:p></o:p></span></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<o:p><br /></o:p></div>
<span style="background-color: white; color: #3c3c3c;"><br /></span></div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-35070488482784150352016-12-19T20:47:00.000+08:002016-12-19T20:47:11.849+08:00Lattepanda - Powerful Win10 with on-board Arduino<div dir="ltr" style="text-align: left;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCW4sr5QnXEjajfaEf8P2Nvh5LZtHzezKb30i_qS3KL429uRB4K6poeBXhNPWemqyQ2midDtOuR0wlbgYt71hXs5fNAMS03i0Z6uqpRCavo4ePSoIvjD67wwz_kaRUbd2bHpnrr6CV2om3/s1600/2016-11-26+01.33.45.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCW4sr5QnXEjajfaEf8P2Nvh5LZtHzezKb30i_qS3KL429uRB4K6poeBXhNPWemqyQ2midDtOuR0wlbgYt71hXs5fNAMS03i0Z6uqpRCavo4ePSoIvjD67wwz_kaRUbd2bHpnrr6CV2om3/s400/2016-11-26+01.33.45.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepanda on plywood casing</td></tr>
</tbody></table>
<div>
<br /></div>
<div>
<br /></div>
LattePanda was launch on <a href="https://www.kickstarter.com/projects/139108638/lattepanda-a-45-win10-computer-for-everything">Kickstarter</a> on Dec 2015 as the "<b>A Windows 10 Computer for Everything</b>" and was successfully funded 4 times the pledged amount.<div>
<br /><div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiDICNjRZx56Q0r5hqdhLM9SEepr6wYiokNXkIdrSuy5NiodZCyBFqp7KAUGYxF2eEQwheT-0HiQzf-VkZHyG3RCEJQdbLQlJH0n-1YoABWtxavrJNcVO9t3WIF_R-CYUlgYSy0ozlfFqN/s1600/20LattePanda.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="150" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiDICNjRZx56Q0r5hqdhLM9SEepr6wYiokNXkIdrSuy5NiodZCyBFqp7KAUGYxF2eEQwheT-0HiQzf-VkZHyG3RCEJQdbLQlJH0n-1YoABWtxavrJNcVO9t3WIF_R-CYUlgYSy0ozlfFqN/s400/20LattePanda.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepanda specs</td></tr>
</tbody></table>
<div>
<br /></div>
</div>
<div>
A quick glance at the specs, it is very similar to some 7" Intel Atom tablet hardware running on the <a href="https://ark.intel.com/products/87383/Intel-Atom-x5-Z8300-Processor-2M-Cache-up-to-1_84-GHz">Intel Atom Cherry Trail Z8300</a> <b>quad-core 1840 Mhz</b> CPU , <b>2GB/4GB DDR3 RAM</b>, with an Intel Gen8 GPU, <b>32GB/64GB eMMC</b> storage with an <b>Arduino Atmega32U4</b> ( Leonardo ) directly connected to the CPU.</div>
<div>
<br /></div>
<div>
On top of the usual stuff, below are some extrra worth mentioned :-</div>
<div>
<ul style="text-align: left;">
<li>1 x USB3.0 port</li>
<li>Bluetooth 4.0</li>
<li>WIFI 802.11n</li>
<li>Serial port to the Intel chip</li>
<li>Serial port to Arduino</li>
<li>I2C to Intel chip</li>
<li>2 x GPIO to Intel chip</li>
<li>Display connector ( for 7" display )</li>
<li>touchscreen connector ( for 7" display )</li>
<li>and also an audio jack </li>
</ul>
<div>
<br /></div>
</div>
<div>
My review unit was a 2GB RAM with 32GB storage that runs Win 10 32-bit version that comes with a nice looking open source laser cut <a href="https://github.com/LattePandaTeam/LattePanda-3D-Model/tree/master/LattePanda%20Case%20related%20file/Official%20Case%20CAD/Plywood%20Case">plywood case</a> with reset and power buttons.</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEoc5T_hjL0dJ7ePrqp8gA7iBQsZNZOhW0r8JJm6TVO3JwuTIWhrOgXFMbtKL03aaVBZtZzW1H3TOY7lFJjmS4tuZsKv02Y4Km0Gddr-KTSp12hFxZhSmKQyybEDaPfS0wK324-T8CdpnF/s1600/2016-11-26+01.34.37.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEoc5T_hjL0dJ7ePrqp8gA7iBQsZNZOhW0r8JJm6TVO3JwuTIWhrOgXFMbtKL03aaVBZtZzW1H3TOY7lFJjmS4tuZsKv02Y4Km0Gddr-KTSp12hFxZhSmKQyybEDaPfS0wK324-T8CdpnF/s320/2016-11-26+01.34.37.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepaanda side view</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7TfqO7mp2_tpf45RNzlojSqAcPL71Nt0cbd9eTslKeZBP5J3z2nWjRsAi0PMtapnSJ26gTya2xst3SVpOPqX87RAtHwD0E67obXC5p3SYQ8953jmec6zZBt41V5L2S0kw58f73kj7_Ome/s1600/2016-11-26+01.35.07.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7TfqO7mp2_tpf45RNzlojSqAcPL71Nt0cbd9eTslKeZBP5J3z2nWjRsAi0PMtapnSJ26gTya2xst3SVpOPqX87RAtHwD0E67obXC5p3SYQ8953jmec6zZBt41V5L2S0kw58f73kj7_Ome/s320/2016-11-26+01.35.07.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepanda top view</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0wzt_woII8mMepxYsT5SgwQZPIjIBjO9ZwdSSCrJ6TE9XsyQT06tLXrfWbE-gQJJaT7tcOzo6T5HzY6Weuj9WULO685DnXjuysKwXbeoBiBqy3FjOg3hdILMxROPIEvsF0V71yUCX5tCf/s1600/2016-11-26+01.35.24.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0wzt_woII8mMepxYsT5SgwQZPIjIBjO9ZwdSSCrJ6TE9XsyQT06tLXrfWbE-gQJJaT7tcOzo6T5HzY6Weuj9WULO685DnXjuysKwXbeoBiBqy3FjOg3hdILMxROPIEvsF0V71yUCX5tCf/s320/2016-11-26+01.35.24.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepanda top view</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Heatsink are recommended for the shielding plate where the Intel Atom is located. DFRobot included a few pieces of small copper heatsinks.</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div>
<br /></div>
<div>
The great thing about this product is that it is pre-installed with an Activated Windows 10, just connect power, HDMI monitor, keyboard and mouse and "ready to run"..</div>
<div>
<br /></div>
<div>
Once power up, Windows 10 welcomes lattepanda to the operating system ...</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAoP7K4Sy9NL2C78Wk5OASc6-aFaYOAUNlbQJ2iEF4bvPQOe730kaJrOeohyphenhyphen18cAliJSeH5jf1-fhHGv87Nixtll10nCDhisnJkHps_Ce8tqZVJv17M_aIYxbrPFjH6NkYw39lNOH6YB6s/s1600/2016-11-25+23.47.19.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAoP7K4Sy9NL2C78Wk5OASc6-aFaYOAUNlbQJ2iEF4bvPQOe730kaJrOeohyphenhyphen18cAliJSeH5jf1-fhHGv87Nixtll10nCDhisnJkHps_Ce8tqZVJv17M_aIYxbrPFjH6NkYw39lNOH6YB6s/s320/2016-11-25+23.47.19.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Windows 10 welcomes lattepanda !!!!</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: left;">
An Arduino version 1.0.6 is also included in the Windows 10 for a ready to blink "Hello World" without any extra software downloads. This is a really nice feature.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnqVUHNgmq2Gl2Qxhta1Mt9ntiwWSObxFEoveGtl-VPjRvcM5YukXSsn_I51FU7SbnTMv91LRFaMuteocja53Roe2HX7iV_Ykvgwyh0qvycCUmsICaoDk2q4sYylzeLARkHegg67ahJ7Jc/s1600/2016-11-25+23.35.01.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnqVUHNgmq2Gl2Qxhta1Mt9ntiwWSObxFEoveGtl-VPjRvcM5YukXSsn_I51FU7SbnTMv91LRFaMuteocja53Roe2HX7iV_Ykvgwyh0qvycCUmsICaoDk2q4sYylzeLARkHegg67ahJ7Jc/s320/2016-11-25+23.35.01.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Win10 also welcome Arduino </td></tr>
</tbody></table>
<div>
<br /></div>
<div>
As many people was asking me about the hardware specs, I will post some of the Device Manager details ..</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1SoHOS23K74SFpVAjNOHK5cDc_1koZR32-O7s23jqBfDCBZxSl_46PNOszJB3gsNc-otNOibZpBEel1EaPLq0Tzhcr-Wr0dPM5UVAYEDoisTxgNGZHoK5NzoTRBZv6A0anD_zjfFJubIg/s1600/LP1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1SoHOS23K74SFpVAjNOHK5cDc_1koZR32-O7s23jqBfDCBZxSl_46PNOszJB3gsNc-otNOibZpBEel1EaPLq0Tzhcr-Wr0dPM5UVAYEDoisTxgNGZHoK5NzoTRBZv6A0anD_zjfFJubIg/s400/LP1.jpg" width="343" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepanda Device Manager</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKsxm7nyLwRBCmds4uUDT_Vvzt7oTA-lnee-b7lhCdkZLqXAg_6k_q1ZY4tU_jGz_KRresCi78P4nzxbRAiNHkFfZf4OTMivG-VKmeeEbMClGTbs-I0KcGYGHyWTVYDqVqMZJX2hwMO1dC/s1600/LP2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKsxm7nyLwRBCmds4uUDT_Vvzt7oTA-lnee-b7lhCdkZLqXAg_6k_q1ZY4tU_jGz_KRresCi78P4nzxbRAiNHkFfZf4OTMivG-VKmeeEbMClGTbs-I0KcGYGHyWTVYDqVqMZJX2hwMO1dC/s400/LP2.jpg" width="313" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepanda Hardware Monitor</td></tr>
</tbody></table>
<div>
The CPU do get pretty hot, so I removed the back cover and installed the included pure copper heatsinks that come together with the package.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVa13X2czOOA4nt2ZJaIfGTZKx6pDILbkT5Dn-3EMN2vjVDEhkp6x4n7GO8aQ_B9S5dBDhXj0SuhgYjjJQgY7VUIfIZd7tbzDS9fT4QTOOhHkga4o-HyS2P2i6mzZY70LxmkVeeGkH-eol/s1600/2016-11-28+20.21.26.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVa13X2czOOA4nt2ZJaIfGTZKx6pDILbkT5Dn-3EMN2vjVDEhkp6x4n7GO8aQ_B9S5dBDhXj0SuhgYjjJQgY7VUIfIZd7tbzDS9fT4QTOOhHkga4o-HyS2P2i6mzZY70LxmkVeeGkH-eol/s320/2016-11-28+20.21.26.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Lattepanda bottom view with heatsinks</td></tr>
</tbody></table>
</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
My overall impression was pretty good and this is a value for money for a small and powerful computer inside a cute plywood casing (there is also an acrylic version of the case) with an on-board Arduino too!!! It have plug and play sensor connectors too. Even when the Win10 is powered off, the Arduino is still running as I run the Blink examples to blink the blue on-board LED.</div>
<div style="text-align: left;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyxEEkcQbum7WWVihnDEdGLoHG2pDxgib5DU0N0JRoCc9Yc3tcdpKGePlS7KnAyQ9oIvTkXp4bFagP9J24QpgFInYF5wZEO8i5sV0_aXz4Vzj45YYUomVp0vffa_87VneRNMV_Z5oZ7_88/s1600/LP3.gif" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="351" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyxEEkcQbum7WWVihnDEdGLoHG2pDxgib5DU0N0JRoCc9Yc3tcdpKGePlS7KnAyQ9oIvTkXp4bFagP9J24QpgFInYF5wZEO8i5sV0_aXz4Vzj45YYUomVp0vffa_87VneRNMV_Z5oZ7_88/s400/LP3.gif" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><br /></td></tr>
</tbody></table>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
The price range from US$89 to $149 for the highest end version of 4GB/64GB storage that runs on 64-bit Windows.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Summary Links :-</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<ul style="text-align: left;">
<li>LattePanda <a href="http://www.lattepanda.com/products/">product page</a></li>
<li>DFRobot <a href="https://www.dfrobot.com/index.php?route=product/search&search=LattePanda&description=true">LattePanda page</a></li>
<li>LattePanda <a href="https://www.kickstarter.com/projects/139108638/lattepanda-a-45-win10-computer-for-everything/description">Kickstarter</a></li>
<li>LattePanda <a href="http://www.lattepanda.com/docs/">Documentations</a></li>
<li>LattePanda Open source <a href="https://github.com/LattePandaTeam/LattePanda-3D-Model">3D-model</a></li>
<li><a href="https://ark.intel.com/products/87383/Intel-Atom-x5-Z8300-Processor-2M-Cache-up-to-1_84-GHz">Intel Atom Cherry Trail Z8300</a></li>
</ul>
<div>
<br /></div>
<div>
<br /></div>
</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-1752020525480874712016-03-14T11:44:00.003+08:002016-11-17T13:18:07.446+08:00Driving the #Bolt at #ilightsmarinabay using I2C protocol<div dir="ltr" style="text-align: left;" trbidi="on">
<b>All my projects are posted to my facebook page at <a href="http://fb.com/SVTmaker">http://fb.com/SVTmaker</a></b><br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHnr3o1F5sJh5lklW6gFlx2zIScAdkmDOww_3eERAHeq8coYVft50Ew_QG74LtAosWcJ7Tb-i1-cW9p4_mjVeCAolJCpsUWeYS20rFbIol3hEuepavbdF_6Wtg4YCU4EHzj5z7MKPd5NeG/s1600/BOLT_MarinaBay.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHnr3o1F5sJh5lklW6gFlx2zIScAdkmDOww_3eERAHeq8coYVft50Ew_QG74LtAosWcJ7Tb-i1-cW9p4_mjVeCAolJCpsUWeYS20rFbIol3hEuepavbdF_6Wtg4YCU4EHzj5z7MKPd5NeG/s400/BOLT_MarinaBay.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">#Bolt #SVTMaker</td></tr>
</tbody></table>
<br />
<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgb4IAG7HmOqwoDzj6srrx4s2IzHut1qMej7kbNaeSNGvsDQ9GD67QJP_2YAMUtWvS0oQNexDnacxxymO4kZUxWSzwFw9j2jMw26VESWF-CUsKmFNokaUFndjyA_IwvmtIStLGeUXbvNyqP/s1600/Bolt+cover.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="282" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgb4IAG7HmOqwoDzj6srrx4s2IzHut1qMej7kbNaeSNGvsDQ9GD67QJP_2YAMUtWvS0oQNexDnacxxymO4kZUxWSzwFw9j2jMw26VESWF-CUsKmFNokaUFndjyA_IwvmtIStLGeUXbvNyqP/s400/Bolt+cover.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">#Bolt #SVTmaker</td></tr>
</tbody></table>
<br />
<br />
In this article, I would like to share my experience in planning, testing, making, building, and driving the #Bolt at #ilightsmarinabay that happened on 4th March 2016 at Marina Bay, Singapore iLights festival.<br />
<br />
A local artists that built a <a href="http://urbanxchange2015.com/2015/11/19/massive-led-star-lights-up-malaysia/">massive LED star</a> in Butterworth, Penang called Jun Hao engaged two local makers, WeMaker and <a href="https://www.facebook.com/SVTmaker/">SVTmaker</a> to do another project in Singapore called the Bolt, simulating lightning bolt when a button was pressed. The below images was taken from his proposal to the festival.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIAVi7wx7si1k5NG8SwkiTg4-TuzsT2HCxsh6sOgq7fVXwwkXDyMuNeAJqjCOfi-m4igBiZ6bo6qNv-gYF5x4i-Es-YsWsE_9kvasRYeC5AflCzQq292dvwkbBie0JEVeF72pmxwmgO_7N/s1600/Initial+idea+from+Jun.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="306" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIAVi7wx7si1k5NG8SwkiTg4-TuzsT2HCxsh6sOgq7fVXwwkXDyMuNeAJqjCOfi-m4igBiZ6bo6qNv-gYF5x4i-Es-YsWsE_9kvasRYeC5AflCzQq292dvwkbBie0JEVeF72pmxwmgO_7N/s400/Initial+idea+from+Jun.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Bolt idea and concept</td></tr>
</tbody></table>
<br />
After understanding the requirements from the artists, we started exploring various way to drive the LED strips, from simple relays with delays to wireless options. After a few weeks of searches, I finally found an ideal method to drive so many LEDs using <a href="https://en.wikipedia.org/wiki/I%C2%B2C">I<span style="background-color: white; color: #252525; font-family: sans-serif; font-size: 14px; line-height: 22.4px;">nter-Integrated Circuit</span></a> (I2C) protocol with 1 I2C master driving 8 I2C slaves. The idea was to use the delay() to turn on and off the LED strips.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiBhBQqLjdhGCqZpUQeFKvhPn5C7FsGbPncLNjKCUhrcKp4dgSBxIZ_vVLFlckAPsqBB4yqvFc993LDdsSHgNiePY7jZgCDqYn8BM49gKCUty7JmCQB53HJYDLkuXXbI4swZfyOVoDghfL/s1600/I%25C2%25B2C_bus_logo.svg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiBhBQqLjdhGCqZpUQeFKvhPn5C7FsGbPncLNjKCUhrcKp4dgSBxIZ_vVLFlckAPsqBB4yqvFc993LDdsSHgNiePY7jZgCDqYn8BM49gKCUty7JmCQB53HJYDLkuXXbI4swZfyOVoDghfL/s1600/I%25C2%25B2C_bus_logo.svg.png" /></a></div>
The idea was to have eight passive I2C slaves just receiving commands from the I2C master and all my coding would be centralized in the I2C master. This makes controlling the code version easily and any changes does not need to re-flash all the 8 I2C slaves. This was my first time writing my own protocols on top of I2C and I probably would exceed the maximum length of the I2C wiring distance.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghWgGt5DrJXhOVXVFXBURVolkw0rDaDz8YjFhvPdyrxMJ3kBVOYHo5EwD78pGxAyfM2EEKOT7-qJYu3TgZkNo-CYgI1IJbrWyCgQi_ANVWNfTVLpxmdlVV2pYwUAzisMj_Hr8iAMKUMYTM/s1600/2016-01-08+19.41.00.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghWgGt5DrJXhOVXVFXBURVolkw0rDaDz8YjFhvPdyrxMJ3kBVOYHo5EwD78pGxAyfM2EEKOT7-qJYu3TgZkNo-CYgI1IJbrWyCgQi_ANVWNfTVLpxmdlVV2pYwUAzisMj_Hr8iAMKUMYTM/s320/2016-01-08+19.41.00.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">MOSFET on breadboard</td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjO4uJPtH6jH1H4KwLNhDxmxljxvXCiUbmByQjxQl-2nshs7rbo9xKOnzf8WxvZPaK6JBCZ6RfzqQPoewMBBk4ZwGnzeZsxP71UdOixbChXSXJV-WSiQagkTMsKlPLIX-YpN5RiBKaBdf7f/s1600/2016-01-09+17.05.54.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjO4uJPtH6jH1H4KwLNhDxmxljxvXCiUbmByQjxQl-2nshs7rbo9xKOnzf8WxvZPaK6JBCZ6RfzqQPoewMBBk4ZwGnzeZsxP71UdOixbChXSXJV-WSiQagkTMsKlPLIX-YpN5RiBKaBdf7f/s320/2016-01-09+17.05.54.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Driving 2 Arduino via I2C </td></tr>
</tbody></table>
<br />
<br />
The next task was finding a way to drive the 1 meter 12V LED strips and we decided on using MOSFET for this purpose. This was my first time using MOSFET and lots of it, around 80 pieces of MOSFET to drive around 80 pieces of 1m LED strips.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEie92S_ryDyK4hHDIz4b9Fe5mHqgj1vGPKXwXDZRqeAqMQ6fqS7wdZ9E31LUpia6znoL-W3SJJsddrtgHXVkG3BwvnOWFU4JQ4PJ9Vz7RiiMHEndcgXm_BJD2gsQzy8Zbxc4rskx7ZQmmp6/s1600/IMG-20160116-WA0004.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEie92S_ryDyK4hHDIz4b9Fe5mHqgj1vGPKXwXDZRqeAqMQ6fqS7wdZ9E31LUpia6znoL-W3SJJsddrtgHXVkG3BwvnOWFU4JQ4PJ9Vz7RiiMHEndcgXm_BJD2gsQzy8Zbxc4rskx7ZQmmp6/s200/IMG-20160116-WA0004.jpg" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Bolt PCB circuit</td></tr>
</tbody></table>
<br />
Once this test was done, the next step was making a custom PCB for this purpose as soldering 12 LED strips to 8 I2C slaves on a prefboard is not fun at all. With my very limited skills in EagleCAD, I started drawing up the schematic diagram and board drawing using 12 MOSFET driven by 12 pins on the Arduino Nano.<br />
<br />
I usually take weeks and many many revisions to correct many errors before I make them into an actual PCB but this time around, time was not on my side and after 3 revisions within 2 days, I send it to Uncle Chow, 9M2CF to get the PCB done. Just in case the I2C does not work, I added a circuit to use nRF wireless options into the circuit as a backup plan. Always have backup plans.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKCVR_-4MUv9MZIjdtxNvvn2dB-u7Dspouv6omd76q3w2KZVOhyrImlC6v7XMlADQyT8y27fyDoRHXAs9aqNX_LXO16yW2Ejc5bE111S1UJBgwhEud3cqqGvPDdFko6wEcYjY1wdOZLLBh/s1600/IMG-20160118-WA0015.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="220" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKCVR_-4MUv9MZIjdtxNvvn2dB-u7Dspouv6omd76q3w2KZVOhyrImlC6v7XMlADQyT8y27fyDoRHXAs9aqNX_LXO16yW2Ejc5bE111S1UJBgwhEud3cqqGvPDdFko6wEcYjY1wdOZLLBh/s320/IMG-20160118-WA0015.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Film of PCB drawing<span style="text-align: left;"> </span></td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghe91bwVIFExyb4eP0jWNkXz9hg14LjYGxUiDR2Xq9qjKNxypkF37hL77cxJyC_T-2cx3K7Rd1oHWDS2Z4mtUyluvlw3NUaq1ql08dmlHRoWw0C1jw3WHz0anldzcVO1ajMqOkPTpLIPPL/s1600/Bolt+PCBs.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghe91bwVIFExyb4eP0jWNkXz9hg14LjYGxUiDR2Xq9qjKNxypkF37hL77cxJyC_T-2cx3K7Rd1oHWDS2Z4mtUyluvlw3NUaq1ql08dmlHRoWw0C1jw3WHz0anldzcVO1ajMqOkPTpLIPPL/s320/Bolt+PCBs.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Bolt PCB done in 2 days</td></tr>
</tbody></table>
To improve the quality of the PCB traces, uncle Chow 9M2CF, made a film instead of printing the drawing on tracing paper with laser printer. <br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgm8r5Se9ZjohLVDxZnrgcQZ_nP_uiP-3gJ58ORLXWU51IykADPvkZDf1Zwp54jwOKd6N64tLk1D76fTo5JgZzDItbAqhCVUGrQhoLB4m8LO_gwTfU3PqZw6MU7OuIMwGMTgBcDD66dGBsI/s1600/IMG-20160114-WA0010.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgm8r5Se9ZjohLVDxZnrgcQZ_nP_uiP-3gJ58ORLXWU51IykADPvkZDf1Zwp54jwOKd6N64tLk1D76fTo5JgZzDItbAqhCVUGrQhoLB4m8LO_gwTfU3PqZw6MU7OuIMwGMTgBcDD66dGBsI/s320/IMG-20160114-WA0010.jpg" width="240" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrs_1dZKv436gF1OiuXKkH-OyR7PTRjbx4Bc5a4e4lisJisptGbMvqx1UgG0kXXRI1gWbj-aEDhVYwHxE6XAFtfCnWftgaSi_zqgtrVVAPWaR-BStetLXRjEeBayznLXkDGF000g6VHmko/s1600/IMG-20160114-WA0011.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrs_1dZKv436gF1OiuXKkH-OyR7PTRjbx4Bc5a4e4lisJisptGbMvqx1UgG0kXXRI1gWbj-aEDhVYwHxE6XAFtfCnWftgaSi_zqgtrVVAPWaR-BStetLXRjEeBayznLXkDGF000g6VHmko/s320/IMG-20160114-WA0011.jpg" width="240" /></a></div>
<br />
<br />
<br />
Meanwhile doing the PCB, the architecture students from Taylors quickly did a model of the structure using lollipop sticks and lots of hot glue. A lot of work was put into making the frosted tubes while cut and soldered long wires to the 1 meter LED strips.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDVcCg9OzRpptF212V9IiUAGHIWNwHQjUGxQhvV8ZWj1_sVPGySxgP-RIXm8iW_-ePAXEOaiaH0ops1pL9MxYaP3dPZohorBYLoACsVKq8H7sqff2YlLOgt4dau_4x_JGjbnHa7MaQMQCl/s1600/2016-01-18+18.57.51.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDVcCg9OzRpptF212V9IiUAGHIWNwHQjUGxQhvV8ZWj1_sVPGySxgP-RIXm8iW_-ePAXEOaiaH0ops1pL9MxYaP3dPZohorBYLoACsVKq8H7sqff2YlLOgt4dau_4x_JGjbnHa7MaQMQCl/s320/2016-01-18+18.57.51.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Driving the Led with Eduboard</td></tr>
</tbody></table>
<br />
<br />
After fixing many circuit errors on the PCB, it was time to hook it up to the model structure to test the lightning patterns. Referring to the first picture of the actual structure, the model accurately show how it will actually going to look like at night with the LED turned on.<br />
<br />
I find that we actually did this project twice, once on the model and again on the actual structure as we had mini 3 LED strips hook up to the 8 I2C slaves.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWfQ-Sxc5t0FCsyx67Ph2eZ3uaEt9L8vLwSFEQoAoTdMmtPyBTJ69uh_cf6tiK2BsIUfaN148zXKcm4Nmm2CY2h8EJN_fHLhURC-mG4hx6uQsQd9OVIzHnDnj3LuodoFPKet3MPg71Le1A/s1600/2016-01-27+22.06.03.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWfQ-Sxc5t0FCsyx67Ph2eZ3uaEt9L8vLwSFEQoAoTdMmtPyBTJ69uh_cf6tiK2BsIUfaN148zXKcm4Nmm2CY2h8EJN_fHLhURC-mG4hx6uQsQd9OVIzHnDnj3LuodoFPKet3MPg71Le1A/s320/2016-01-27+22.06.03.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">8 I2C slaves fully soldered</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGkotkvyQenYVfPTiq01_tYMeIBV6YenT1eGu9sjswVeq-ByZdGrRfbDS3e-TtjmECpCaTA1mBKjbJrOwklcnjZr1bUcLgZfEdmXzj_7-iuBQzZy4hJAJyeZZle3jb_IjXg_ZePJDKWwms/s1600/2016-01-28+21.43.26.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGkotkvyQenYVfPTiq01_tYMeIBV6YenT1eGu9sjswVeq-ByZdGrRfbDS3e-TtjmECpCaTA1mBKjbJrOwklcnjZr1bUcLgZfEdmXzj_7-iuBQzZy4hJAJyeZZle3jb_IjXg_ZePJDKWwms/s320/2016-01-28+21.43.26.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">8 I2C slaves hook up to the model structure</td></tr>
</tbody></table>
<br />
<br />
Part 2 was posted on hackster.io with videos :-<br />
<a href="https://www.hackster.io/stanleyseow/driving-a-lightning-bolt-art-installation-with-8-i2c-slaves-cc171f">https://www.hackster.io/stanleyseow/driving-a-lightning-bolt-art-installation-with-8-i2c-slaves-cc171f</a><br />
<br />
<br />
Summary Links :-<br />
<br />
<ul style="text-align: left;">
<li><a href="http://www.ilightmarinabay.sg/">http://www.ilightmarinabay.sg/</a></li>
<li><a href="http://www.techbitar.com/how-to-network-many-arduinos-with-sensors-using-i2c.html">Using I2C on Arduino</a></li>
<li>Bolt scale model <a href="https://youtu.be/OLJgjvwqRXo">https://youtu.be/OLJgjvwqRXo</a></li>
<li>Bolt at iLights Marinabay <a href="https://youtu.be/Lv0Bw8gZ6kg">https://youtu.be/Lv0Bw8gZ6kg</a></li>
<li>Bolt at APW Bangsar <a href="https://youtu.be/ZddKPsqFioU">https://youtu.be/ZddKPsqFioU</a></li>
<li><a href="https://www.facebook.com/SVTmaker/">https://www.facebook.com/SVTmaker/</a></li>
<li><a href="https://www.facebook.com/ArduinoEduboard/">https://www.facebook.com/ArduinoEduboard/</a></li>
<li><a href="https://www.facebook.com/wemaker.asia/">https://www.facebook.com/wemaker.asia/</a></li>
</ul>
<div>
<br /></div>
<br />
<br />
<br />
<br />
<br />
<br />
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-27243940186298833282015-10-07T14:53:00.001+08:002015-10-07T14:56:35.472+08:00Uploaded Arduino blink example to a STM32 board - M3S STM32F103ZET6<div dir="ltr" style="text-align: left;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiN9Pu6jUTL9TIxkSmEPgGWegyvfWapRmEZpmrS4LNJkS9gF6NCxXUx4qJBjqZCqg6OmDm0EQ00FhpHsOzk6wDgAQqMQiAJQSdyRJHelA_5Jge9A0ZlCelp3Hr-CJbzIko5z3JQ0SbvtaKP/s1600/2015-10-04+13.40.29.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiN9Pu6jUTL9TIxkSmEPgGWegyvfWapRmEZpmrS4LNJkS9gF6NCxXUx4qJBjqZCqg6OmDm0EQ00FhpHsOzk6wDgAQqMQiAJQSdyRJHelA_5Jge9A0ZlCelp3Hr-CJbzIko5z3JQ0SbvtaKP/s400/2015-10-04+13.40.29.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">M3S STM32F103ZET6</td></tr>
</tbody></table>
<br />
<br />
In my quest for higher speed, more pins, more flash and more RAM for my SVTrackR and yet keeping the cost low, I started exploring other ARM 32-bit boards.<br />
<br />
Before this, I'm already using <a href="http://digistump.com/products/50">DigiX</a> from Digistump, an Arduino DUE compatible board but they are in Mega form factor, kinda big and most important factor for me, high price. The DigiX are 32bit ARM Cortex-M3 microcontroller running at 84Mhz.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="http://digistump.com/wiki/_media/digix/comparison.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="http://digistump.com/wiki/_media/digix/comparison.png" height="640" width="508" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">DigiX Comparison Table</td></tr>
</tbody></table>
<br />
While shopping at taobao, the development boards from STM32 really stand out as they are low cost, lots of pins and similar form factors as Arduino Nano. My most important criteria is that I should not have to port my codes to another platform or learn another new development environment. As a hobbyists, the development software must also be free.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2MWWPGqecE8L5ZoccUHghO3-Oo5yfuTC5bf4RkB5lTWGnAhya8MVEBPptxESssap-AOma52ULfezNSM2PvBqi_jqIsL4TQKnvXGO7Yb9KCrQmC9V1eP5pklxzmWu9n3eCfhfS7LALCn6Q/s1600/STM32.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2MWWPGqecE8L5ZoccUHghO3-Oo5yfuTC5bf4RkB5lTWGnAhya8MVEBPptxESssap-AOma52ULfezNSM2PvBqi_jqIsL4TQKnvXGO7Yb9KCrQmC9V1eP5pklxzmWu9n3eCfhfS7LALCn6Q/s640/STM32.png" width="418" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">STM32 dev board</td></tr>
</tbody></table>
A search for STM32 will results in so many STM32 development boards from any shapes, colours and sizes with price range from RMB25.70 to thousands of RMB. Compared to the above chart for DigiX, the lowest price are 59 in US Dollars.<br />
<br />
All these cheap and powerful boards are no good to me unless they runs on Arduino IDE as my SVTrackR codes uses a lot of open source libraries from GPS, OLED and SoftSerial.<br />
<br />
Some background and history on STM32 on the Arduino platform. It was started very early by leaflabs producing the Maple and Maple Mini back in 2008. You can read all the details are the links provided below. Good thing it was an open source projects so all the work done by them can be taken up some others to continue the development. If this were a closed sourced project, all these would be gone.<br />
<a href="http://www.leaflabs.com/device-details/">http://www.leaflabs.com/device-details/</a><br />
<br />
<br />
Arduino Forum :-<br />
<a href="http://forum.arduino.cc/index.php?topic=265904.0">http://forum.arduino.cc/index.php?topic=265904.0</a> with 2625 messages.<br />
<br />
New STM32duino home :-<br />
<a href="http://www.stm32duino.com/index.php">http://www.stm32duino.com/</a><br />
<br />
Roger Clarke from Melbourne did a great job to continue the developement.<br />
<a href="https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki/Credits-and-history">https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki/Credits-and-history</a><br />
<br />
If you are a newbie and just want to make some STM32 board purchases without reading all the histories, click on <a href="http://www.stm32duino.com/viewtopic.php?f=2&t=94">Guide: "I'm new here - which board should I buy?"</a><br />
<br />
<br />
More pictures of the M3S STM32 development board I purchased. I've also purchased the 3.2" touchscreen TFT that can attached to this board. It also comes in a nice looking plastic box.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTRXLOP8RbKXpW_CWQ3zDyf9DlxFosC6L50glzHZD0r7K84ZoDlVIIvvYl11RzIhB9PxaWGBHYUZKBOW366nwANeqcizaKJuLpHdGMEVefrZfgUOGtGmtaysB6cLmT-5K810CLpgxlSllA/s1600/2015-10-07+14.37.28.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTRXLOP8RbKXpW_CWQ3zDyf9DlxFosC6L50glzHZD0r7K84ZoDlVIIvvYl11RzIhB9PxaWGBHYUZKBOW366nwANeqcizaKJuLpHdGMEVefrZfgUOGtGmtaysB6cLmT-5K810CLpgxlSllA/s320/2015-10-07+14.37.28.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">M3S with box</td></tr>
</tbody></table>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHbZyi3fvXdKWhzCCjiI12lI3Xh-44uw7K6fuv7EKfM73Omr17lceJ4QbSCCconQCAQfKSM1Ehq2HtwKaoXwz3SntcXMv-yd_5aQi_PnMNBtz7bjzA17NYYOR443WLa47TdjMUZwwT9ntU/s1600/M3S+Rotated.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHbZyi3fvXdKWhzCCjiI12lI3Xh-44uw7K6fuv7EKfM73Omr17lceJ4QbSCCconQCAQfKSM1Ehq2HtwKaoXwz3SntcXMv-yd_5aQi_PnMNBtz7bjzA17NYYOR443WLa47TdjMUZwwT9ntU/s320/M3S+Rotated.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">M3S with 3.2" TFT</td></tr>
</tbody></table>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJUgDrMM2AGvHdkqccVbpRBTP1bKEQ8athRVG8ORy8BOM2LaDqPf3k8_UigX5cAxBJ2BAGZvLkw3O1wxQdLHK0v9A9xpYUOtCLqPq6ZlXqTHlMmiA8QzDmkLzIA2-RRZH-7WmuShcMgIDN/s1600/2015-10-04+13.41.11-2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJUgDrMM2AGvHdkqccVbpRBTP1bKEQ8athRVG8ORy8BOM2LaDqPf3k8_UigX5cAxBJ2BAGZvLkw3O1wxQdLHK0v9A9xpYUOtCLqPq6ZlXqTHlMmiA8QzDmkLzIA2-RRZH-7WmuShcMgIDN/s320/2015-10-04+13.41.11-2.jpg" width="271" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">M3S STM32F103ZET6 with 3.2" TFT</td></tr>
</tbody></table>
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqOFmt1gwupYqlw-ypecjWbIX-5PgbwCE0JLjuYNqOL4mTkXfLAquZRloFg5WqRXALPKBXW1m2F2rr1CbZxRk5cwYlZqPiiMv-K0kPDFE8lMJ9ejq-YgdddX_6XeErLrTSs5hmnP4mAn9t/s1600/21978670621_d8a221e2ac_o.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="442" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqOFmt1gwupYqlw-ypecjWbIX-5PgbwCE0JLjuYNqOL4mTkXfLAquZRloFg5WqRXALPKBXW1m2F2rr1CbZxRk5cwYlZqPiiMv-K0kPDFE8lMJ9ejq-YgdddX_6XeErLrTSs5hmnP4mAn9t/s640/21978670621_d8a221e2ac_o.jpg" width="640" /></a></div>
<br />
From the image the seller posted, this board have a lot of items on board like 2 USB port (mine comes with Micro-USB ), DB9 on MAX3232, JTAG, SWD, DS18B20 slots, mini buzzer, nRF24L01 slots, SPI flash on SD, SDIO, 2 LEDs, 4 buttons, BOOT0/BOOT1 jumpers, EEPROM 24C02, OV7670 camera module and other that I could not translate the chinese.<br />
<br />
<br />
<u><b>Summary Links</b></u><br />
<br />
<br />
<ul style="text-align: left;">
<li>STM32duino Forum <a href="http://www.stm32duino.com/index.php">http://www.stm32duino.com/</a></li>
<li> Github <a href="https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki">https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki</a></li>
<li>Arduino Forum <a href="http://forum.arduino.cc/index.php?topic=265904.0">http://forum.arduino.cc/index.php?topic=265904.0</a> </li>
</ul>
<div>
<br /></div>
<br />
<br />
<br />
<br />
<br />
<br />
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-60791550008316414662015-01-30T15:32:00.000+08:002017-03-13T21:53:05.744+08:00Product review of CT-UNO by Cytron<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
I received my <a href="http://cytron.com.my/p-ct-uno">CT-UNO</a>, an UNO board made by Cytron and I'm doing a short review on this board.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicElvMee9P5xibiWyRRNHVJTC-5oeWtlYdLQSYBSHiBjbuObCvtfx2xjxDvKtLIcSTbe0BezIAS3TIkw68i4mqJrAoOwi3KkoPvSL8MyJxcZh17MkwYSXhH3DLNiqEkkWyI-Vyg6yUtrYb/s1600/CT-UNO.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicElvMee9P5xibiWyRRNHVJTC-5oeWtlYdLQSYBSHiBjbuObCvtfx2xjxDvKtLIcSTbe0BezIAS3TIkw68i4mqJrAoOwi3KkoPvSL8MyJxcZh17MkwYSXhH3DLNiqEkkWyI-Vyg6yUtrYb/s1600/CT-UNO.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">CT-UNO</td></tr>
</tbody></table>
<br />
The first question is, why another UNO board ? The answer would be answered in my short review below.<br />
<br />
This CT-UNO was used as part of the starter kit during my Penang Mini Maker Faire Arduino workshop in November.<br />
<br />
The main factor I really like about this is the <b>Micro-USB</b> port instead of the gigantic USB B plug used by regular Arduino UNO boards. With so many USB micro cables all around, having a USB micro is a good decision made by Cytron.<br />
<br />
Secondly, I always like the FTDI USB Serial chip. I'm still using the FTDI Breakout board on a regular basis to program the Arduino Mini Pro ...<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNS7FiWSBDrP80jzm46szfpZMhUZPQhGVcl-KSuxT1XYOi1uaQIlEC94eWdpsHFQexvWayV3-CIiWAmzhEWYP8LBy_ogaOpFP8cLRKjZHQJFxaNToPMYfBVJu-ZTJz-yCyeaqky9YJBoFe/s1600/2015-01-23+00.45.43-1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="237" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNS7FiWSBDrP80jzm46szfpZMhUZPQhGVcl-KSuxT1XYOi1uaQIlEC94eWdpsHFQexvWayV3-CIiWAmzhEWYP8LBy_ogaOpFP8cLRKjZHQJFxaNToPMYfBVJu-ZTJz-yCyeaqky9YJBoFe/s1600/2015-01-23+00.45.43-1.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">FTDI FT23x</td></tr>
</tbody></table>
<br />
On the subject of FTDI board, there is an Android app called <b><a href="https://play.google.com/store/apps/details?id=com.ftdi.j2xx.hyperterm&hl=en">FTDI UART Terminal</a></b> that can accept a FTDI USB-Serial device so that you can plug in the CT-UNO directly to the Android Smatphone and view the Serial Monitor using this app with an USB OTG cable.<br />
<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdn1dg6LEEONR6qfxZ5bQuveZyS2RFKyEGDqesL-hVNwSc9E2tu3xRZiQIILQu7dPh1_SpTFPkAPnQeZIh5eKc1DuFhUMLf3axpPn8ZMEZtVc5EbuvluPPW8z1HTztt40b9MU-yyxva7vL/s1600/2015-01-30+15.19.32.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto; text-align: center;"><img border="0" height="308" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdn1dg6LEEONR6qfxZ5bQuveZyS2RFKyEGDqesL-hVNwSc9E2tu3xRZiQIILQu7dPh1_SpTFPkAPnQeZIh5eKc1DuFhUMLf3axpPn8ZMEZtVc5EbuvluPPW8z1HTztt40b9MU-yyxva7vL/s1600/2015-01-30+15.19.32.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">CT-UNO with FTDI connected to Android Smarthphone</td></tr>
</tbody></table>
<br />
As per most of the newer UNO board, this is a SMD version of the atmega328P, so you cannot remove the IC.<br />
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHpHclV0Kba_Si_Ye5eMDionJWjSM5sh_-IxCM-hkpfsEcxSszS4qsAThVwMBvjtF8Rbpvdo-Jv-Vv4OWtV6UxKfG6Ekk0R2vzYngocjsUaqCkhynZ0HDnFb5MLtkMCdFwFQLRyj-VNU5C/s1600/2015-01-23+00.46.52-1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="273" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHpHclV0Kba_Si_Ye5eMDionJWjSM5sh_-IxCM-hkpfsEcxSszS4qsAThVwMBvjtF8Rbpvdo-Jv-Vv4OWtV6UxKfG6Ekk0R2vzYngocjsUaqCkhynZ0HDnFb5MLtkMCdFwFQLRyj-VNU5C/s1600/2015-01-23+00.46.52-1.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">ATMEGA328 SMD</td></tr>
</tbody></table>
<div>
<br />
Another thing I really like about this board is that you can directly solder wires to the pins below the board for permanent connections. Here are some pictures of the CT-UNO on the sides and below the board.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgZ8iAttTM-XxCjiWiWxv8KUU2_9fPoBI1ZrtTQR18_1Xr4JeQkjtfFtVM9aS4HfSaLvfkaRyTFzU6NraNU7xacE5OZolirCge7RjDXvzQyDdcDFElDie45Qjgb28tVCnFBSdGPeQFn9Ol/s1600/2015-01-23+00.48.44.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="237" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgZ8iAttTM-XxCjiWiWxv8KUU2_9fPoBI1ZrtTQR18_1Xr4JeQkjtfFtVM9aS4HfSaLvfkaRyTFzU6NraNU7xacE5OZolirCge7RjDXvzQyDdcDFElDie45Qjgb28tVCnFBSdGPeQFn9Ol/s1600/2015-01-23+00.48.44.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Sides holes</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6GoARp4Doe3jLmYIZBtcCs5jg519981cexuwA3WqrKAzLw1YBogAfdzkZ5_cS-FvLPsHht1P_w2E3ScDC_-XMR3aORZXA-L9dCdTfV3sUQRdlh1Ib-xGGwrw1T4OjYkdz97luVnkF-KTJ/s1600/2015-01-23+00.48.52.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="123" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6GoARp4Doe3jLmYIZBtcCs5jg519981cexuwA3WqrKAzLw1YBogAfdzkZ5_cS-FvLPsHht1P_w2E3ScDC_-XMR3aORZXA-L9dCdTfV3sUQRdlh1Ib-xGGwrw1T4OjYkdz97luVnkF-KTJ/s1600/2015-01-23+00.48.52.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Side holes</td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV9wcb7iV-4n56ia2R_qhJYnIMwBOPWlEl0QAbLnQ49feCCR_ubqbW0Yn96xwLiouclmzWiq3mdAok_nA1eaI1lvp6TXPKx6gFvf8pEkwRz6yzJYnZLFQkkEkXDNwjIxAiExopYEVV_qiy/s1600/2015-01-30+15.12.15.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV9wcb7iV-4n56ia2R_qhJYnIMwBOPWlEl0QAbLnQ49feCCR_ubqbW0Yn96xwLiouclmzWiq3mdAok_nA1eaI1lvp6TXPKx6gFvf8pEkwRz6yzJYnZLFQkkEkXDNwjIxAiExopYEVV_qiy/s1600/2015-01-30+15.12.15.jpg" width="237" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">CT-UNO back</td></tr>
</tbody></table>
Last but not least, this board is "Made in Malaysia", so please support Malaysian made products.</div>
<div>
The only thing I didn't like about this board is the white colour of the PCB silkscreen but this is my personal opinion.<br />
<br />
Overall, it is a very usable UNO board and very good to view Serial Monitor on Android Smartphone that support USB OTG cable.<br />
<br />
This product is on <a href="http://cytron.com.my/p-ct-uno">Cytron online store</a>.</div>
<div>
<br /></div>
<div>
A special thanks to <a href="http://vinduino.blogspot.com/">Vincent Kok</a> for sending me this CT-UNO for review.</div>
<div>
<br /></div>
<div>
Summary Links :-</div>
<div>
<br /></div>
<div>
<ul style="text-align: left;">
<li><a href="http://tutorial.cytron.com.my/2014/11/04/introducing-ct-uno/">Cytron CT-UNO tutorial site</a></li>
<li><a href="http://cytron.com.my/p-ct-uno">Cytron CT-UNO online store</a></li>
<li><a href="https://play.google.com/store/apps/details?id=com.ftdi.j2xx.hyperterm&hl=en">FTDI UART Terminal on Google Play</a> </li>
</ul>
<div>
<br /></div>
</div>
<div>
<br />
<br /></div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-45752488044386289862014-08-14T13:39:00.000+08:002014-08-25T22:45:13.150+08:00Arduino UNO nRF Adapter <div dir="ltr" style="text-align: left;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP9LktSwSu8eRaktoW-1XhIo94b209Bnu4-y15FnvAI81vGKBuA1puTgTRWdhPY7dwi-SKQkWVjvq4bCXKOmYfAZrrhXGWMeHwbClmFO5_QptQhjwuF5w8Jcddpk2YvYnM6xs7Y2LfzjZE/s1600/nRF+adapter+DOF.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP9LktSwSu8eRaktoW-1XhIo94b209Bnu4-y15FnvAI81vGKBuA1puTgTRWdhPY7dwi-SKQkWVjvq4bCXKOmYfAZrrhXGWMeHwbClmFO5_QptQhjwuF5w8Jcddpk2YvYnM6xs7Y2LfzjZE/s1600/nRF+adapter+DOF.jpg" height="640" width="243" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapters</td></tr>
</tbody></table>
<br />
<br />
This blog entry is about my process in making an Arduino UNO nRF24L01 Adapter from start to the current version... ( If you would like to order a pair of the nRF Adapter, please click on <a href="http://arduino-for-beginners.blogspot.com/p/nrf-adapter-for-sale.html">nRF Adapter for Sale</a>. )<br />
<div>
<br /></div>
<br />
Do you face the problems of messy jumpers cables like below when using nRF24L01+ with an Arduino UNO on a breadboard ??<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz3isp-mo_vxpeLDfPZ_ZOdl2jMbf-FNXoDUVOv8CPlEjpXr_vWNq7xQx_j04kU2bXtiQ-IpU6ycvOLF8Ydv6XpS2IueSPFhvONwAG9FvO8RA7B49P5Of3MLTVD2dwZeugfpvcdzjxvLbX/s1600/nRF+with+messy+wirings+on+BB.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz3isp-mo_vxpeLDfPZ_ZOdl2jMbf-FNXoDUVOv8CPlEjpXr_vWNq7xQx_j04kU2bXtiQ-IpU6ycvOLF8Ydv6XpS2IueSPFhvONwAG9FvO8RA7B49P5Of3MLTVD2dwZeugfpvcdzjxvLbX/s1600/nRF+with+messy+wirings+on+BB.jpg" height="290" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 on breadboard</td></tr>
</tbody></table>
Or need to DIY your own adapter to sit in between the breadboard groove like the picture below ?<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXBGGzniSzLS1pRy7wArdBa-8IXAyd523Jg5lvwd_7zq_qwt59cZrk9mAU5kBnftozyhZoarjSJmZgpN1oXizyN6V3v8SnD1JK_5NMpySqm9RkUedV_GtBFeC8VJZKx0Vs6mUCEeiBu8Tg/s1600/IMG_20140825_224036_1408977663934.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXBGGzniSzLS1pRy7wArdBa-8IXAyd523Jg5lvwd_7zq_qwt59cZrk9mAU5kBnftozyhZoarjSJmZgpN1oXizyN6V3v8SnD1JK_5NMpySqm9RkUedV_GtBFeC8VJZKx0Vs6mUCEeiBu8Tg/s1600/IMG_20140825_224036_1408977663934.jpg" height="286" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">DIY nRF for breadboard</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy3qq3Y-SDCXfdirQzyXW8VSlqhJXEXnFyfzIwg9TyUV0DYW_MkdoL9hl1jj73aM60ugj5YoFGEAsxaYiUcKGM7Nxg6THVXV5eKo4rUEBpTRFg2d5zKHNqzn1Vk_hCcrICOGPSnwAP_BF5/s1600/nRF+with+messy+wirings.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy3qq3Y-SDCXfdirQzyXW8VSlqhJXEXnFyfzIwg9TyUV0DYW_MkdoL9hl1jj73aM60ugj5YoFGEAsxaYiUcKGM7Nxg6THVXV5eKo4rUEBpTRFg2d5zKHNqzn1Vk_hCcrICOGPSnwAP_BF5/s1600/nRF+with+messy+wirings.jpg" height="320" width="299" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRf24L01 on Arduino UNO</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ0ojAIF-upLyzOb21mKkMsse5c0FxyK-SjMqp1FciwPLgznK1VeGeyGkk1fX8k0FydShcVTSrrx9C7olBDyF86AcVQo7LGoXk3IFVA3lh2Z3yL5XFYDnk3SSqxPsmuuTijXJzauv_kWf8/s1600/nRF+with+messy+wirings+Ext+Antenna+Version.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZ0ojAIF-upLyzOb21mKkMsse5c0FxyK-SjMqp1FciwPLgznK1VeGeyGkk1fX8k0FydShcVTSrrx9C7olBDyF86AcVQo7LGoXk3IFVA3lh2Z3yL5XFYDnk3SSqxPsmuuTijXJzauv_kWf8/s1600/nRF+with+messy+wirings+Ext+Antenna+Version.jpg" height="320" width="184" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 with external antenna</td></tr>
</tbody></table>
<br />
With this problem, I started my journey to solve this problem with a <b>nRF Adapter</b>... below are pictures of the evolution of the adapter.<br />
<br />
<u>Perfboard first version</u><br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><br />
<span style="text-align: left;">The orange and white wires fly across the UNO for the 3.3V power needed by the nRF24L01 radio.</span><br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBazjihRe_LisREW7uIMLaKr6alxoBTOFLUwl9Rd3BMX03xUXDLAfzQl3xiDGf_703UUkwWqK9DRjdX8GQiD4a5CkM-K7QpD1z8Sop_-Rvbw4ZMGOd6moHlf5m0W31bDE87wdcUEWvZYJc/s1600/DIY+nRF+Adapter+back-wiring.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBazjihRe_LisREW7uIMLaKr6alxoBTOFLUwl9Rd3BMX03xUXDLAfzQl3xiDGf_703UUkwWqK9DRjdX8GQiD4a5CkM-K7QpD1z8Sop_-Rvbw4ZMGOd6moHlf5m0W31bDE87wdcUEWvZYJc/s1600/DIY+nRF+Adapter+back-wiring.jpg" height="320" width="309" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF adpater with bottom wiring</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbG7JQUdEamwu09W2nN_3uEOK_YbC-bp3fUp-DImFdtbs9dBEBqrEj0UGP0Z56jR2Xou50keCeWOhALYKV35Ku3hUQSs4niQl3pbpCQ9N0PrJfCqWRpRAC-8AHLNwa5qNWNGcoBZZsmSma/s1600/DIY+nRF+Adapter+front-wiring.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbG7JQUdEamwu09W2nN_3uEOK_YbC-bp3fUp-DImFdtbs9dBEBqrEj0UGP0Z56jR2Xou50keCeWOhALYKV35Ku3hUQSs4niQl3pbpCQ9N0PrJfCqWRpRAC-8AHLNwa5qNWNGcoBZZsmSma/s1600/DIY+nRF+Adapter+front-wiring.jpg" height="291" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF adapter with top wiring</td></tr>
</tbody></table>
<br />
<u>PCB Version with 3.3V LDO ( PCB designed by ZXLee )</u><br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSj1yJWSU04bJwfhJp3HyETYvxiUbz78WWA6grNRAqitUH8PHT25lM_i0pgEg4lw6JdvyBi4PQVMRDzShzhrV9R7QErzJ9J3DklBCbtyt3oT-bAUBUiOr1sXGMRP9ozgKEYXJ3Xfg-MFzI/s1600/DIY+nRF+Adapter+1+PCB.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSj1yJWSU04bJwfhJp3HyETYvxiUbz78WWA6grNRAqitUH8PHT25lM_i0pgEg4lw6JdvyBi4PQVMRDzShzhrV9R7QErzJ9J3DklBCbtyt3oT-bAUBUiOr1sXGMRP9ozgKEYXJ3Xfg-MFzI/s1600/DIY+nRF+Adapter+1+PCB.jpg" height="320" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF20L01 adapter DIY PCB 1</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMUlm8QkmJ5_IK98P6XWSknotHl__bdBgbof7spzuY_X8_p5dm7G16xHeFZN-IKy2ytpNjchkBFiqVM6V9ee98mS4MQEyg2f03mW0TyFpXWXtxdCfiZ0XqRq2Kmj33dko9Ep1coCdKSae5/s1600/DIY+nRF+Adapter+1-1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMUlm8QkmJ5_IK98P6XWSknotHl__bdBgbof7spzuY_X8_p5dm7G16xHeFZN-IKy2ytpNjchkBFiqVM6V9ee98mS4MQEyg2f03mW0TyFpXWXtxdCfiZ0XqRq2Kmj33dko9Ep1coCdKSae5/s1600/DIY+nRF+Adapter+1-1.jpg" height="310" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter DIY PCB 1</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQ6s5JxZD0JY7iC1VqaNB3QeVegsG7YMObp3SGZQbT9olK1Gh-eNW_mUJqokVGf7SDhLJ-nPeOAPhmlbNJX56lUIyX5H0uybaLAfRiZDnx_4zAMAy80jRYC8HUudoh8YMkEy3Vn72yS513/s1600/DIY+nRF+Adapter+1-2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQ6s5JxZD0JY7iC1VqaNB3QeVegsG7YMObp3SGZQbT9olK1Gh-eNW_mUJqokVGf7SDhLJ-nPeOAPhmlbNJX56lUIyX5H0uybaLAfRiZDnx_4zAMAy80jRYC8HUudoh8YMkEy3Vn72yS513/s1600/DIY+nRF+Adapter+1-2.jpg" height="306" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter DIY PCB 1</td></tr>
</tbody></table>
<br />
<br />
<u>PCB Version 2 with 2 buttons ( PCB designed by Vintronics )</u><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMQ6ju5qQbSrtYdNVqz-NSaGnXguDoAbqxpIkC2z6I9AgF0kN-roiw66Ob0y9tFgi6gePiEwgX8zbEDZMxircG5rZM7ziW3ox97D-93CQ_4PZz6jpPTba2hiXNw08-vjkF9xDT_PgB9vyj/s1600/DIY+nRF+adapter2+back.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMQ6ju5qQbSrtYdNVqz-NSaGnXguDoAbqxpIkC2z6I9AgF0kN-roiw66Ob0y9tFgi6gePiEwgX8zbEDZMxircG5rZM7ziW3ox97D-93CQ_4PZz6jpPTba2hiXNw08-vjkF9xDT_PgB9vyj/s1600/DIY+nRF+adapter2+back.jpg" height="306" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter DIY PCB 2 bottom</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEige4osRB9XbPKx6fNQIKeOst5KPaUJyQkq8CCTmLoARuphkGFJ38TQ2gVs5LTQx0XqQzfj5Kd1WvgxuIxzfVZT4xqAlFtWH0p7GlcjTh72NaUGhCV-0JX83P0ppMbVHkB6aODttb2TXxHk/s1600/DIY+nRF+adapter2+front.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEige4osRB9XbPKx6fNQIKeOst5KPaUJyQkq8CCTmLoARuphkGFJ38TQ2gVs5LTQx0XqQzfj5Kd1WvgxuIxzfVZT4xqAlFtWH0p7GlcjTh72NaUGhCV-0JX83P0ppMbVHkB6aODttb2TXxHk/s1600/DIY+nRF+adapter2+front.jpg" height="300" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter DIY PCB 2 top</td></tr>
</tbody></table>
<br />
We took the above design, dropped the 2 buttons , fine tuned it and made the final version for factory PCB. This is a joint collaboration project between <i>Arduino for Beginners</i> blog and <i>Vintronics</i> ..<br />
<br />
<u>Final factory made PCB version ( designed by Vintronics & myself )</u><br />
<br />
This version have a AMS1117-3.3 at the bottom of the PCB.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0x8EbYZHiFvwSWymJPggxXcAsKNjz2bGykVvX9pBTwBI51-RLGt-lFjHA2pMzrIV7WXBKwmeQt6X1cNAFt__gs3hyphenhyphen4GPW-ngGbr2851f1rQLJTjpRmBK2acvfZzS1hq2s5MREfz8f09rM/s1600/nRF+Adapter+no+headers2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0x8EbYZHiFvwSWymJPggxXcAsKNjz2bGykVvX9pBTwBI51-RLGt-lFjHA2pMzrIV7WXBKwmeQt6X1cNAFt__gs3hyphenhyphen4GPW-ngGbr2851f1rQLJTjpRmBK2acvfZzS1hq2s5MREfz8f09rM/s1600/nRF+Adapter+no+headers2.jpg" height="320" width="311" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter PCB front</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmfQ1UOjn46XMlA0fn4Wa4g-jvbW5nSvFigJMvce_YK8Fm25wL_DhBzqd6FiobuE1tMpGO_smh3CDFkWykZ58mbNqKF9N5IWkkCFnuNEZdigZo5c1Lcj_VdDNMTc6Y7HhNZAHdupLyv87o/s1600/nRF+Adapter+no+headers.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmfQ1UOjn46XMlA0fn4Wa4g-jvbW5nSvFigJMvce_YK8Fm25wL_DhBzqd6FiobuE1tMpGO_smh3CDFkWykZ58mbNqKF9N5IWkkCFnuNEZdigZo5c1Lcj_VdDNMTc6Y7HhNZAHdupLyv87o/s1600/nRF+Adapter+no+headers.jpg" height="309" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter PCB back</td></tr>
</tbody></table>
<br />
<u>Final version with headers soldered on PCB</u><br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHsKq41HDVUO5JXIFwCQzULUA5SfUvere9-10IWk_gSwfvISRRWV7jfIDbR-qxwKB8_NTnVPNhE2INUuP0Nx-A3_ydWZDfvfpFF8mgBed3B8ugVvp8FuT-BbOV0u1IDdAhCXEUGwswmL6J/s1600/nRF+Adapter2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHsKq41HDVUO5JXIFwCQzULUA5SfUvere9-10IWk_gSwfvISRRWV7jfIDbR-qxwKB8_NTnVPNhE2INUuP0Nx-A3_ydWZDfvfpFF8mgBed3B8ugVvp8FuT-BbOV0u1IDdAhCXEUGwswmL6J/s1600/nRF+Adapter2.jpg" height="320" width="319" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter PCB front</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC8LG1-4jfKJClgeZ5G3fBmvuZ_HDf7k6H8JGQo7PZVrIPmptyRm-kHyv4VZAdQTyZ8KuY-54sF4A9fFfow2-Cdy3YDBbP4uN_H_aDaDCm392NZol9YTOOfcIMbXbNs9LaZhEedWtcaja5/s1600/nRF+Adapter1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC8LG1-4jfKJClgeZ5G3fBmvuZ_HDf7k6H8JGQo7PZVrIPmptyRm-kHyv4VZAdQTyZ8KuY-54sF4A9fFfow2-Cdy3YDBbP4uN_H_aDaDCm392NZol9YTOOfcIMbXbNs9LaZhEedWtcaja5/s1600/nRF+Adapter1.jpg" height="299" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter PCB back</td></tr>
</tbody></table>
<br />
<br />
<u>nRF24L01 Adapter with radio</u><br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9K7ZFBolXaYLs51VyKb_nGdeqNrLtI_fa3JOkOs7LVh-_h6TVc9pVY03mZ307ocTBQIParQulK1NcodIcI7jq1q0ZW5XJb26tExeR8TtbiPFTMn4BArS3FTi5yxVs8lX9s1XhQY5z7Pki/s1600/nRF+adapter+with+radio1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9K7ZFBolXaYLs51VyKb_nGdeqNrLtI_fa3JOkOs7LVh-_h6TVc9pVY03mZ307ocTBQIParQulK1NcodIcI7jq1q0ZW5XJb26tExeR8TtbiPFTMn4BArS3FTi5yxVs8lX9s1XhQY5z7Pki/s1600/nRF+adapter+with+radio1.jpg" height="314" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter with radio</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKjLge0EmzxwKlcC8y-R_g9mXKdEdQ0jztB540btfG6uh4kBZifsJSLrjAgfj2LWtBgpnW-Kt-95nznEmWibkpOCi9HrLrY1akTJtjoQuurSZO_fOjfxC_oePqdDjKzQe8MVxpAx_jG4X1/s1600/nRF+adapter+with+radio2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKjLge0EmzxwKlcC8y-R_g9mXKdEdQ0jztB540btfG6uh4kBZifsJSLrjAgfj2LWtBgpnW-Kt-95nznEmWibkpOCi9HrLrY1akTJtjoQuurSZO_fOjfxC_oePqdDjKzQe8MVxpAx_jG4X1/s1600/nRF+adapter+with+radio2.jpg" height="320" width="305" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 adapter PCB with radio</td></tr>
</tbody></table>
<br />
<u>nRF Adapter on Arduino UNO</u><br />
<div>
<br />
The nRF adapter uses pin 8 for CE, pin 9 for CSN and pin 10 for Vcc (5V to 3.3V with the AMS1117-3.3V VR )<br />
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM0rqSv3OMr-q3yQOdtngjRF0Ms4qCTe5lq8G1opBiJiEN0nyJkzxQLq8Tf3MCp3vu6RBENiHXVXJM1Zh9j7VcbAqt0bevzQy3uIrITT7viU9-vcz4Nwb0UNCyNjfV9jmt7rvNIjiJmqzu/s1600/nRF+Adapter+on+UNO1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM0rqSv3OMr-q3yQOdtngjRF0Ms4qCTe5lq8G1opBiJiEN0nyJkzxQLq8Tf3MCp3vu6RBENiHXVXJM1Zh9j7VcbAqt0bevzQy3uIrITT7viU9-vcz4Nwb0UNCyNjfV9jmt7rvNIjiJmqzu/s1600/nRF+Adapter+on+UNO1.jpg" height="320" width="306" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF Adapter on Arduino UNO</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLSiP33a_OJdT-_syam2iDQTvVqjPjeQIwu9S7XE80uaQGHOI0fs_oSnF5Jfxo4x1syCqOtfNhL1PP6BtivmRwXSQyKsKACKM5msDAbkV4rK5RSgjQkpahHDDz3sGlHoeh9U4VJlAwUk_D/s1600/nRF+Adapter+on+UNO2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLSiP33a_OJdT-_syam2iDQTvVqjPjeQIwu9S7XE80uaQGHOI0fs_oSnF5Jfxo4x1syCqOtfNhL1PP6BtivmRwXSQyKsKACKM5msDAbkV4rK5RSgjQkpahHDDz3sGlHoeh9U4VJlAwUk_D/s1600/nRF+Adapter+on+UNO2.jpg" height="305" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td class="tr-caption" style="font-size: 13px;">nRF Adapter on Arduino UNO</td></tr>
</tbody></table>
</td></tr>
</tbody></table>
<div>
All the nRF adapters together ..</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1frfYyD-6ngboGfQT_GZSapYDEDFxm_0f_0Q0QXP68aGYawaT5e6Ppc9VOUWTx8tJzeo5nMLe_1nuji6MV-o61U6oduHo4oqfgYeX_dGIVxZExqWif7edQ9J11h40UlN2jJQsZqm24pPN/s1600/All+Adapters.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1frfYyD-6ngboGfQT_GZSapYDEDFxm_0f_0Q0QXP68aGYawaT5e6Ppc9VOUWTx8tJzeo5nMLe_1nuji6MV-o61U6oduHo4oqfgYeX_dGIVxZExqWif7edQ9J11h40UlN2jJQsZqm24pPN/s1600/All+Adapters.JPG" height="209" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">All nRF24L01 adapters</td></tr>
</tbody></table>
<div>
<div>
<br /></div>
<div>
If you would like to order a pair of the nRF Adapter, please click on <a href="http://arduino-for-beginners.blogspot.com/p/nrf-adapter-for-sale.html">nRF Adapter for Sale</a>.<br />
<br />
Summary Links :-<br />
<br />
- My RF24 repo fork with support of the nRF Adapter : <a href="https://github.com/stanleyseow/RF24">https://github.com/stanleyseow/RF24</a><br />
- Test your nRF24L01 transfer speed <a href="https://github.com/stanleyseow/RF24/tree/master/examples/Transfer">https://github.com/stanleyseow/RF24/tree/master/examples/Transfer</a><br />
- More info on nRF24L01 <a href="http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo">http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo</a><br />
<br /></div>
<div>
<br />
<br /></div>
</div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-41720384308836469832014-05-12T19:12:00.001+08:002014-05-12T20:46:27.993+08:00TinySafeBoot on attiny84<div dir="ltr" style="text-align: left;" trbidi="on">
The <a href="http://jtxp.org/tech/tinysafeboot_en.htm">TinySafeBoot</a>, this is a small bootloader that will take up 550 bytes so you are left with around 7450 bytes of sketch left. Let me explain a bit of details and instructions as the TinySafeBoot site were not catering to Arduino users in terms of step by steps instructions for beginners.<br />
<br />
The reason to install this TinySafeBoot is pretty obvious, you can directly program the attiny84 similar like Arduino UNO using on Serial Tx/Rx pins instead of using the <a href="https://learn.adafruit.com/usbtinyisp">UsbTinyISP</a>. I am connecting a FTDI USB Serial module for both programming and debugging functions using <TinyDebugSerial.h>.<br />
<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNUGoMDGHUHlfwNb-mTnmlEfWUgoaQMqHUNNhaEA_lSzWH77J93hXEEV3rIUrr-hJDnD8WHV8vARpGbjsX1w9xOJ2iino6sJRUQOFJU5mB1-eLNneMuCDS8CBiIpChjwpuZaQReCg1NTro/s1600/microMsg.1398782846387.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNUGoMDGHUHlfwNb-mTnmlEfWUgoaQMqHUNNhaEA_lSzWH77J93hXEEV3rIUrr-hJDnD8WHV8vARpGbjsX1w9xOJ2iino6sJRUQOFJU5mB1-eLNneMuCDS8CBiIpChjwpuZaQReCg1NTro/s1600/microMsg.1398782846387.jpg" height="400" width="225" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Attiny84 with FTDI</td></tr>
</tbody></table>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
The above image is my prototype attiny84 with FTDI module Serial Debug / Monitor to pin PB0(tx) and PB1(rx).<br />
<br />
The steps are as follows :-<br />
<br />
1. Download TinySafeBoot from <a href="http://jtxp.org/tech/tinysafeboot_en.htm">http://jtxp.org/tech/tinysafeboot_en.htm</a><br />
<br />
2. Generate the bootloader hex for attiny84 :-<br />
<br />
<span style="background-color: whitesmoke; color: #666666; font-family: 'TyponineSans Regular 18', 'Lucida Grande', Lucida, Verdana, sans-serif; font-size: 15.199999809265137px; line-height: 21.117717742919922px;">tsb tn84 b1b0</span><span style="background-color: whitesmoke; color: #666666; font-family: 'TyponineSans Regular 18', 'Lucida Grande', Lucida, Verdana, sans-serif; font-size: 15.199999809265137px; line-height: 21.117717742919922px;"> </span> ( b1 = pin PB1/rx b0 = pin PB0/tx )<br />
<br />
3. Burn the above generated hex bootloader to the attiny84<br />
<br />
<span style="background-color: whitesmoke; color: #666666; font-family: 'TyponineSans Regular 18', 'Lucida Grande', Lucida, Verdana, sans-serif; font-size: 15.199999809265137px; line-height: 21.117717742919922px;">avrdude -c usbtiny -p t84 -U flash:w:<tsb_tn84_b1b0_20140414.hex></span><br />
<br />
4. Set the fuse bits on attiny :<br />
<br />
<span style="background-color: whitesmoke; color: #666666; font-family: 'TyponineSans Regular 18', 'Lucida Grande', Lucida, Verdana, sans-serif; font-size: 15.199999809265137px; line-height: 21.117717742919922px;">avrdude -c usbtiny -p t84 -U efuse:w:0xFE:m ( Turn on SELFPRGEN bits )</span><br />
<span style="background-color: whitesmoke; color: #666666; font-family: 'TyponineSans Regular 18', 'Lucida Grande', Lucida, Verdana, sans-serif; font-size: 15.199999809265137px; line-height: 21.117717742919922px;"><br /></span>
5. To get the status of the bootloader, RESET the attiny84, wait for 2-3 secs and execute the commands :-<br />
<br />
<b>tsb COM5 i</b> ( get current status from the bootloader )<br />
<br />
or<br />
<br />
6. To burn a hex to the attiny84, RESET the attiny84, wait for 2-3 secs and execute the commands :-<br />
<br />
<b>tsb COM5 fw blink84.hex</b><br />
<br />
( You can compile the hex under Arduino UNO by choosing the board <b>attiny84 @ 8Mhz</b> and copy the hex files to the tsb folder. To see where the hex is compiled and located, Under Arduino IDE Preferences, Click on "Show verbose output during [x] compilation" )<br />
<br />
Final product on Tiny nRF V1.0<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipVCaGPhtIXyQxoUhHtb1W5Gga1r8qPDtoR6ceHfiePPBCo-_c5vO6JL-vD07rzLIc2OU074JcpBjQr7z3b0q3D-Q0lWEvhczZt-vAL8-WYi-y4pF3JhffMd9b2BK7fgG78xmRi5kkEvUB/s1600/Photo+23-02-2014+01+21+27.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipVCaGPhtIXyQxoUhHtb1W5Gga1r8qPDtoR6ceHfiePPBCo-_c5vO6JL-vD07rzLIc2OU074JcpBjQr7z3b0q3D-Q0lWEvhczZt-vAL8-WYi-y4pF3JhffMd9b2BK7fgG78xmRi5kkEvUB/s1600/Photo+23-02-2014+01+21+27.jpg" height="400" width="298" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Tiny nRF V1.0</td></tr>
</tbody></table>
<br />
<br />
Summary Links :-<br />
<br />
- <a href="http://jtxp.org/tech/tinysafeboot_en.htm">TinySafeBoot</a><br />
- Attiny84 Fuse calculator <a href="http://eleccelerator.com/fusecalc/fusecalc.php?chip=attiny84">http://eleccelerator.com/fusecalc/fusecalc.php?chip=attiny84</a><br />
- Arduino Tiny codes <a href="https://code.google.com/p/arduino-tiny/">https://code.google.com/p/arduino-tiny/</a><br />
- Arduino Forum on attiny84/85 <a href="http://forum.arduino.cc/index.php?topic=115822.msg1698859#msg1698859">http://forum.arduino.cc/index.php?topic=115822.msg1698859#msg1698859</a><br />
<br />
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-35455834212445613772013-11-24T17:58:00.000+08:002013-11-24T23:11:08.279+08:00Stellaris Launchpad with nRF24L01+ communicating with Arduino UNO<div dir="ltr" style="text-align: left;" trbidi="on">
Firstly I would like to thanks <a href="http://uk.farnell.com/">Premier Farnell (Element14)</a> for sending me a sample <a href="http://uk.farnell.com/texas-instruments/">Texas Instruments</a>'s <a href="http://uk.farnell.com/texas-instruments/ek-lm4f120xl/lm4f120-stellaris-launch-pad-eval/dp/2192061">Stellaris Launchpad</a>. This development board platform from Texas Instruments is running on ARM Cortex-M4F based microcontrollers. The diagram below is directly taken from the datasheet showing all the pins, functions and other connectors.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi16-S8N3s4och-YaQdlO43udecROx6HYKN28BxxZ7aehfuf1u2GwD48nGNpnr3pQzM9JJpk5aaRhNSlincq_43EfTMqi1SfgK9jMAUHZHc9sv_Lvn24lerD6q44OKxST900Bt90rxFIbD5/s1600/StellaPad+Diagram.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="268" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi16-S8N3s4och-YaQdlO43udecROx6HYKN28BxxZ7aehfuf1u2GwD48nGNpnr3pQzM9JJpk5aaRhNSlincq_43EfTMqi1SfgK9jMAUHZHc9sv_Lvn24lerD6q44OKxST900Bt90rxFIbD5/s320/StellaPad+Diagram.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Stellaris Launchpad</td></tr>
</tbody></table>
As I have lots and lots of female-female jumper cables, I kinda like the male headers on the Stellaris Launchpad. As this is not a review on the Stellaris Launchpad, I shall skip most of the features of the board and jump straight into the software needed to run this board.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUFhj7LxFpL1ksTtW8m58JUkiE4oz-nIKQkYe56O5By45Gyw7sW5RhFiGUfr_kHYyloN7bcdVnmNby9iP8rbb52DjbkQU3RbpjFd3viPO2rx5T2raVVwBbkggh6jb2USqP7mbODm2XDi0Y/s1600/Energia+Logo.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="127" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUFhj7LxFpL1ksTtW8m58JUkiE4oz-nIKQkYe56O5By45Gyw7sW5RhFiGUfr_kHYyloN7bcdVnmNby9iP8rbb52DjbkQU3RbpjFd3viPO2rx5T2raVVwBbkggh6jb2USqP7mbODm2XDi0Y/s320/Energia+Logo.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Energia</td></tr>
</tbody></table>
<br />
<br />
Similar to Arduino, Stellaris have <a href="http://energia.nu/">Energia</a>, an open source multiple platform software development environment. You can refer to <a href="http://energia.nu/Guide_StellarisLaunchPad.html">Stellaris LaunchPad Guide</a> for all the pins and functions.<br />
<br />
After installing the Energia development environment, it looks very similar like Arduino except it is red in colour like the Stellaris board.<br />
<br />
So the first thing to do is to blink those three built-in RGB LED on the board itself and it looks very nice and useful to have RGB LED on the board itself. The second project that came into my mind is to get the Nordic nRF24L01+ radios working with this launchpad.<br />
<br />
With some googling, I found the spirilis had written an Energia nRF24L01 library on the MSP430 (43oh.com) <a href="http://forum.43oh.com/topic/3237-energia-library-nordic-nrf24l01-library/">forum</a>. There is also a <a href="https://github.com/spirilis/Enrf24">github repo</a> from spirilis that I downloaded and install the Enrf24 library similar to installing Arduino libraries. This is great, no steep learning curve.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcLgr6U8JlgGoQmPq7GnDMnG7J-6JdXJzCuBnkmsPh0Gq8QBYPvr3G3ytNBWdGHpPrDpsJHglY74Sr9EeWDx5gW-P1EMc9ru25_r4V2Nj7Z8CCcI0Z_AAzVRs1JF_rfZMa6DrXImrsWzSm/s1600/nRF24L01+on+StellaPad.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="249" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcLgr6U8JlgGoQmPq7GnDMnG7J-6JdXJzCuBnkmsPh0Gq8QBYPvr3G3ytNBWdGHpPrDpsJHglY74Sr9EeWDx5gW-P1EMc9ru25_r4V2Nj7Z8CCcI0Z_AAzVRs1JF_rfZMa6DrXImrsWzSm/s320/nRF24L01+on+StellaPad.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01 Stellaris Launchpad</td></tr>
</tbody></table>
<br />
<br />
While loading the Enrf24 Tx example, I notice it was written for MSP430 launchad pins instead of Stellaris launchpad pins, so the pin name needed to be changed to matched the Stellaris pin names.<br />
<br />
The changes made as follows :-<br />
<br />
<i><span style="color: #38761d;">// PE_1 = CE, PE_2 = CSN, PE_3 = IRQ</span></i><br />
<i><span style="color: #38761d;">// SPI pins : SCK = PB_4 , MOSI = PB_7, MISO = PB_6</span></i><br />
<i><span style="color: #38761d;">Enrf24 radio(PE_1, PE_2, PE_3); </span></i><br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
Refer to the StellaPad <a href="https://github.com/energia/Energia/wiki/Hardware#stellarpad-ek-lm4f120xl">https://github.com/energia/Energia/wiki/Hardware#stellarpad-ek-lm4f120xl</a><br />
<br />
Just blindly hook up the nRF24L01 to the Stellaris Launchpad according to the pinout above and you are all set.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcGWcK-MCOR4xJXVURYCqxeWjfp6-c5KsemJUK5OXn8ZlXXvlRCjr2oKXsYXGkflsmtpgiYM05bCcaijSoRUeWiwrGziYmuVp_9h879Mu51rgoKZ8Dsz0S9XueazWBmJwBSRVGgF9e1VUA/s1600/StellarPad+3V3+Vbus.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="306" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcGWcK-MCOR4xJXVURYCqxeWjfp6-c5KsemJUK5OXn8ZlXXvlRCjr2oKXsYXGkflsmtpgiYM05bCcaijSoRUeWiwrGziYmuVp_9h879Mu51rgoKZ8Dsz0S9XueazWBmJwBSRVGgF9e1VUA/s320/StellarPad+3V3+Vbus.jpg" width="320" /></a></div>
<br />
While hooking up the 3.3V power to the nRF24L01+ radio ( that requires 3.3V ) I accidentally hook up the jumper cables to the VBUS pins as they are just next to each other. The VBUS is the USB power measured at 4.4V on my multimeter and the left pins besides it is the actual regulated 3.3V power pins. Luckily, the higher voltage did not blew up the nRF radio.<br />
<br />
After this minor incident, I got the nRF24L01 working and transmitting a ON/OFF payload to whichever devices that is listening on those configured address.<br />
<br />
As I have experience is getting different nRF libraries working with each other, the few possible places to look are the addressing schemes ( either 3 or 5 bytes ), CRC is either off / on (8bit/16bit), does it implement dynamic or static payload and matching all the speed and channels.<br />
<br />
After much tweaking on the Arduino UNO side, I still could not get Arduino UNO side to receive the payload so I did what everyone else would do, read the codes and ask the author of this library.<br />
<br />
Within less than a few hours, the author spirilis replied me and after changing the CRC settings, the Arduino UNO running the RF24 library is talking to the Stellaris Launchpad. The Tx demo is working and I tried the Rx demo and both works flawlessly. Below are the settings needed to get them working together...<br />
<br />
<br />
Stellaris Launchpad transmitter side :-<br />
<i><span style="color: #38761d;">const uint8_t txaddr[] = { 0xDE, 0xDE, 0xDE, 0xDE, 0xE3 };</span></i><br />
<div>
<i><span style="color: #38761d;"><br /></span></i></div>
<i><span style="color: #38761d;">void setup() {</span></i><br />
<i><span style="color: #38761d;">....</span></i><br />
<i><span style="color: #38761d;"> radio.begin(1000000); // 1Mbps, max TX power</span></i><br />
<i><span style="color: #38761d;"> radio.setChannel(88); // Channel 88</span></i><br />
<i><span style="color: #38761d;"> radio.setCRC(1,1); // Enable CRC, 16-bit</span></i><br />
<i><span style="color: #38761d;">....</span></i><br />
<i><span style="color: #38761d;">}</span></i><br />
<br />
Arduino UNO receiver side :-<br />
<br />
<i><span style="color: #38761d;">const uint64_t pipes[6] = { 0xDEDEDEDEE7LL, 0xDEDEDEDEE9LL, 0xF0F0F0F0E2LL, <b>0xF0F0F0F0E3LL</b>, 0xF0F0F0F0E4LL, 0xF0F0F0F0E5LL };</span></i><br />
<div>
<i><span style="color: #38761d;"><br /></span></i></div>
<div>
<i><span style="color: #38761d;">void setup() {</span></i></div>
<div>
<i><span style="color: #38761d;">....</span></i></div>
<div>
<div>
<i><span style="color: #38761d;"> radio.setDataRate(RF24_1MBPS);</span></i></div>
<div>
<i><span style="color: #38761d;"> radio.setPALevel(RF24_PA_MAX);</span></i></div>
<div>
<i><span style="color: #38761d;"> radio.setChannel(88);</span></i></div>
<div>
<i><span style="color: #38761d;"> radio.enableDynamicPayloads();</span></i></div>
</div>
<div>
<div>
<i><span style="color: #38761d;"> radio.setCRCLength(RF24_CRC_16);</span></i></div>
</div>
<i><span style="color: #38761d;">....</span></i><br />
<i><span style="color: #38761d;">}</span></i><br />
<br />
<br />
Summary Links :-<br />
<br />
- <a href="http://uk.farnell.com/">Premier Farnell (Element14)</a><br />
- <a href="http://uk.farnell.com/texas-instruments/ek-lm4f120xl/lm4f120-stellaris-launch-pad-eval/dp/2192061">Stellaris Launchpad</a><br />
- <a href="http://energia.nu/">Energia Development Environment</a><br />
- <a href="https://github.com/spirilis/Enrf24">Spirilis Energia nRF24L01 library</a><br />
- <a href="http://forum.43oh.com/topic/3237-energia-library-nordic-nrf24l01-library/">Forum link</a><br />
<br />
<br /></div>
Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-236630323640582849.post-90047353900196325902013-08-14T01:30:00.000+08:002013-08-15T12:04:33.651+08:00Getting nRF24L01 working with attiny84<div dir="ltr" style="text-align: left;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj0BWgt7QgvqVnv1O5PLTahGuIox8H-eOIxjbaPwObKLU7L0MX5t1P5CzWu_WsCX6bythryz3cDhCCXcWJ4EeizgbhPmfgxa4sxipgBkICHpn7dgLiG8Le3O-zFJA_Z4YeznLLHaJSno0q/s1600/atmel+attiny84+40pct.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="212" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj0BWgt7QgvqVnv1O5PLTahGuIox8H-eOIxjbaPwObKLU7L0MX5t1P5CzWu_WsCX6bythryz3cDhCCXcWJ4EeizgbhPmfgxa4sxipgBkICHpn7dgLiG8Le3O-zFJA_Z4YeznLLHaJSno0q/s320/atmel+attiny84+40pct.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny84</td></tr>
</tbody></table>
<br />
<br />
After getting the attiny85 (8 pins) working with nRF24L01, I find that while this chip is nice and small, the lack of extra pins is a real hassle when I need to add any sensors/actuators to the MCU.<br />
<br />
When I received my attiny84 ICs from Element14, now the fun begins...<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHiywm8aRUJB5ChG6mJLUWH_w7O6J_oIjyXP2TggtMB2LY9uTtEOoqYF4xgOhEext99MZc_LxEtki0TCSKLyJ-Gr2iL8ySbJVM2YGHW3HC4W2nr66v75iYrueaOzun-NVF1nxo546e146Z/s1600/attiny84+Pins+for+arduino-tiny+cores.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHiywm8aRUJB5ChG6mJLUWH_w7O6J_oIjyXP2TggtMB2LY9uTtEOoqYF4xgOhEext99MZc_LxEtki0TCSKLyJ-Gr2iL8ySbJVM2YGHW3HC4W2nr66v75iYrueaOzun-NVF1nxo546e146Z/s1600/attiny84+Pins+for+arduino-tiny+cores.jpg" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny84 pinout</td></tr>
</tbody></table>
<br />
As usual, I hook up the attiny84 and test a blink sketch to ensure the attiny84 is working correctly. The first thing I encounter is that the blink is very slow, about 8 to 10 secs slower and I was wondering why. By the way, I'm using this Arduino tiny-core <a href="https://code.google.com/p/arduino-tiny/">https://code.google.com/p/arduino-tiny/</a> as there are other tiny-cores available on the net with different settings.<br />
<br />
After posting my problems on Arduino forum, I found out I need to do a Tools->Burn Bootloader to set the correct speed and fuses on the attiny84. After the "Burn Bootloader", the attiny84 was operating correctly at 8Mhz without an external crystal.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPTKzPi5zSFPlVXhOp-t_i7fIUIyscYqa5mK2R762u1jFHB9XQiwPox73nhHLpWlbXvIrSUdXRu4gO27bpi02V4dt0aHpL-Nne-UJHz3Ni9VtSuYpPORtZCxLMDxd7Z5nhxUN1VJntB8yv/s1600/2013-08-08+02.16.14.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPTKzPi5zSFPlVXhOp-t_i7fIUIyscYqa5mK2R762u1jFHB9XQiwPox73nhHLpWlbXvIrSUdXRu4gO27bpi02V4dt0aHpL-Nne-UJHz3Ni9VtSuYpPORtZCxLMDxd7Z5nhxUN1VJntB8yv/s320/2013-08-08+02.16.14.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny84 </td></tr>
</tbody></table>
The above pictures are my test setup of the attiny84 on a breadboard with breadboard power supply running on 3.3V, nRF24L01 on an UNO adapter, USBtinyISP and logic analyzer and mini hooks.<br />
<br />
The "<i>fun</i>" starts when trying to get the SPI pinout for attiny84 for running the nRF24L01. Since it uses the same tiny core was the attiny85 and I got the attiny85 working, it should not be too difficult, I guess.<br />
<br />
After hooking up the attiny84 according to the above image and flashed the hex into the attiny84, I did not get correct settings on the four register I was monitoring on the serial/debug monitor. For troubleshooting, I have enabled "<i><a href="http://www.ernstc.dk/arduino/tinycom.html">TinyDebugSerial</a></i>" to read the four register, namely RF_CH, RF_SETUP, TX_ADDR and RX_ADDR.<br />
<br />
I always needed to verify these settings and proper communications to the nRF24L01 as I used many different data rate, channel/frequencies and TX/RX address on all these nRF24L01 radios all the time.<br />
<br />
<i style="background-color: yellow;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Mirf.readRegister(RF_CH, &rf_ch,sizeof(rf_ch));</span></i><br />
<i style="background-color: yellow;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Mirf.readRegister(RF_SETUP, &rf_setup, sizeof(rf_setup));</span></i><br />
<i style="background-color: yellow;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Mirf.readRegister(TX_ADDR, tx_addr, sizeof(tx_addr));</span></i><br />
<i style="background-color: yellow;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;"> Mirf.readRegister(RX_ADDR_P1, rx_addr, sizeof(rx_addr));</span></i><br />
<br />
I also hook up a Logic Analyzer to the SPI pins to "see" what is going on during those SPI transfers. A proper SPI transfer would look something like below, with Enable/Slave Select (SS) pin held low during active SPI with Clock (SCK) supplying the clockrate for the MOSI/MISO.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMqsESJjagSnmWJxVRsXXu3QStFvbt-8W-hbPvmZD69FkhFM-QtJ9k-nA6p1uUOTmyQoTNRQCbootdDTtSOmBJUDUEOTE4IFn8Rt8C72Uz1ENzivMnQlgBtfw3FGDL7YxCDpmrRACwdcpT/s1600/SPI+Logic.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="104" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMqsESJjagSnmWJxVRsXXu3QStFvbt-8W-hbPvmZD69FkhFM-QtJ9k-nA6p1uUOTmyQoTNRQCbootdDTtSOmBJUDUEOTE4IFn8Rt8C72Uz1ENzivMnQlgBtfw3FGDL7YxCDpmrRACwdcpT/s320/SPI+Logic.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SPI transfers</td></tr>
</tbody></table>
<br />
<span style="font-family: inherit;">The issue seems to be SPI related as I do not get SPI patterns similar to the above, I immediately looked at SPI85 library that was downloaded from Arduino forum and it was working fine on the attiny85 on my earlier blog entry.</span><br />
<br />
A bit about the SPI for the attiny, as the attiny does not have dedicated pins for SPI, it uses Universal Serial Interface (USI) for both SPI or I2C. See <a href="http://playground.arduino.cc/Code/USI-SPI">http://playground.arduino.cc/Code/USI-SPI</a> for details on the USI-SPI on Arduino playground.<br />
<br />
By viewing this link on Arduino Playground, it gives *hint* NOT to use the MOSI/MISO pins for attiny as they are ONLY used for In-Circuit Serial Programming (ICSP) only.<br />
<br />
By looking at the SPI85.cpp codes, there are two lines that seems to differentiate between attiny85 and attiny84.<br />
<br />
<span style="background-color: yellow; font-family: Courier New, Courier, monospace; font-size: x-small;"><i>#if defined( __AVR_ATtiny85__ )</i></span><br />
<span style="background-color: yellow; font-family: Courier New, Courier, monospace; font-size: x-small;"><i>const static uint8_t SS = PB4;</i></span><br />
<span style="background-color: yellow; font-family: Courier New, Courier, monospace; font-size: x-small;"><i>const static uint8_t MOSI = PB1;</i></span><br />
<span style="background-color: yellow; font-family: Courier New, Courier, monospace; font-size: x-small;"><i>const static uint8_t MISO = PB0;</i></span><br />
<span style="background-color: yellow; font-family: Courier New, Courier, monospace; font-size: x-small;"><i>const static uint8_t SCK = PB2;</i></span><br />
<span style="background-color: yellow; font-family: Courier New, Courier, monospace; font-size: x-small;"><i>#endif</i></span><br />
<span style="background-color: yellow;"><span style="font-size: x-small;"><i><br /></i></span></span>
<span style="background-color: yellow;"><span style="font-size: x-small;"><i><span style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;">#if defined( __AVR_ATtiny84__ )</span><br style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;" /><span style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;">const static uint8_t SS = PA7;</span><br style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;" /><span style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;">const static uint8_t MOSI = PA6;</span><br style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;" /><span style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;">const static uint8_t MISO = PA5;</span><br style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;" /><span style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;">const static uint8_t SCK = PA4;</span><br style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;" /><span style="font-family: 'courier new', 'times new roman', monospace; line-height: 23.46354103088379px; white-space: nowrap;">#endif</span></i></span></span><br />
<span style="background-color: white; font-family: 'courier new', 'times new roman', monospace; font-size: 16.66666603088379px; line-height: 23.46354103088379px; white-space: nowrap;"><br /></span>
<span style="background-color: white; font-family: inherit; line-height: 23.46354103088379px; white-space: nowrap;">Here are some snapshot from the datasheets as like most of you, I only </span><br />
<span style="background-color: white; font-family: inherit; line-height: 23.46354103088379px; white-space: nowrap;">will read through the datasheet as a last resort as they are not written for </span><br />
<span style="background-color: white; font-family: inherit; line-height: 23.46354103088379px; white-space: nowrap;">normal people like myself. I always wonder if the author even understand what </span><br />
<span style="font-family: inherit;"><span style="background-color: white; line-height: 23.46354103088379px; white-space: nowrap;">he himself wrote </span><span style="background-color: white; line-height: 23.46354103088379px; white-space: nowrap;">if he reads it a few years later.</span></span><br />
<span style="background-color: white; font-family: 'courier new', 'times new roman', monospace; font-size: 16.66666603088379px; line-height: 23.46354103088379px; white-space: nowrap;"><br /></span>
<span style="background-color: white; font-family: 'courier new', 'times new roman', monospace; font-size: 16.66666603088379px; line-height: 23.46354103088379px; white-space: nowrap;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKJCSz21KsMdqW0roqzb2hMj0ZcYN1tXBmb-o4mQGPh96nQGPqC9Ta5WQIdYv6tCvtWENTIiwX78u2we_fUpMbNeYrFrB24hZDTTIIsBcXJ4crdRPUEJ9-PpafTzoycipZ-ZkJG7yvmMwW/s1600/attiny+x4+DS+pinout.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="137" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKJCSz21KsMdqW0roqzb2hMj0ZcYN1tXBmb-o4mQGPh96nQGPqC9Ta5WQIdYv6tCvtWENTIiwX78u2we_fUpMbNeYrFrB24hZDTTIIsBcXJ4crdRPUEJ9-PpafTzoycipZ-ZkJG7yvmMwW/s400/attiny+x4+DS+pinout.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny x4 pinout</td></tr>
</tbody></table>
<span style="background-color: white; font-family: 'courier new', 'times new roman', monospace; font-size: 16.66666603088379px; line-height: 23.46354103088379px; white-space: nowrap;"><br /></span>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9-MoMelXuv9lp4KQVHytauwun7UAEavWPIIWuj1-XOnT9xeG-wSOy5vyWDcEVvvapUxxSkyNIs2W4E1cCRbb7qGo5KGZpX9w3KhmbNi0842U-h0_z71FcuvbCdhE3rGkD1_OfRz7yW1TN/s1600/attiny+x4+DS+pin+ALT+functions.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9-MoMelXuv9lp4KQVHytauwun7UAEavWPIIWuj1-XOnT9xeG-wSOy5vyWDcEVvvapUxxSkyNIs2W4E1cCRbb7qGo5KGZpX9w3KhmbNi0842U-h0_z71FcuvbCdhE3rGkD1_OfRz7yW1TN/s400/attiny+x4+DS+pin+ALT+functions.jpg" width="362" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny x4 pin alternate functions</td></tr>
</tbody></table>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">From the above info/snapshots from the datasheet, I will have to assume that whoever </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">wrote the SPI85 library </span><span style="line-height: 23.451704025268555px; white-space: nowrap;">was just following putting support for attiny84 without actually </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">tested an attiny84 before </span><span style="line-height: 23.451704025268555px; white-space: nowrap;">as clearly it shows the pins was incorrect.</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">The pin PA5, while listed as MISO (for ICSP), was also USI-DO (data out) and PA6 while </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">listed as MOSI (for ICSP), was also USI-DI (data in). As stated above in Arduino </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">playground, f</span><span style="line-height: 23.451704025268555px; white-space: nowrap;">or attiny, </span><span style="line-height: 23.451704025268555px; white-space: nowrap;">the MISO/MOSI is used only for </span><span style="line-height: 23.451704025268555px; white-space: nowrap;">ICSP and not for USI-SPI.</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">That was easy to solve, just swapped PA5 and PA6 and everything will work fine, </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">right.. but it turns out that the PA5 and PA6 is logically mapped to value of 5 and 6 </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">and when </span><span style="line-height: 23.451704025268555px; white-space: nowrap;">the codes does an Arduino code of pinMode and digitalWrite, it execute </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">the wrong pins for the </span><span style="line-height: 23.451704025268555px; white-space: nowrap;">attiny. A Digital pin5 mapped to PA5 and Digital pin6 mapped </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">to PA4 (the pin used for the </span><span style="line-height: 23.451704025268555px; white-space: nowrap;">SCK/USCK).. no wonder the SPI display on the </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">logic analyzer goes haywire..</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">Once, I traced the issue and figure out the problems, I just had to hard code the Arduino digital pins</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">to the AVR_ATtiny84 defines as below and changed the MOSI/MISO source of confusing to </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">USI_DO and USI_DI :-</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="background-color: yellow; line-height: 23.451704025268555px; white-space: nowrap;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;">#if defined( __AVR_ATtiny84__ )</span></span><br />
<span style="background-color: yellow; line-height: 23.451704025268555px; white-space: nowrap;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;">const static uint8_t SS = 3;</span></span><br />
<span style="background-color: yellow; line-height: 23.451704025268555px; white-space: nowrap;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;">const static uint8_t USI_DO = 5; </span></span><br />
<span style="background-color: yellow; line-height: 23.451704025268555px; white-space: nowrap;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;">const static uint8_t USI_DI = 4;</span></span><br />
<span style="background-color: yellow; line-height: 23.451704025268555px; white-space: nowrap;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;">const static uint8_t SCK = 6;</span></span><br />
<span style="background-color: yellow; line-height: 23.451704025268555px; white-space: nowrap;"><span style="font-family: Courier New, Courier, monospace; font-size: x-small;">#endif</span></span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">After that, I was able to see the correct settings on the Serial Debug or the SPI patterns on the </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">logic analyzer. I do not know enough about how the tiny cores was written to put the </span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">proper attiny84 pin names but it was finally working.</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">If you figure out on how to fix the attiny84 pins, please let me know. The nRF24L01 library</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;">was located at the summary links below.</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">There is an example of attiny84 codes in the Mirf library at github repo.</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">Summary Links :-</span><br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;">Mirf (nRF24L01) libs for UNO/attiny84/attiny85 :- </span><a href="https://github.com/stanleyseow/arduino-nrf24l01">https://github.com/stanleyseow/arduino-nrf24l01</a><br />
Arduino tiny-cores :- <a href="https://code.google.com/p/arduino-tiny/">https://code.google.com/p/arduino-tiny/</a><br />
<br />
<br />
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
<span style="line-height: 23.451704025268555px; white-space: nowrap;"><br /></span>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-73540012149827102972013-06-21T15:23:00.000+08:002013-06-21T15:23:02.800+08:00Electric Imp + Arduino + nRF24L01 = Fully Internet Wireless Solution<div dir="ltr" style="text-align: left;" trbidi="on">
<div>
When we discovered the <a href="http://electricimp.com/">Electric Imp</a> recently, we almost immediately ordered them directly from US to do research and coding on them. You can read more about the electric imp on their websites or view their videos on Makerfaire, in short, it is a awesome product. </div>
<br /><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt1osEiJAD7TUyLBc_5f2o_bTzBrXadVGSt5YIeYGSSw7NoTAxeVwF3m4_wUy8WlboPxix4wUcelDWpRGmQc7HDBHrZFhL4zG4Tt6LuuWuCcOgrKj9hHXMGwAB5I08PDK5K4Yw_BzBXzPg/s1600/Imp+SDCARD.jpg" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt1osEiJAD7TUyLBc_5f2o_bTzBrXadVGSt5YIeYGSSw7NoTAxeVwF3m4_wUy8WlboPxix4wUcelDWpRGmQc7HDBHrZFhL4zG4Tt6LuuWuCcOgrKj9hHXMGwAB5I08PDK5K4Yw_BzBXzPg/s200/Imp+SDCARD.jpg" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">electric imp<br /><div style="text-align: center;">
<span style="text-align: left;"><br /></span></div>
<div style="text-align: center;">
<span style="text-align: left;"><br /></span></div>
</td></tr>
</tbody></table>
<div>
<br /></div>
<div>
What it does is to simplify the Internet connectivity of electronic projects and the ability to program your device or "things" over the Internet on a web based IDE is a really powerful concept made into reality.</div>
<div>
<br /></div>
<div>
Before the Imp, a few other options existed to have your device "<i>Internet Enabled</i>" and they are either too expensive or requires a lot of other stuff like router / firewall configuration, having a linux box in between like the Raspberry Pi version of Raspbian or plug in an Ethernet Shield on top of an Arduino. I've tried them all out and could not find any other solution as simple as this.</div>
<div>
<br /></div>
<div>
Firstly, do not be confused by it SD card looking form factor, it is NOT a memory card but a powerful microcontroller plus wifi enabled radio all stuff into a tiny SD card otter shell. When it comes to connecting endpoints like smartphones and laptops to wifi, we are all aware of the trouble of choosing the correct access point and keying in the wifi password to gain access. </div>
<div>
<br /></div>
<div>
How do you key in the access point name and wifi password to this small little SD card microcontroller ? The answer is light or blinking lights to transmit these wifi authentication information directly to the card itself. They have mobile apps for both <a href="https://itunes.apple.com/us/app/electric-imp/id547133856?mt=8">iOS</a> and <a href="https://play.google.com/store/apps/details?id=com.electricimp.electricimp&hl=en">Android</a> platform. View this <a href="http://www.youtube.com/watch?feature=player_detailpage&v=-R_thigW_-w">video</a> demo on how it works.</div>
<div>
<br /></div>
<div>
With the Internet connectivity issue easily solved using an Electric Imp, my next questions is what if I want to connect more than one device ? Should I buy another electric imp and the Imp development board to house it or should I find an alternative (or more cost effective ) method to link up all my other devices/things in the house.</div>
<div>
<br /></div>
<div>
With my other projects all using nRF24L01 radio, the choice is quite obvious for a wireless solution, find a nRF24L01 driver for the electric imp platform. After a few google searches, I manage to find an initial driver for the electric imp on the forum BUT it was totally not working and unfinished. This is what usually happens to open source and community projects, someone will write the codes when time and interests permits and abandon it when it is either not working or find something else more interesting project to do...</div>
<div>
<br /></div>
<div>
Since I have a little bit of experience forking the nRF24L01's RF24 library and making the RF24 drivers work for Arduino, Raspberry Pi and Atmel attiny85, I took up the challenge of writing the nRF24L01 driver for the electric imp at the same time learning a C like new object oriented programming language called Squirrel that was used on the Imp.</div>
<div>
<br /></div>
<div>
The nRF24L01 I wrote was a combination of RF24 codes with the Mirf codes as the Mirf codes was easier to understand and was originally written in C instead of C++ for the RF24. There were some issues on the SPI but with a help of a Logic Analyzer and Logic software, I was able to fix most of the SPI related issues </div>
<div>
<br /></div>
<div>
The github repo for the Electric Imp nRf24L01 driver is at <a href="https://github.com/stanleyseow/electricimp-nRF24L01">https://github.com/stanleyseow/electricimp-nRF24L01</a>. You can comment out all the debug output when everything the radio is running ok.</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN9dBwIKPVHy2_TuavSHxqmYJ5q9xsd0zfe05butiw6Vtz7oP_3dOhAK8LRtc1dWgr-k6RSBM9Wq7pug1wIa2Pf4COLWTNRKccyWt4aeBOac9YzUpH8ida-mqx8Gy741QOTxVviqPupxIt/s1600/Imp+nRF+Arduino+blk+diagram.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="185" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN9dBwIKPVHy2_TuavSHxqmYJ5q9xsd0zfe05butiw6Vtz7oP_3dOhAK8LRtc1dWgr-k6RSBM9Wq7pug1wIa2Pf4COLWTNRKccyWt4aeBOac9YzUpH8ida-mqx8Gy741QOTxVviqPupxIt/s320/Imp+nRF+Arduino+blk+diagram.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">block diagram</td></tr>
</tbody></table>
<div>
<br /></div>
<div>
My next task is to find a useful application for my wireless solution, since I had a RGB LED strip and always like to make an Internet enabled RGB lighting, I hook up everything like the block diagram above. The web portion is a jquery colour picker from <a href="http://acko.net/blog/farbtastic-jquery-color-picker-plug-in/">farbtastic</a> with some touchscreen add-ons for touchscreen smartphone/tablets. Do viewsource to see the javacript codes at <a href="http://stanleyseow.asuscomm.com/color/">http://stanleyseow.asuscomm.com/color/</a>.</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-MkAYb8-nzD3lkjxkEiosUYPMHBXrrFGXRRNK3DSkt4LiLUn5sdwe7d74CYoNk_JK0z_r-Lq-jYAiJteS4zqHu_d12FEo1Er5YCTvKgCyq7Y4nPVPy90PcEoYaoDf2d4Y14KJyzyqEAA2/s1600/Imp+Color+Picker+web.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="275" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-MkAYb8-nzD3lkjxkEiosUYPMHBXrrFGXRRNK3DSkt4LiLUn5sdwe7d74CYoNk_JK0z_r-Lq-jYAiJteS4zqHu_d12FEo1Er5YCTvKgCyq7Y4nPVPy90PcEoYaoDf2d4Y14KJyzyqEAA2/s320/Imp+Color+Picker+web.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">colour picker</td></tr>
</tbody></table>
<div>
<br /></div>
<div>
The Arduino portion is a simple <a href="http://pastebin.com/ZvtE1p9T" target="_blank">code</a> to read the three RGB codes from the colour picker webpage via nRF24L01 in #RRGGBB in hex and convert them to decimal ( 0 - 255 ) for analogWrite to the PWM pins. I'm driving the 12V RGB LED strip using a ULN2803 IC similar to this <a href="http://siliconrepublic.blogspot.com/2011/02/arduino-based-pc-ambient-lighting.html">page</a> on ambient lighting.</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpIOZ1OZpC9yOzjHUHcIiMS7kSPRJwgGddk1Wf4wQ33TTb6zhFbK6kSYR8CzpyrVKgrWFjopiaIDrPig6RBgiGwBv0nVlpa2_KrlRZWkUsEt9m0p9sqQqMxewL6QpgjI2MQzuu7YW8pyX4/s1600/Imp+Color+Picker+Arduino+nRF.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpIOZ1OZpC9yOzjHUHcIiMS7kSPRJwgGddk1Wf4wQ33TTb6zhFbK6kSYR8CzpyrVKgrWFjopiaIDrPig6RBgiGwBv0nVlpa2_KrlRZWkUsEt9m0p9sqQqMxewL6QpgjI2MQzuu7YW8pyX4/s320/Imp+Color+Picker+Arduino+nRF.jpg" width="185" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Arduino + nRF24L01 + RGB</td></tr>
</tbody></table>
<div>
The electric Imp part of the hardware is an April development board with the Impee SD card with SPI pins connected to the nRF24L01 radio. Since both the Imp and nRF24L01 runs on 3.3V, I do not need power regulator for this.</div>
<div>
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOyMoDUcnHOsg6tYvG998_Av1iy9-3TgMcCe7DobWfXOsjFpmkyA2QbVpssC6-6dxy1LCbiOwuLE0B3baVLxOrko8lXyoHQklbjBcmhf5h7CB-bGSEglfMuOp3AjpY3MDu6_u9XhdsOr-c/s1600/Imp+Color+Picker.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOyMoDUcnHOsg6tYvG998_Av1iy9-3TgMcCe7DobWfXOsjFpmkyA2QbVpssC6-6dxy1LCbiOwuLE0B3baVLxOrko8lXyoHQklbjBcmhf5h7CB-bGSEglfMuOp3AjpY3MDu6_u9XhdsOr-c/s320/Imp+Color+Picker.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Impee + nRF24L01</td></tr>
</tbody></table>
<div>
Those red mini hooks are connected to my logic analyzer when I was troubleshooting the SPI issues I faced earlier. </div>
<div>
<br /></div>
<div>
In summary, this seems like a complex setup but in actual fact after removing all the nRF24L01 library/drivers, the lines of codes is only the below :-</div>
<div>
</div>
<div>
<br /><table><tbody></tbody></table>
</div>
<div>
Imp Server Side :-</div>
<div>
<ol style="background-color: #f8f8f8; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace, serif; font-size: 11.666666030883789px; line-height: 20.989582061767578px; margin: 0px; padding: 0px 0px 0px 48px;">
<li class="li1" style="-webkit-user-select: none; color: #acacac;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="sy1" style="color: navy;">===============================================================================================</span></div>
</li>
<li class="li2" style="-webkit-user-select: none; color: #acacac;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
Electric Imp agent side <span class="br0" style="color: green;">(</span> cloud <span class="sy2" style="color: #000040;">/</span> server side <span class="br0" style="color: green;">)</span> <span class="sy4" style="color: teal;">:</span><span class="sy2" style="color: #000040;">-</span></div>
</li>
<li class="li1" style="-webkit-user-select: none; color: #acacac;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="sy1" style="color: navy;">===============================================================================================</span></div>
</li>
<li class="li2" style="-webkit-user-select: none; color: #acacac;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none; color: #acacac;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
http.<span class="me1" style="color: #007788;">onrequest</span><span class="br0" style="color: green;">(</span>function<span class="br0" style="color: green;">(</span>req, resp<span class="br0" style="color: green;">)</span><span class="br0" style="color: green;">{</span></div>
</li>
<li class="li2" style="-webkit-user-select: none; color: #acacac;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
server.<span class="kw3" style="color: #0000dd;">log</span><span class="br0" style="color: green;">(</span><span class="st0" style="color: red;">"Got a HTTP request"</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li1" style="-webkit-user-select: none; color: #acacac;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: blue;">if</span> <span class="br0" style="color: green;">(</span>req.<span class="me1" style="color: #007788;">method</span> <span class="sy1" style="color: navy;">==</span> <span class="st0" style="color: red;">"POST"</span><span class="br0" style="color: green;">)</span><span class="br0" style="color: green;">{</span></div>
</li>
<li class="li2" style="-webkit-user-select: none; color: #acacac;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
local body <span class="sy1" style="color: navy;">=</span> http.<span class="me1" style="color: #007788;">urldecode</span><span class="br0" style="color: green;">(</span>req.<span class="me1" style="color: #007788;">body</span><span class="br0" style="color: green;">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none; color: #acacac;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
server.<span class="kw3" style="color: #0000dd;">log</span><span class="br0" style="color: green;">(</span>body.<span class="me1" style="color: #007788;">data</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li2" style="-webkit-user-select: none; color: #acacac;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
device.<span class="me1" style="color: #007788;">send</span><span class="br0" style="color: green;">(</span><span class="st0" style="color: red;">"agentBuffers"</span>,body.<span class="me1" style="color: #007788;">data</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li1" style="-webkit-user-select: none; color: #acacac;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="co1" style="color: #666666;">//device.on(recvfromImp,impBuffer);</span></div>
</li>
<li class="li2" style="-webkit-user-select: none; color: #acacac;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="br0" style="color: green;">}</span></div>
</li>
<li class="li1" style="-webkit-user-select: none; color: #acacac;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
resp.<span class="me1" style="color: #007788;">send</span><span class="br0" style="color: green;">(</span><span class="nu0" style="color: #0000dd;">200</span>, <span class="st0" style="color: red;">"<head><meta http-equiv=<span class="es1" style="color: #000099; font-weight: bold;">\"</span>refresh<span class="es1" style="color: #000099; font-weight: bold;">\"</span> content=<span class="es1" style="color: #000099; font-weight: bold;">\"</span>1;url=http://stanleyseow.asuscomm.com/color/<span class="es1" style="color: #000099; font-weight: bold;">\"</span>><html>OK</html></head>"</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="br0" style="color: green;">}</span><span class="br0" style="color: green;">)</span><span class="br0"><span style="color: teal;">;</span></span></div>
</li>
</ol>
</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
Imp device to send to nRF24L01 ( radio.send() ) :-</div>
<div>
<ol style="background-color: #f8f8f8; color: #acacac; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace, serif; font-size: 11.666666030883789px; line-height: 20.989582061767578px; margin: 0px; padding: 0px 0px 0px 48px;">
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="sy1" style="color: navy;">===============================================================================================</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
Electric Imp device <span class="br0" style="color: green;">(</span> the white wifi SDcard in yr home <span class="br0" style="color: green;">)</span> <span class="sy4" style="color: teal;">:</span><span class="sy2" style="color: #000040;">-</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="sy1" style="color: navy;">===============================================================================================</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
function watchdog2<span class="br0" style="color: green;">(</span><span class="br0" style="color: green;">)</span> <span class="br0" style="color: green;">{</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
agent.<span class="me1" style="color: #007788;">on</span><span class="br0" style="color: green;">(</span><span class="st0" style="color: red;">"agentBuffers"</span>,function<span class="br0" style="color: green;">(</span>value<span class="br0" style="color: green;">)</span> <span class="br0" style="color: green;">{</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
server.<span class="kw3" style="color: #0000dd;">log</span><span class="br0" style="color: green;">(</span><span class="st0" style="color: red;">"Got a buffer from agent/http"</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: blue;">if</span> <span class="br0" style="color: green;">(</span> value.<span class="me1" style="color: #007788;">len</span><span class="br0" style="color: green;">(</span><span class="br0" style="color: green;">)</span> <span class="sy1" style="color: navy;"><</span> <span class="nu0" style="color: #0000dd;">33</span> <span class="br0" style="color: green;">)</span> <span class="br0" style="color: green;">{</span> <span class="co1" style="color: #666666;">// Make sure nRF24L01 payload is only 32bytes or less</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
radio.<span class="me1" style="color: #007788;">send</span><span class="br0" style="color: green;">(</span>value,value.<span class="me1" style="color: #007788;">len</span><span class="br0" style="color: green;">(</span><span class="br0" style="color: green;">)</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span> <span class="co1" style="color: #666666;">// Send the payload to the radio</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="br0" style="color: green;">}</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="br0" style="color: green;">}</span> <span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
radio.<span class="me1" style="color: #007788;">powerRX</span><span class="br0" style="color: green;">(</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
imp.<span class="me1" style="color: #007788;">wakeup</span><span class="br0" style="color: green;">(</span><span class="nu0" style="color: #0000dd;">1</span>, watchdog2 <span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span> </div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="br0" style="color: green;">}</span></div>
</li>
</ol>
</div>
<div>
<br /></div>
<div>
Arduino portion after getting the #rrggbb from nRF24L01 :-</div>
<div>
<br /></div>
<div>
<ol style="background-color: #f8f8f8; color: #acacac; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace, serif; font-size: 11.666666030883789px; line-height: 20.989582061767578px; margin: 0px; padding: 0px 0px 0px 48px;">
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
HEXtoRGB<span class="br0" style="color: green;">(</span><span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span><span style="font-size: 11.666666030883789px; line-height: 21px;"> </span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
analogWrite<span class="br0" style="color: green;">(</span>RED_PIN,r<span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
analogWrite<span class="br0" style="color: green;">(</span>GREEN_PIN,g<span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; line-height: 21px; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
analogWrite<span class="br0" style="color: green;">(</span>BLUE_PIN,b<span class="br0" style="color: green;">)</span><span class="sy4" style="color: teal;">;</span></div>
</li>
</ol>
</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
Summary Links :-</div>
<div>
- <a href="http://electricimp.com/">Electric Imp</a></div>
<div>
- Arduino RGB code <a href="http://pastebin.com/ZvtE1p9T">http://pastebin.com/ZvtE1p9T</a></div>
<div>
- <a href="https://github.com/stanleyseow/electricimp-nRF24L01">https://github.com/stanleyseow/electricimp-nRF24L01</a></div>
<div>
- <a href="http://stanleyseow.asuscomm.com/color/">http://stanleyseow.asuscomm.com/color/</a></div>
<div>
- <a href="http://siliconrepublic.blogspot.com/2011/02/arduino-based-pc-ambient-lighting.html">Arduino Ambient Lighting</a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-34213652583003010362013-06-09T02:16:00.000+08:002013-12-13T23:50:40.657+08:00Arduino Serial over nRF24L01<div dir="ltr" style="text-align: left;" trbidi="on">
While browsing for nRF24L01 solutions, I came across this <a href="http://www.siliconray.com/uart-interface-nrf24l01-2-4g-wireless-module.html">UART interface to nRF24L01</a> that work similar to Xbee, serial data into the module RX/TX and serial data out of the module at the other end. Since those modules uses Atmel ATmega8 as the MCU, I had an idea to write the code for it from an Arduino IDE and make a few PCBs for it. Making it work like Xbee serial would be fantastic as the cost is only a fraction compared to Xbee. I always joked that the X in Xbee stands for eXpensive.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggutk_5XEocUQsa-8rXIHL8ndDB3UuDmO9fz0okxB8Nacaax4rBgL7misVnc-plKbi9UKthA5uYvorlCbwocHaphrn8v8DsZlW-8_76kIs1C9zVwGGZuMjjq4-K0FEn9Ds81x9_rTnFQLf/s1600/uart_nrf24l01.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="181" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggutk_5XEocUQsa-8rXIHL8ndDB3UuDmO9fz0okxB8Nacaax4rBgL7misVnc-plKbi9UKthA5uYvorlCbwocHaphrn8v8DsZlW-8_76kIs1C9zVwGGZuMjjq4-K0FEn9Ds81x9_rTnFQLf/s200/uart_nrf24l01.jpg" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">UART to nRF24L01</td></tr>
</tbody></table>
<br />
For me, the drive to spring into action is usually to solve a problem in hand and during the myduino.com 50% mega sale, I purchase a <a href="http://www.myduino.com/index.php?route=product/product&path=46&product_id=367">Skylab GPS module</a> to mess around with GPS stuff. I've been messing with GPS since 2005 with my purchase of the handheld color Garmin GPSmap60C but these days, GPS is no big deal since any smartphone is usually equipped with one.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCo4iej6TggLQNG4_gnhF2UyoBAFxS8EncYKDqUPZKjFMRf8AbYmLVqg8MJDIRMORpGhP-2bIPYHqsnDt4zUdFmmuptqxZZUTgG-UY0r42B74VyKLCklncCMaGipnRm5iHPNn7wjqTrsNU/s1600/Skylab+GPS+module.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCo4iej6TggLQNG4_gnhF2UyoBAFxS8EncYKDqUPZKjFMRf8AbYmLVqg8MJDIRMORpGhP-2bIPYHqsnDt4zUdFmmuptqxZZUTgG-UY0r42B74VyKLCklncCMaGipnRm5iHPNn7wjqTrsNU/s200/Skylab+GPS+module.jpg" width="185" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Skylab GPS module</td></tr>
</tbody></table>
<br />
After soldering jumper cables to the Skylab Vcc,Gnd, RX & TX pins as they were not the standard breadboard size of 0.1" (2.54mm), I loaded <a href="http://arduiniana.org/libraries/tinygps/">TinyGPS library</a> from Arduiniana and was surprise on the sensitivity of this GPS module. Inside my room, I can receive very strong signals compared to my trusty Garmin GPSmap60C or my <a href="http://www.holux.com/JCore/en/products/products_content.jsp?pno=341">Holux M-241</a> (for geotagging) where I have to stand outside my balcony for 5-10 mins just to get a GPS lock.<br />
<div>
<br /></div>
<div>
I just hook up a 16x2 LCD to the Arduino UNO to display the location and the number of satellite and hdop value for accuracy of the location.</div>
<div>
<br /></div>
<div>
Since the GPS module runs on serial and spit out data continuously, I can use this as my "content" or raw data to feed to my UART to nRF24L01 module and another module just reverse it back to Serial into an Arduino or output to Serial Monitor for a GPS software to interpret them instead of using Arduino GPS library.</div>
<div>
<br /></div>
<div>
Another really important piece that got me started was this blog by JHaskell on <a href="http://jhaskellsblog.blogspot.com/2011/05/serial-comm-fundamentals-on-arduino.html">Serial communications fundamentals on Arduino</a> that explain about using start and stop delimiters to capture serial input into an array.</div>
<div>
<br /></div>
<div>
With this two pieces of info, I just need to figure out on how to split up the payload to fit the nRF24L01 max payload size and reassemble it back together at the receiving end. </div>
<div>
<br /></div>
<div>
I initially started with using a $ for the start delimiter and a few other symbols at the end delimiters to denote 1st fragment, 2nd fragment and last fragments on the receiving side. <a href="https://plus.google.com/109872379413386289076/posts">Greg</a> suggested that I use a one byte header to denote fragmentation, and rest of the bits as fragment sequences and the rest as payload. I finally decide to use 2 bytes headers with the 2nd byte reverse for future use and the first byte as follows :-</div>
<div>
<br /></div>
<div>
8 bit - 1 - fragment, 0 - no fragment</div>
<div>
5-7 bit - number of fragments </div>
<div>
<div>
4 bit - unused</div>
<div>
1-3 bit - fragment number<br />
<br />
I've been reading TCP/IP headers packets for a long time and this is the first time I wrote my own simple protocol to fragment and assembly a wireless packet and even reverse 8 bits for future use...<br />
<br />
Here are some pictures before I continue with the rest of the story..<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZc6BGIz31UGTYzEGLc-nbBLU1ycEcU7Tx6urxuqVt-ek_HUbtHnxdOU4mjVXxiATJz2dR48KIYbMKIk1RHP0tcGOirOUwFWQlOdfUXxm4aCKY4vZYThsHewGvlQbzyvBWzgYixcXhETER/s1600/UNO+nRF+with+GPS+module.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZc6BGIz31UGTYzEGLc-nbBLU1ycEcU7Tx6urxuqVt-ek_HUbtHnxdOU4mjVXxiATJz2dR48KIYbMKIk1RHP0tcGOirOUwFWQlOdfUXxm4aCKY4vZYThsHewGvlQbzyvBWzgYixcXhETER/s320/UNO+nRF+with+GPS+module.jpg" width="277" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Arduino UNO nRF24L01 GPS module</td></tr>
</tbody></table>
<br />
The first thing you might be wondering is why is there a FTDI USB-Serial breakout board when the Arduino already have a built-in USB-Serial on pin 0 & 1. This issue started when I was receiving GPS data using Arduino SoftwareSerial library and while this library works with the TinyGPS mentioned above, it was starting to drop bytes ( serial overflow ) and some of the GPS data was lost before I can even sent them over the radio frequency.<br />
<br />
Someone at Arduino forum suggested that I use the hardware serial to receive the GPS data and plug in the FTDI USB Serial for debugging purpose/serial monitor. I tried out his suggestions and all the dropped bytes went away immediately. Since the final product do not really need to connect to Serial Monitor, I might as well use the hardware serial instead of the slow SoftwareSerial library.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQu1DB0C7Tywuh9FCBo_fvm7MVxHrfPBrhlhkNTpNYnnkNn6o4s8FZgUoycvJea8jDcYUW87a1Goyr7Eqf0sneIbnPF3Nj9d96q3rNorGwXpKm7AoQAnvJ7bG0KlwKz-UTQXBFf_j2cvsw/s1600/UNO+nRF+receiver.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="310" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQu1DB0C7Tywuh9FCBo_fvm7MVxHrfPBrhlhkNTpNYnnkNn6o4s8FZgUoycvJea8jDcYUW87a1Goyr7Eqf0sneIbnPF3Nj9d96q3rNorGwXpKm7AoQAnvJ7bG0KlwKz-UTQXBFf_j2cvsw/s320/UNO+nRF+receiver.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Arduino UNO nRF24L01</td></tr>
</tbody></table>
Above is a picture of the receiver, nothing special, just an nRF24L01 with an adapter that plug directly to the Arduino pins or to a breadboard with jumper wires flying all over the place... ( ignore the 16x2 LCD, it was permanently there for other projects )<br />
<br />
I will not go though the programming codes on this post as they are still not fully optimize but I will post the links to them on pastebin.com. Below are the output from mini GPS software displaying all the satellite signals and my location had been masked to protect my identity.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvLXA8RhIjbO1Wil2jTm0PWnzS94R8LgsuDpNOwPyl_Az9hL_UuseVJ4ZNubcnbUatdz3Y7YkOLXM5A4fvyOrT_VC8nAzDPwgzLnzb9fSxbOSSEerw55hGRhVNr7iW5_pTCUV3jgS7Yu__/s1600/MiniGPS.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvLXA8RhIjbO1Wil2jTm0PWnzS94R8LgsuDpNOwPyl_Az9hL_UuseVJ4ZNubcnbUatdz3Y7YkOLXM5A4fvyOrT_VC8nAzDPwgzLnzb9fSxbOSSEerw55hGRhVNr7iW5_pTCUV3jgS7Yu__/s320/MiniGPS.png" width="210" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Mini GPS</td></tr>
</tbody></table>
Someone on Google+ asked me about using this setup ( nRF24L01+ and GPS module) on a remote control boat and I just discovered that you can use this setup to measure the range of the radio, just mark the initial GPS coordinates and the furthest distance the radio + GPS module can reached and calculate the distance using both the GPS coordinates.<br />
<br />
*** Special thanks to <a href="https://plus.google.com/109872379413386289076/posts">Greg</a> for helping me out on ideas, suggestions and coding the serial and nRF24L01 stuff.<br />
<br />
<br />
Summary Links :-<br />
- My Serial to nRF24L01 code V4 <a href="http://pastebin.com/mmMxgdCx">http://pastebin.com/mmMxgdCx</a><br />
- JHaskell's Arduino <a href="http://jhaskellsblog.blogspot.com/2011/05/serial-comm-fundamentals-on-arduino.html">Serial communications fundamentals</a><br />
- Arduiniana <a href="http://arduiniana.org/libraries/tinygps/">TinyGPS library</a><br />
<br /></div>
</div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-27214051043146570682013-04-22T19:11:00.002+08:002013-08-11T13:18:41.987+08:00Added TinyDebugSerial to attiny85<div dir="ltr" style="text-align: left;" trbidi="on">
One of the challenges of 8-pins attiny85 is that we do not have Serial Monitor debugging after flashing the hex into the IC. As per my previous blog, without debugging output, we cannot be sure what is happening when the attiny is up and running.<br />
<br />
While browsing the arduino forum, I came across this <a href="http://www.ernstc.dk/arduino/tinycom.html" target="_blank">site</a> that wrote about several methods to have serial communications to the attiny. Since I only have CSN & CE pins free when the nRF24L01 is not transmitting, I decide to go with the <b>TinyDebugSerial</b> method of serial output. This method will use the attiny85 PB3 pin and transmit to the Serial-TTL receiver or an Arduino.<br />
<br />
You can use a USB-Serial TTL module or an Arduino to receive the serial transmitted by the attiny and only use one pin on the attiny. Since I have an extra USB FTDI to Serial TTL breakout board, I will use this board and also power up the attiny and nRF24L01 using the on-board selectable 5V/3.3V regulator. Choose 3.3V jumper as the nRF24L01 can only take up to 3.8V only.<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicI-7QEJFa_qR13l0QzKQ0i8cABXwjGAFPTM-Uv_t3afbHUDfqa9mUixG3SEBE6QZfeMrrsRhC1aa5gYnUgKXrpdwysd3YrvvpgkQT2k2EuD9ZpN3IxB5z0IMNIHmM3eS2GccJkmV5DNhb/s1600/attiny+with+FTDI+BoB2.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="150" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicI-7QEJFa_qR13l0QzKQ0i8cABXwjGAFPTM-Uv_t3afbHUDfqa9mUixG3SEBE6QZfeMrrsRhC1aa5gYnUgKXrpdwysd3YrvvpgkQT2k2EuD9ZpN3IxB5z0IMNIHmM3eS2GccJkmV5DNhb/s320/attiny+with+FTDI+BoB2.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny/nRF24L01 with FTDI BoB</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: left;">
The above image is my prototype with 6-pin ICSP header on top of the attiny85 with connections to the nRF24L01 and TX to the RX of the FTDI. When I am programming the attiny85, I had to remove the nRF24L01 transceiver and Vcc jumper cable from the FTDI as my USBtinyISP is providing power to the attiny85 and prevent the nRF24L01 transceiver from interfering the attiny85 during flashing/programming the chip. Once the USBtinyISP programming is done, I can immediately "see" the output from the USB-FTDI on my console/serial monitor. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRV4J70VMhL42NMt3BgaZLV4zeAAxr4scKnZlLLCzVBXEsbL4CpRVJiQdfmCo95vh_fwFT1IGPlaD0ZiaKPV8VzMhBuNKkxQFiWaBLR4d6Kk9Z6giQ46628SPEUi94TzSozAVlzyWb8WvK/s1600/usb_serial.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="91" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRV4J70VMhL42NMt3BgaZLV4zeAAxr4scKnZlLLCzVBXEsbL4CpRVJiQdfmCo95vh_fwFT1IGPlaD0ZiaKPV8VzMhBuNKkxQFiWaBLR4d6Kk9Z6giQ46628SPEUi94TzSozAVlzyWb8WvK/s320/usb_serial.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny to USB-Serial TTL</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
The first step is to install the new tiny cores from <a href="https://code.google.com/p/arduino-tiny/">https://code.google.com/p/arduino-tiny/</a> and compile the codes with the new cores to make it everything is working without the extra codes. Once everything is working fine, I added the following lines to my codes :-<br />
<br />
<br />
#include <TinyDebugSerial.h><br />
TinyDebugSerial mySerial = TinyDebugSerial();<br />
<br />
// Put this in setup()<br />
mySerial.begin( 9600 );<br />
<br />
// Put this in loop()<br />
<br />
mySerial.print("Sent :");<br />
mySerial.println(buffer);<br />
<br />
<br />
The rest of the code is at the github repo under libraries/mirf85/examples at the link below.<br />
<br />
When I tried to compiled it, I got the following compilation errors due to using an older version of WinAVR on Windows or older avr-gcc on Mac OSX software on the Arduino IDE 1.0.1.<br />
<br />
<span style="background-color: whitesmoke; color: #666666; font-family: 'Lucida Grande', Lucida, Verdana, sans-serif; font-size: 16.66666603088379px; line-height: 23.46354103088379px;"><b>"R_AVR_13_PCREL against symbol `exit' defined in .fini9 section in" </b></span><br />
<br />
Here are the links to the fixes and I will not rewrite it here... it have to do with an updated ld file for the avr.<br />
<br />
Windows fixes :- <a href="http://arduino.cc/forum/index.php/topic,116674.0.html">Arduino Forum</a><br />
Max OSX fixes :- <a href="http://arduino.cc/forum/index.php/topic,116674.msg881917.html#msg881917">Arduino Forum</a><br />
<br />
Once the above fixes is applied, I was able to see serial output on my USB-Serial on the serial monitor or any terminal program.<br />
<br />
Summary Links :-<br />
- Updated <a href="https://github.com/stanleyseow/arduino-nrf24l01" target="_blank">github</a> repo<br />
- <a href="http://www.ernstc.dk/arduino/tinycom.html" target="_blank">Serial Comms with attiny</a><br />
- <a href="http://www.rudiswiki.de/wiki9/AVRTinyISP" target="_blank">Atmel AVR TinyISP</a><br />
- Attiny cores <a href="https://code.google.com/p/arduino-tiny/" target="_blank">https://code.google.com/p/arduino-tiny/</a> with TinyDebugSerial<br />
- <a href="http://arduino.cc/forum/index.php/topic,116674.0.html">Window fixes for R_AVR_13_PCREL</a><br />
- <a href="http://arduino.cc/forum/index.php/topic,116674.msg881917.html#msg881917">Mac OSX fixes for R_AVR_13_PCREL</a><br />
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-47482661662351925512013-04-13T14:35:00.000+08:002013-08-11T13:15:54.046+08:00Process of getting attiny85 to work with nRF24L01 on RF24 libraries<div dir="ltr" style="text-align: left;" trbidi="on">
While getting Arduino or Raspberry Pi to talk to nRF24L01 was fun and challenging, trying to make it work for a 8-pin attiny85 is a whole different experience... without serial monitor or printf debugging to the display, after the firmware was flash into the attiny85, you could only guess what is happenning or not happening when nothing was received on the nRF24L01 receiver side...<br />
<br />
Initially, I just assume that since the Atmel attiny85 does not have hardware SPI, getting nRF24L01 talking to the attiny was not so possible... but after a few searches and reading up some blogs and forums, things seems to look brighter...<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyW81mPO9a1JSIWzDq9ajo8yLjpsEpFLwlGDbCRhO-f5R5RJd8VF-_X3THUpQs7tQF5aLyOWVXza7KDFnd80PzrUBe70AcThzE6W1J2cs03AdT4GS91ZloIqcApxcPkMvDk3_kQIelwZPt/s1600/attiny_pinout.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="50" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyW81mPO9a1JSIWzDq9ajo8yLjpsEpFLwlGDbCRhO-f5R5RJd8VF-_X3THUpQs7tQF5aLyOWVXza7KDFnd80PzrUBe70AcThzE6W1J2cs03AdT4GS91ZloIqcApxcPkMvDk3_kQIelwZPt/s400/attiny_pinout.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny85 pinout</td></tr>
</tbody></table>
<br />
The second challenge was the usable pins on the attiny85, with 8 pins and two used by power and ground, only six pins are available... and the nRF24L01 radios uses the usual SPI - MOSI, MISO, CLK plus another two pins for SS/CSN and CE leaving only the reset pin unused.<br />
<br />
The third challenge was size of the firmware, unlike Arduino UNO using atmega328 with 32Kb of flash, the attiny85 only have 8Kb of flash, so optimizing the code was really important, and this is the largest flash size of the attiny x5 series. See this <a href="http://en.wikipedia.org/wiki/Atmel_AVR_ATtiny_comparison_chart" target="_blank">link</a> for the attiny comparison chart. <br />
<br />
With the help of Alex from <a href="http://www.insidegadgets.com/2012/08/22/using-the-nrf24l01-wireless-module/#comment-79608" target="_blank">Insidegadgets.com</a>, I start from a scaled down mirf codes ( <a href="http://www.tinkerer.eu/AVRLib/nRF24L01" target="_blank">mirf</a> was the initial libraries for nRF24L01 written in C for the AVR ) using notepad, WinAVR and avrdude to compile and flash the firmware into the attiny85. Then I was using a ported version to Arduino IDE that makes things much more easier as Arduino IDE can still support <a href="http://www.ladyada.net/make/usbtinyisp/" target="_blank">USBtinyISP</a>, the programmer I was using to flash firmware into the attiny85.<br />
<br />
After a few unsuccessful retries, I decide to use a different approach and found on Arduino <a href="http://arduino.cc/forum/index.php/topic,115822.0.html" target="_blank">forum</a> that someone had modified the Arduino SPI and mirf into ther attiny85 version called SPI85 and mirf85. After matching all the channels, data rate and CRC, I manage to get some packets on Serial Monitor with a mirf library on the Arduino UNO.<br />
<br />
Since all my libraries are using RF24 for both the Arduino & Raspberry Pi, having a mirf library isn't too much useful for me. I went through all the codes and default settings and managed to configure the mirf to be compatible with RF24 library.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw2VKPY67Nm_Cut9z6qdON4dOSilVyp6VzBSyZXNHAeT1Z8hcL9EHID46UIFIqI0ljb5vHq951NePCgiyIbvDDIZxNdXhPtY1O296fJRcrhg4ZRcgB4DYyHG2yzBJIxQemFASoFwr4D59Q/s1600/attiny85+nRF24L01+USBtinyISP.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw2VKPY67Nm_Cut9z6qdON4dOSilVyp6VzBSyZXNHAeT1Z8hcL9EHID46UIFIqI0ljb5vHq951NePCgiyIbvDDIZxNdXhPtY1O296fJRcrhg4ZRcgB4DYyHG2yzBJIxQemFASoFwr4D59Q/s320/attiny85+nRF24L01+USBtinyISP.jpg" width="240" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">attiny85 nRF24L01 USBtinyISP</td></tr>
</tbody></table>
<br />
<br />
Here are a summary of differences between both the mirf and RF24 library :-<br />
<br />
<u><b>Data rate :</b></u><br />
mirf : 2Mbps as it uses the default registry setting of the nRF24L01<br />
RF24 : configurable via setDataRate()<br />
<br />
<u><b>CRC length :</b></u><br />
mirf : 8bit CRC length<br />
To make it work for the RF24, change the following header files directly :-<br />
mirf85.h<br />
#define mirf_CONFIG ((1<<EN_CRC) | (<b>1</b><<CRCO) )<br />
<br />
RF24 : configurable via setCRCLength()<br />
<br />
<u><b>Node addressing :</b></u><br />
mirf : serv1 or clie1 ( 5 bytes in ascii format )<br />
To talk to RF24 receiver, use the following format, :-<br />
<br />
byte RADDR[] = {0xe2, 0xf0, 0xf0, 0xf0, 0xf0};<br />
byte TADDR[] = {0xe3, 0xf0, 0xf0, 0xf0, 0xf0};<br />
<br />
<br />
RF24: f0f0f0f0e2 format ( 5 bytes in hex format )<br />
<br />
Optional settings :-<br />
<br />
<u><b>Enable Dynamic Payload :</b></u><br />
I had my RF24 receiver with dynamic payload enabled so that I only need to set the payload size on transmitter only and can use different payload length instead of the max length.. set the below to mirf codes to enable dynamic payload.<br />
<br />
mirf : <br />
Mirf.configRegister( FEATURE, 1<<EN_DPL );<br />
Mirf.configRegister( DYNPD, 1<<DPL_P0 | 1<<DPL_P1 | 1<<DPL_P2 | 1<<DPL_P3 | 1<<DPL_P4 | 1<<DPL_P5 );<br />
<br />
I've compiled all the SPI85 and mirf85 files at github repo at the summary links below.<br />
<br />
Summary Links :-<br />
<br />
- <a href="https://github.com/stanleyseow/arduino-nrf24l01">https://github.com/stanleyseow/arduino-nrf24l01</a><br />
- <a href="http://www.insidegadgets.com/2012/08/22/using-the-nrf24l01-wireless-module/#comment-79608" target="_blank">Insidegadgets.com</a><br />
- Arduino <a href="http://arduino.cc/forum/index.php/topic,115822.0.html" target="_blank">forum</a><br />
<br />
<br />
<br />
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-77169532651336877282013-04-06T13:11:00.002+08:002013-04-06T13:12:34.806+08:00Finally got all RPi & UNO combinations working for nRF24L01<div dir="ltr" style="text-align: left;" trbidi="on">
I have finally setup my second Raspberry Pi with 512M memory, clone the github RF24 ( <a href="https://github.com/stanleyseow/RF24" target="_blank">https://github.com/stanleyseow/RF24</a> ) and can finally test all the combinations :-<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6a3mXiVy6cfi8w90W7fJHd2QBaxDfWDTqA5hIsdp056k7fv1PwSlCoEoiQ_SEd_oIY0bhIm6C7cWNf_etWPKWHvDZ9Kvvolm38Eifs9qdxKE5wSRCUWKrA3_5Hi5WVZqbEVqYfVAUFaGm/s1600/rpi-hub.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6a3mXiVy6cfi8w90W7fJHd2QBaxDfWDTqA5hIsdp056k7fv1PwSlCoEoiQ_SEd_oIY0bhIm6C7cWNf_etWPKWHvDZ9Kvvolm38Eifs9qdxKE5wSRCUWKrA3_5Hi5WVZqbEVqYfVAUFaGm/s320/rpi-hub.jpg" width="318" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">rpi-hub.cpp</td></tr>
</tbody></table>
<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8uTd8w4LF6IjJO_fhpOxcitoNuQ7lPIdU1iXdnIibJC8evscU6GgMgwpiMI7IT4GZUNdKpxiu0lnX8-or5sthhU0lwVud6hyRaE3vNEY-zXi6uQO8BK4h_uDZlmEUFN9UT37z1wtnLLNA/s1600/sendto_hub.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8uTd8w4LF6IjJO_fhpOxcitoNuQ7lPIdU1iXdnIibJC8evscU6GgMgwpiMI7IT4GZUNdKpxiu0lnX8-or5sthhU0lwVud6hyRaE3vNEY-zXi6uQO8BK4h_uDZlmEUFN9UT37z1wtnLLNA/s320/sendto_hub.jpg" width="266" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">sendto_hub.cpp</td></tr>
</tbody></table>
Possible combo :-<br />
<br />
- Raspberry Pi as hub<br />
- Arduino as node<br />
<br />
- Raspberry Pi as hub<br />
- Raspberry Pi as node<br />
<br />
- Arduino as hub<br />
- Arduino as node<br />
<br />
- Aduino as hub<br />
- Raspberry Pi as node<br />
<br />
<br />
<br />
<br />
If anyone got the above codes tested on other platform like Arduino Mega2560, Due or other platforms, please let me know the details and links so that I can update my summary links for others..<br />
<br />
My latest github repo have combined forked from <a href="https://github.com/gcopeland/RF24/">https://github.com/gcopeland/RF24/</a> and I've added some of the changes into the Raspberry Pi codes.<br />
<br />
Do read an articl from Greg on RF24 performance enchantments at <a href="http://maniacalbits.blogspot.com/2013/04/rf24-avoiding-rx-pipe-0-for-enhanced.html">http://maniacalbits.blogspot.com/2013/04/rf24-avoiding-rx-pipe-0-for-enhanced.html</a><br />
<br />
<br />
<br />
As usual, I've all summary links below :-<br />
<br />
- Raspberry Pi as hub ( <a href="https://github.com/stanleyseow/RF24/blob/master/librf24-rpi/librf24/examples/rpi-hub.cpp" target="_blank">rpi-hub.cpp</a> )<br />
- Raspberry Pi as node ( <a href="https://github.com/stanleyseow/RF24/blob/master/librf24-rpi/librf24/examples/sendto_hub.cpp" target="_blank">sendto_hub.cpp</a> )<br />
<br />
- Arduino as hub <a href="https://github.com/stanleyseow/RF24/tree/master/examples/nRF24_Arduino_as_hub" target="_blank">nRF24_Arduino_as_hub</a><br />
- Arduino as node <a href="https://github.com/stanleyseow/RF24/tree/master/examples/nRF24_sendto_hub" target="_blank">nRF24_sendto_hub</a><br />
<br />
<br />
<br />
<br />
<br /></div>
Unknownnoreply@blogger.com11tag:blogger.com,1999:blog-236630323640582849.post-60542852783343719312013-03-06T14:52:00.001+08:002013-03-26T19:15:13.953+08:00Migrated RF24 codes to github<div dir="ltr" style="text-align: left;" trbidi="on">
I've migrated my previous static codes to github's RF24 libs at https://github.com/stanleyseow/RF24<br />
This is a fork from gnulnulf codes that uses dynamic rf24 RPi libraries...<br />
<br />
This will be using the Arduino maniacbug's RF24 libraries in additional to the Raspberry Pi codes under a different folder...<br />
<br />
Changes to take note from my initial instructions :-<br />
<br />
- CE is now using GPIO25<br />
- CSN is now using GPIO8 (CE0)<br />
<br />
Thanks to gnulnulf, you can specify the devices inside of the codes as below :-<br />
<br />
<br />
RF24 radio("/dev/spidev0.0",8000000 , 25); <br />
<br />
<div>
The files are located at RF24/librf24-rpi</div>
<div>
<br /></div>
<div>
<u>Instructions on using github version for RPi :-</u></div>
<div>
<br /></div>
<div>
Using git, issue the following instructions :-</div>
<div>
<br /></div>
<div>
git clone https://github.com/gnulnulf/RF24.git</div>
<div>
$ cd RF24</div>
<div>
$ cd librf24-rpi/librf24</div>
<div>
$ make <span style="color: blue;"><--- Compile the files</span></div>
<div>
$ sudo make install <span style="color: blue;"><--- This will install the librf24.so.1.0 into the shared libraries</span></div>
<div>
$ sudo ldconfig -v | grep librf</div>
<div>
<br /></div>
<div>
librf24.so.1 -> librf24.so.1.0</div>
<div>
<br /></div>
<div>
$ cd examples</div>
<div>
$ make</div>
<div>
<br /></div>
<div>
To run the programs, type sudo ./rpi-hub or sudo ./scanner</div>
<div>
<br /></div>
<div>
*** You need sudo to access the spidev0.0 device</div>
<div>
</div>
<div>
<u>Instruction on Arduino :-</u></div>
<div>
<br /></div>
<div>
Got examples/RF24/rpi_hub_arduino</div>
<div>
<br /></div>
<div>
Compile and upload to the Arduino</div>
<div>
<br /></div>
<div>
Connect a small buzzer to digital Pin2</div>
<div>
<br /></div>
<div>
If everything is working, you should hear a short beep ...</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
Summary Links :-</div>
<div>
<br /></div>
<div>
<a href="https://github.com/stanleyseow/RF24">https://github.com/stanleyseow/RF24</a> ( Arduino RF24 and RaspberryPi libs codes all in one )</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
</div>
Unknownnoreply@blogger.com2tag:blogger.com,1999:blog-236630323640582849.post-80413111253362609062013-02-27T03:39:00.002+08:002013-04-06T12:21:41.364+08:00Made a slot for NRF module directly onto Arduino digital pins<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
Once I ran out of jumper cables, I've made a slot to hold the nRF module that sits directly onto Arduino UNO digital pins.<br />
<br />
I've change the CSN pin from pin7 to pin9 and swap the LCD pin9 to pin7. This is reflected in my latest codes below.<br />
<br />
<br />
// Set up nRF24L01 radio on SPI pin for CE, CSN ( *** older codes uses Pin 7 instead )<br />
RF24 radio(8,9);<br />
<br />
<br />
LiquidCrystal lcd(10, 7, 3, 4, 5, 6);<br />
// Make way for the SPI pins<br />
// 10 -> LCD 4<br />
// 7 -> LCD 6<br />
// 3 -> LCD 11<br />
// 4 -> LCD 12<br />
// 5 -> LCD 13<br />
// 6 -> LCD 14<br />
<br />
<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkhoJdAQL4beTZHbTXltSNN9jc1ghJ9vTNhmGc72QR9Hq9pWDdNpr0cIazcr0TfSAwH54eK6ETgsSZIwXaXDMen_lo7TO7m1Tck2O34XNN_99sjXA6-Cj6Y1boj_1JtHODA3zBSajvQfhX/s1600/Arduino+UNO+with+nRF+slots.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkhoJdAQL4beTZHbTXltSNN9jc1ghJ9vTNhmGc72QR9Hq9pWDdNpr0cIazcr0TfSAwH54eK6ETgsSZIwXaXDMen_lo7TO7m1Tck2O34XNN_99sjXA6-Cj6Y1boj_1JtHODA3zBSajvQfhX/s320/Arduino+UNO+with+nRF+slots.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="font-size: 13px;">Arduino with nRF slot directly to digital pins</td></tr>
</tbody></table>
<br />
<br />
I've re-wrote both the program on the Raspberry Pi and Arduino to make it more practical use. I've made the Raspberry Pi as the central hub to receive sensor data from Arduino nodes and returned back the same data to the sender for calculating the round-trip time (rtt).<br />
<br />
You can download the updated codes at the summary links below.<br />
<br />
I'm using all the pipes for each of the nodes, so if you want to use this codes, uncomment the pipes for different nodes to send payload to the Raspberry Pi using different node address.<br />
<br />
<br />
// Radio pipe addresses for the 2 nodes to communicate. Uncomment for the active node<br />
const uint64_t pipes[2] = { 0xF0F0F0F0E1LL, 0xF0F0F0F0D2LL };<br />
// const uint64_t pipes[2] = { 0xF0F0F0F0E2LL, 0xF0F0F0F0D2LL };<br />
// const uint64_t pipes[2] = { 0xF0F0F0F0E3LL, 0xF0F0F0F0D2LL };<br />
// const uint64_t pipes[2] = { 0xF0F0F0F0F1LL, 0xF0F0F0F0D2LL };<br />
// const uint64_t pipes[2] = { 0xF0F0F0F0F2LL, 0xF0F0F0F0D2LL };<br />
// Pipe0 is F0F0F0F0D2 ( same as reading pipe )<br />
<br />
<br />
*** You can either connect a small buzzer or LED to pin2 for audio/visual acknowledgement the payload once it is returned and matched the outBuffer payload sent to the RPi.<br />
<br />
<br />
Summary Links :-<br />
<br />
- RF24 libs/codes on github:- <a href="https://github.com/stanleyseow/RF24">https://github.com/stanleyseow/RF24</a> ( all Arduino & Raspberry Pi codes are on github )<br />
<br />
<br />
<br />
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-236630323640582849.post-41090608766460320632013-02-19T23:11:00.001+08:002013-03-07T01:37:09.352+08:00Setup Nordic nRF24L01 RF modules to both Arduino UNO and Raspberry Pi<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div class="p2">
In my process of building a Wireless Sensor Network, I obtained a few low cost RF module from Inhaos that are compatible with Nordic Semiconductor nRF24L01. My plans are to have these low cost RF modules replaces the wires for my sensor network on Arduino and connect them to Raspberry Pi as the IP gateway to the rest of the Internet.</div>
<div class="p2">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="p2">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCrgZ89-8pqYX8j1-uyAlalpSr_0qgNDi4v8qV1u7_Jhi-HQKmxvvMKRX2t6WsQJudse3-zyZYLNBY7rNzbHLr8ygH9Hk8HdG8giwACydTA5sBnyC0eFmK1m34GCfSFtLWJgMJVcflNi7B/s1600/RPi+nRF+BT.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="271" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCrgZ89-8pqYX8j1-uyAlalpSr_0qgNDi4v8qV1u7_Jhi-HQKmxvvMKRX2t6WsQJudse3-zyZYLNBY7rNzbHLr8ygH9Hk8HdG8giwACydTA5sBnyC0eFmK1m34GCfSFtLWJgMJVcflNi7B/s400/RPi+nRF+BT.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Raspberry Pi with nRF24L01-PA-LNA with BT module and USB Wifi</td></tr>
</tbody></table>
<br /></div>
<div class="p2">
<br /></div>
<div class="p2">
This entry will show you on how to setup both Arduino UNO & Raspberry Pi to connect to these nRF24L01 modules.</div>
<div class="p1">
<br /></div>
<div class="p2">
Some basic information on these low cost RF modules, they communicate using SPI to the microcontroller and works on raw speed of 250Kbps, 1Mbps and 2Mbps.</div>
<div class="p1">
<br /></div>
<div class="p2">
I'm using the following hardware & software:-</div>
<div class="p1">
<br /></div>
<div class="p2">
Arduino UNO with maniacbug RF24 libraries ( <a href="http://arduino.cc/forum/index.php/topic,62222.0.html">http://arduino.cc/forum/index.php/topic,62222.0.html</a> / <a href="http://maniacbug.github.com/RF24/index.html">http://maniacbug.github.com/RF24/index.html</a> )</div>
<div class="p1">
<br /></div>
<div class="p2">
Raspberry Pi Model B running Adafruit's Occidentalis V0.2 ( <a href="http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/occidentalis-v0-dot-2">http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/occidentalis-v0-dot-2</a> ) that support SPI.</div>
<div class="p1">
<br /></div>
<div class="p2">
Nordic Semiconductor Datasheet / Product Info ( <a href="http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P">http://www.nordicsemi.com/eng/Products/2.4GHz-RF/nRF24L01P</a> )</div>
<div class="p1">
<br /></div>
<div class="p2">
RF modules used here :-</div>
<div class="p2">
------------------</div>
<div class="p2">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVxYbQ-RQk0E0LvkDZSAntIpTf-6gWClPXf3tXPECTJmJ8thstVbiea8leirdOycfnBtLh4wvdIXaDU_MpPu0V5Eo3dvesl_e7eUfRRZKniBr31FV0WH0lWQeUkMUVsrWHrkO75MzDE441/s1600/nRF24L01PA-LNA.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="208" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVxYbQ-RQk0E0LvkDZSAntIpTf-6gWClPXf3tXPECTJmJ8thstVbiea8leirdOycfnBtLh4wvdIXaDU_MpPu0V5Eo3dvesl_e7eUfRRZKniBr31FV0WH0lWQeUkMUVsrWHrkO75MzDE441/s320/nRF24L01PA-LNA.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01+ PA+LNA+2dBi ant</td></tr>
</tbody></table>
<div class="p2">
<br /></div>
<div class="p2">
nRF24L01+ with PA & LNA and 2 dBi antenna ( <a href="http://www.elecfreaks.com/wiki/index.php?title=2.4G_Wireless_nRF24L01p_with_PA_and_LNA">http://www.elecfreaks.com/wiki/index.php?title=2.4G_Wireless_nRF24L01p_with_PA_and_LNA</a> ), these are long range RF modules acting as hub on the Raspberry Pi.</div>
<div class="p1">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK0YFXVSEdHCsOCB5sVhj9mDX61W6EN_Ojn2wr1VxC8AYYlfhtLbl_VJyxkbuyofs2XnupNyXHRmPqE5wuB1-Qg7MrYvB-Rx-VE1-c6mpKgkRPqZe5i3af17k-SLA0DvIXc7qFBkwBfoyV/s1600/RF2400P.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="259" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK0YFXVSEdHCsOCB5sVhj9mDX61W6EN_Ojn2wr1VxC8AYYlfhtLbl_VJyxkbuyofs2XnupNyXHRmPqE5wuB1-Qg7MrYvB-Rx-VE1-c6mpKgkRPqZe5i3af17k-SLA0DvIXc7qFBkwBfoyV/s320/RF2400P.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Inhaos RF2400P</td></tr>
</tbody></table>
<div class="p1">
<br /></div>
<div class="p1">
<br /></div>
<div class="p2">
Inhaos RF2400P (with 5dBm RF power output) on BEKEN Chipset ( <a href="http://www.inhaos.com/product_info.php?products_id=35">http://www.inhaos.com/product_info.php?products_id=35</a> ). They are compatible with the nRF24L01 but with higher output power of 5dBm.</div>
<div class="p1">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDYmzx_SlJDuxPbRDzkhrMaGHubnZhc0s5ztHkOqcWxRCmEJUkV_fToPN1D25DXNATUH3Mv9FWw7Yavt1os0Wdg5EBnlJ1EQVBZvPoQNad4wCcVZIwWvlMZM8PzAxu3MAkWhdFDPFKA06A/s1600/nRF24L01p.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="173" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDYmzx_SlJDuxPbRDzkhrMaGHubnZhc0s5ztHkOqcWxRCmEJUkV_fToPN1D25DXNATUH3Mv9FWw7Yavt1os0Wdg5EBnlJ1EQVBZvPoQNad4wCcVZIwWvlMZM8PzAxu3MAkWhdFDPFKA06A/s320/nRF24L01p.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">nRF24L01+</td></tr>
</tbody></table>
<div class="p1">
<br /></div>
<div class="p1">
<br /></div>
<div class="p2">
nRF24L01+ ( <a href="http://www.elecfreaks.com/store/24g-wireless-nrf24l01p-p-118.html">http://www.elecfreaks.com/store/24g-wireless-nrf24l01p-p-118.html</a> or <a href="http://store.iteadstudio.com/index.php?main_page=product_info&cPath=7&products_id=53">http://store.iteadstudio.com/index.php?main_page=product_info&cPath=7&products_id=53</a> )</div>
<div class="p2">
Too many to choose from, just google for the above keyword on eBay or choose the cheapest as they sells in bulk of 10 pieces for a very low cost...</div>
<div class="p1">
<br /></div>
<div class="p2">
*** The main differences between the regular nRF24L01+ modules and the Inhaos RF2400P modules are that the RF2400P have a higher output power of 5dBm but could not do 250Kbps speed.</div>
<div class="p1">
<br /></div>
<div class="p2">
I'm running my setup using 1Mbps speed.</div>
<div class="p1">
<br /></div>
<div class="p2">
<u>Setting up Arduino </u></div>
<div class="p2">
<br /></div>
<div class="p2">
Connect using jumper wires from the above pin to the nRF24L01+ modules</div>
<div class="p2">
Upload the sketches/program to the Arduino, download it <a href="https://www.dropbox.com/s/k6hh3r32d8ob9c2/Arduino%20nRF24_String_Pingback_RPi.zip" target="_blank">here</a> from Dropbox. </div>
<div class="p2">
<br /></div>
<div class="p1">
<br /></div>
<div class="p1">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1bXQm80YoWiKMycnN40pFWzE5JxCWcEyCX8qEfGo9S5JOSSe3rg-7KRSrmb9vbwcRH-wN0FYSACNKqgqST-3r9cqPmqmkNvuLtGAIAZUbwqdd2ZqGJqCGReJwlxB03OwHlcZyti_Iaq6L/s1600/Arduino+nRF+.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1bXQm80YoWiKMycnN40pFWzE5JxCWcEyCX8qEfGo9S5JOSSe3rg-7KRSrmb9vbwcRH-wN0FYSACNKqgqST-3r9cqPmqmkNvuLtGAIAZUbwqdd2ZqGJqCGReJwlxB03OwHlcZyti_Iaq6L/s320/Arduino+nRF+.jpg" width="277" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Arduino UNO with nRF24L01+/PA/LNA/2dBi ant</td></tr>
</tbody></table>
<br /></div>
<div class="p1">
<br /></div>
<div class="p2">
Arduino connections to the nRF24L01 modules :-</div>
<div class="p1">
<br /></div>
<div class="p2">
Arduino Pin 11 to RF Module Pin 6 ( MOSI)</div>
<div class="p2">
Arduino Pin 12 to RF Module Pin 7 ( MISO )</div>
<div class="p2">
Arduino Pin 13 to RF Module Pin 5 ( SCK )</div>
<div class="p2">
Arduino Pin 7 to RF Module Pin 4 ( CSN )</div>
<div class="p2">
Arduino Pin 8 to RF Module Pin 3 ( CE )</div>
<div class="p2">
Arduino 3.3V to RF Module Pin 2 ( VCC / 3.3V ) <span style="color: red;">*** RF Module can only take 3.3V</span> </div>
<div class="p2">
Arduino GND to RF Module Pin 1 ( GND )</div>
<div class="p2">
RF Module Pin 8 (IRQ) is not connected</div>
<div class="p1">
<br /></div>
<div class="p2">
*** All the other pins are 5V tolerant</div>
<div class="p1">
<br /></div>
<div class="p2">
Optional LCD Module to display the received payload & payload length :-</div>
<div class="p1">
<br /></div>
<div class="p2">
I'm using Arduino Pin 7 & 8 for the SPI because my LCD module is using the following pins :-</div>
<div class="p1">
<br /></div>
<div class="p2">
Arduino Pin 9 - LCD Pin 4</div>
<div class="p2">
Arduino Pin 10 - LCD Pin 6</div>
<div class="p2">
Arduino Pin 3 - LCD Pin 11</div>
<div class="p2">
Arduino Pin 4 - LCD Pin 12</div>
<div class="p2">
Arduino Pin 5 - LCD Pin 13</div>
<div class="p2">
Arduino Pin 6 - LCD Pin 14</div>
<div class="p1">
<br /></div>
<div class="p2">
Arduino Pin 2 - connect to buzzer ( for sound feedback when it received a valid packet )</div>
<div class="p1">
<br /></div>
<div class="p1">
<br /></div>
<div class="p2">
<u>Setting up Raspberry Pi</u></div>
<div class="p2">
<br /></div>
<div class="p2">
Upgrade your Raspberry Pi firmware to Adafruit <a href="http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/occidentalis-v0-dot-2" target="_blank">Occidentalis V0.2</a> that support hardware SPI.</div>
<div class="p2">
<br /></div>
<div class="p2">
Download the above firmware and flash your SD card according to the instruction on Adafruit/Raspberry Pi website.</div>
<div class="p1">
<br /></div>
<div class="p2">
Refer to the two Raspberry Pi GPIO pinout and the physical pinout.</div>
<div class="p1">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFBHKZMhSaxy4fD0FvZ8n8Cpu8jSEoS72Io5CLh3WAJ5JOFMLy8BPF23SSsdHdhNi3Hw8R0QuCfO8Bg_J2s_1DhWcwCbsXM0DnW1DfZIvu-CsJGE3J5ziXM_i2XwbbRKxWl1w-j6KT64dA/s1600/RPi+pinout+GPIO.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="150" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFBHKZMhSaxy4fD0FvZ8n8Cpu8jSEoS72Io5CLh3WAJ5JOFMLy8BPF23SSsdHdhNi3Hw8R0QuCfO8Bg_J2s_1DhWcwCbsXM0DnW1DfZIvu-CsJGE3J5ziXM_i2XwbbRKxWl1w-j6KT64dA/s320/RPi+pinout+GPIO.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Raspberry Pi GPIO</td></tr>
</tbody></table>
<div class="p1">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiA4Elczs5pJ4ydKD-gHxHkdiPo3FglrgSRa5Fg_ZV2fqccRYS5SqqXHnidF5iYwGARhhpZKEr0Q1-78QfAk21SXoi2ZNPCjdeNJqtWFIh2awl65qDzhsDnBoO9uS81Lkqga9wlcPhRBz-/s1600/Photo+04-02-2013+02+38+54+AM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="139" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiA4Elczs5pJ4ydKD-gHxHkdiPo3FglrgSRa5Fg_ZV2fqccRYS5SqqXHnidF5iYwGARhhpZKEr0Q1-78QfAk21SXoi2ZNPCjdeNJqtWFIh2awl65qDzhsDnBoO9uS81Lkqga9wlcPhRBz-/s320/Photo+04-02-2013+02+38+54+AM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">GPIO with pin functions</td></tr>
</tbody></table>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br /></div>
<div class="p2">
RPi GPIO9 (Pin 21) to RF Module Pin 7 ( MISO )</div>
<div class="p2">
RPi GPIO10 (Pin 19) to RF Module Pin 6 ( MOSI )</div>
<div class="p2">
RPi GPIO 11 (Pin 23) to RF Module Pin 5 ( SCK )</div>
<div class="p2">
RPi GPIO8 (Pin 24) to RF Module Pin 3 ( CE )</div>
<div class="p2">
RPi GPIO 25 (Pin 22) to RF Module Pin 4 ( CSN )</div>
<div class="p2">
RPI 3.3V (Pin 17) to RF Module Pin 2 ( VCC/3.3V )</div>
<div class="p2">
RPi Gnd (Pin 25) to RF Module Pin 1 (GND)</div>
<div class="p2">
<br /></div>
<div class="p2">
<br />
<br />
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<u>Instructions on using github version for RPi :-</u></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
Using git, issue the following instructions on Raspberry Pi command prompt :-</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ git clone https://github.com/stanleyseow/RF24.git</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ cd RF24</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ cd librf24-rpi/librf24</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ make <--- Compile the files</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ sudo make install <--- This will install the librf24.so.1.0 into the shared libraries</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ sudo ldconfig -v | grep librf</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
librf24.so.1 -> librf24.so.1.0</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ cd ../examples/</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ make</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
To run the programs, type </div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ sudo ./rpi-hub </div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
or </div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
$ sudo ./scanner</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
*** You need sudo/root to access the spidev0.0 device</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<u>Instruction on Arduino :-</u></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
Got examples/RF24/rpi_hub_arduino ( make sure the pins matches the above Arduino pinout )</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
Compile and upload to the Arduino</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
Optional :- Connect a small buzzer to digital Pin2 to hear a beep when the packet is returned to sender</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
If everything is working, you should see a screenshot below :-</div>
<div style="background-color: white; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2r1UPTANYh50OyHKbWWi3hLlPx69M6nd48HOOi6S6JlGSGsVx0rLQa3hHt0xuXjKt3cDoXgQOE8h9WNe4vn6flYEOHJ74e0PCNg4iCXvKUeySnoEd7qvpnXRgdB6DRBj6SNNxQONDztO3/s1600/rpi-hub+screenshot.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="286" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2r1UPTANYh50OyHKbWWi3hLlPx69M6nd48HOOi6S6JlGSGsVx0rLQa3hHt0xuXjKt3cDoXgQOE8h9WNe4vn6flYEOHJ74e0PCNg4iCXvKUeySnoEd7qvpnXRgdB6DRBj6SNNxQONDztO3/s400/rpi-hub+screenshot.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">rpi-hub screenshot</td></tr>
</tbody></table>
<div style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
<div style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, sans-serif; font-size: 13px; line-height: 18px;">
<br /></div>
</div>
<div class="p1">
Summary Links :-</div>
<div class="p1">
<br /></div>
<div class="p1">
- Raspberry Pi firmware :- Adafruit <a href="http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/occidentalis-v0-dot-2" target="_blank">Occidentalis-v0.2</a><br />
<br /></div>
<div class="p1">
- RF24 library (Arduino & RPi libs) on Github <a href="https://github.com/stanleyseow/RF24">https://github.com/stanleyseow/RF24</a><br />
<br />
Datasheets :-</div>
<div class="p1">
- Nordic nRF24L01+ Datasheet :- <a href="http://www.nordicsemi.com/eng/nordic/download_resource/8765/2/18636472" target="_blank">nRF24L01+ DS</a><br />
<br />
Forum :-<br />
- Raspberry Pi Forum on nRF24L01 <a href="http://www.raspberrypi.org/phpBB3/viewtopic.php?f=45&t=17061&hilit=nRF24L01" target="_blank">Click here</a><br />
- Arduino Forum on maniacbug nRf24L01 driver <a href="http://arduino.cc/forum/index.php/topic,62222.0.html" target="_blank">Click here</a><br />
<br /></div>
<div class="p1">
<br /></div>
</div>
Unknownnoreply@blogger.com24tag:blogger.com,1999:blog-236630323640582849.post-41858839193207921332011-04-03T13:56:00.001+08:002012-04-23T09:52:33.255+08:00Controlling fan or motor speed with PWM<div dir="ltr" style="text-align: left;" trbidi="on">
On the first part, I talk about switching any 12V DC or higher electronic components ON or OFF. This can be easily done using an optoisolator and a 12V reed relay. In this article, I will be using a different component to control the speed of the 12V fan or motors using Pulse Width Modulation (PWM).<br />
<br />
The TIP-122 are Darlington transistors that can support voltage up to 100V. It consist of two transistors with resistors and diode all inside a TO-220 package. You can use TIP-120 that support up to 60V. Please refer to the TIP-120/TIP-122 datasheets for details specifications <a href="http://datasheet.octopart.com/TIP122-STMicroelectronics-datasheet-551401.pdf">here</a>.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3PiIFcVuwOVgWv4nnNwY8iSNrxhQrsqXuA9VVa8Pg75srHk6yTaUdUsILZRq8uiJhC4ufaPgxopalYnqj5sH-y1XZMyrNxzBARd6FrHQu7hoBS86ZGq99DL0l81v8eEu8eF_p_x6Tf74G/s1600/TIP-122+diagram.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3PiIFcVuwOVgWv4nnNwY8iSNrxhQrsqXuA9VVa8Pg75srHk6yTaUdUsILZRq8uiJhC4ufaPgxopalYnqj5sH-y1XZMyrNxzBARd6FrHQu7hoBS86ZGq99DL0l81v8eEu8eF_p_x6Tf74G/s1600/TIP-122+diagram.jpg" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">TIP-122</td></tr>
</tbody></table>
I've wired u my circuit like the schematic diagram below :-<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhywAWD7-hqRI2lc2M81dSV2y2wwJvHYoQLuLS6G4QluoxXRcCyIkdHQClCGaFtEoOoh3cB6Nsj3u_5q32y_NLAapyF1W2bgXC1ROzUq4QuyYv0Hbd5bBr0aZ-JXKUQxVDALJEQynWIVgc-/s1600/TIP122+LDR+12V+Fan_bb.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="237" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhywAWD7-hqRI2lc2M81dSV2y2wwJvHYoQLuLS6G4QluoxXRcCyIkdHQClCGaFtEoOoh3cB6Nsj3u_5q32y_NLAapyF1W2bgXC1ROzUq4QuyYv0Hbd5bBr0aZ-JXKUQxVDALJEQynWIVgc-/s320/TIP122+LDR+12V+Fan_bb.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">TIP-122 fan speed control</td></tr>
</tbody></table>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
The input of the circuit is using analogRead(0) to read the light level from the light dependent resistors (LDR). Depending on the light level, the value is converted by the ADC to 0 to 1023. Since the PWM can only take value of 0-254, I will divide the ADC value by 4 to match the PWM value.<br />
<br />
The 12V DC supply is separate from the Arduino 5V supply but shared a common ground.<br />
<br />
The LCD is to display the LDR value for debugging purpose. Cover the LDR or shine a light to it to see the fan speed change.<br />
<br />
Arduino Pin 9 (PWM) connect to the TIP-122 Base (B) pin.<br />
The 12V fan connect to the TIP-122 Collector (C) pin and the Emitter (E) pin connect to the Ground.<br />
<br />
Sketch to control the 12V fan speed using PWM is as below :-<br />
<br />
<i> int ldr = 0;</i><br />
<i> ldr = analogRead(0)/4;</i><br />
<i><br />
</i><br />
<i> // if light level is room light, turn the fan speed higher</i><br />
<i></i><br />
<i> if ( ldr < 125 && ldr > 40 ) {</i><br />
<i> ldr = ldr + 50;</i><br />
<i> }</i><br />
<br />
<br />
// if value is less than 40, do not switch the fan ON<br />
<br />
<i> if ( ldr < 40 ) {</i><br />
<i> ldr = 0; </i><br />
<i> }</i><br />
<i> </i><br />
<i> // else run the fan speed according to light level up to 255</i><br />
<i><br />
</i><br />
<i> // send PWM value to TIP-122 base pin</i><br />
<i> analogWrite(9,ldr);</i><br />
<i></i><i> delay(500);</i><br />
<br />
<br />
<br /></div>Unknownnoreply@blogger.com36