An Arduino Micro Clone

3689520113?profile=original

Hello, my name is Jordi. I'm currently a high school senior, but I will be graduating in a few weeks, after which I will be attending university with a major in Electrical Engineering. I've been a long-time follower of the diydrones community and have made a few posts in the past. In August of last year I made a blog post entitled "Introducing Glowduino!". I had created a board that was designed to control multicolored LEDs on various unmanned vehicles. I ordered the boards and assembled them, but made the stupid mistake of using a TQFP ATMega328 and not including an ICSP header. I had known this would be a problem, so I also designed some small breakout boards for programming. I simply pressed the chip onto the board to program it, and then soldered it to the Glowduino. Once everything was assembled I plugged it in and...it didn't work. After a good deal of searching I realized that I had accidentally flashed the wrong Arduino bootloader to the chip. I was using a 16Mhz crystal, yet I flashed a 8Mhz crystal-less bootloader. I don't have a hot-air rework station, and desoldering it didn't work so well (believe me, I tried). With the board bricked and my hopes dashed, I put the project aside to focus on school work.

3689520017?profile=original

3689520061?profile=original

    A month or two ago I decided to come back to the project and see if I could at least get it into a working state. I designed and ordered some breakouts for the various chips that are used on the project and began breadboarding the design (I know I know, I should have done that first :)) and writing some code. I soon realized that the entire concept behind Glowduino might be more successful if the system were more modular. This got me looking into viable Arduino-compatible microcontrollers, and I soon came across the Arduino Micro. While all of its features are very well suited to my needs, I didn't really like the form factor, among a few other small things. For these reasons I decided to set out to create a 'better' Arduino Micro. I barely changed anything from the original design. The only changes I made were to include higher capacity regulators and to shrink the size of the board. I shrank the width by 0.1" and the length by 0.3". This meant that instead of having two rows of 17 pins it now has two rows of 16, and they are 0.5 inches apart (1 row closer together on a breadboard). I also rearranged the order of the pins to better match the larger Arduino Uno and Leonardo pinouts. All this came with a price, however, and no matter how hard I tried I simply could not route the board on two layers.

3689520140?profile=original

3689520033?profile=original

    I only have the free version of Cadsoft's Eagle which only allows the creation of 2-layer boards. I had heard of Kicad and it sounds awesome, but after weeks of trying to migrate all my libraries and design files over to it I realized that I would be forced to stay with Eagle for the time being. After laying this project on the shelf for a bit I remembered that I had a friend who owned the full professional Eagle software. I asked him if I could use it and he agreed, and after a long bit of routing, ripping up, and re-routing I had a 100% routed 4-layer board that could be purchased from OSHPark. This time, however, I didn't immediately order the boards. Instead, I bought an ATMega32u4 and breakout from Futurlec and set to work breadboarding the project. I have made all the necessary connections and I am currently trying to get my usbasp to talk to the chip so that I can flash a bootloader. I haven't made too much progress on this front yet, tho, as AP Tests are coming up, final projects for my classes are due soon, and I am acting in my school's current musical.

3689520076?profile=original

3689520153?profile=original

In the above photos, the purple board is a breakout for the TLC5947. It is larger than my final Arduino clone will be :)

    With the completion of this new microcontroller the Glowduino has been turned into a 'shield' for it. The idea is that the system will be super modular, with the option for more 'shields' in the future. In fact, it would be almost trivial to create an adapter for using preexisting Arduino shields with this microcontroller. Users could have the option of only installing one shield on each vehicle and simply plugging the microcontroller into whichever one they wish to use. Additionally, expansion boards could be designed that extend the Glowduino's capabilities, such as the ability to control EL wire or LED matrixes (thank you Jonathan Lederer!).

3689520044?profile=original

    I know I will at least make a few of these boards for my friends and I, but this is where I would like some feedback. Is this a good idea? Would you buy it? What ideas do you have for something you could do with it? Is there anything you'd like to see? What is a reasonable price-point? I'm completely into open-sourcing everything, so the design files, schematics, bill of materials etc. will all be released completely once the project is finished. I will be updating my flickr (which is currently quite sparse) with photos soon, here's the link: Flickr Photostream. I would love to be able to actually build these in the future, and I very much appreciate your feedback. Thank you!

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • That's great news!!! Something that I will follow with great interest!

  • Hi Tom!

        APM communicates using the MAVLink protocol. I'm pretty sure there's already an Arduino library available that allows you to interface with it, but if not then I will definitely write one. With MAVLink support comes the ability to read the data coming off the APM sensors in order to deduce battery voltage, GPS lock, etc and adjust the lighting accordingly. As for price, I'm really hoping it could be as low as $20, but we'll see :)

    Jordi

  • This is a great project! Great idea as well! One question that I have for you is would you be able to "plug" it in to the existing APM that we know and love, or would this be a stand alone card that would control just the lighting and what not like a Arduino micro? In the reading your not quite clear on how this will interface with the existing products that we have available currently. 

    Love the work that you have done this far, and cant wait to see the final product! As a price point (IMHO) I would keep as low as possible so Joe Nobody's like myself can afford it. :)

This reply was deleted.