USB Freeform Arduino




About: I am Electronic Visualization Artist. I look at things through the Looking Glasses.

This is a project in attempting to improve it predecessor "Freeform Arduino" by putting it in an enclosure and having it serve the similar purposes as "Palm Arduino Kit" and "Palm Arduino II" which I can carry it in my pocket and be available to use, and to connect to easy available power source specifically USB port.
I designed this "USB Freeform Arduino" with USB connector to be enclosed inside a 35mm film canister.

The biggest challenge is how I couid fasten the "none PCB Arduino" to it own enclosure, in this case cylinder shape canister?
The answer was not an easy one. But the solution I found was an easy thing to do, and it was an excellent solution that we quite familiar with.

"How about glue it in!", I said to myself.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Parts and Tools

All the parts are about the same as used in it predecessor, "Freeform Arduino" except that I used film canister instead of the antistatic tube, with an addition USB type A connector.

Schematic shown below is comprised of the minimum components and could be used FTDI cable to upload the sketch.
On the actual USB Freeform Arduino did not  included the 1K resistor and 3mm LED that connected to pin D13 as in the schematic.


These are the minimum components to get Arduino up and running.
(1x)  ATmega168/328 preloaded with Arduino Bootloader
(1x) 16 Mhz Resonator
(2x) 0.1uF Ceramic Capacitors 
(1x) 3mm red LED (Only needed for testing purpose only)
(1x) 1K Resistor
(1x) 10K Resistor
(1x) 6-pin Male Header (as the connector to FTDI cable to upload the sketch)
(2x)  1x14 Female Receptacle

Additional Materials:
Hookup Wire
35mm Film Canister
USB Standard type A cable (Male Connector)


Solder iron and Solder station
Diagonal Cutter
X-Acto Knife
Wire Stripper

Miniature Files
Hand Drill
Micro drill bit for Hand drill
Masking tape
Super Glue

Step 2: Make Freeform Arduino

To make Freeform Arduino,

I started out by connecting the VCC and AVCC  pins, pin number 7 (the actual pin number, not the  Arduino's digital pin 7) and pin number 20   of ATmega168/328, together. And I also joined GND pins, pin number 8 and pin number 22 of ATmega168/328 together.
(See pins map here)

14-pin Female Receptacles
I soldered 14-pin receptacles to both sides of ATmega168/328 (with boot loader installed.)  I set the angle of the 14-pin receptacles to lean a little bit outward to match the curvature of the canister cylinder shape.

0.1uF Capacitor
The capacitor does not have polarity. So I soldered left pin of the capacitor to ATmega168/328 pin number 7.  And soldered the right pin of capacitor to ATmega168/328 pin number 8.

16kHz Resonator
The resonator has three pins, left and right are to be connected to XTAL1 and XTAL2 on ATmega168/328 (pin number 9 and 10). So, I soldered the right most pin of the resonator to pin number 10 (XTAL2), and used hookup wire to connect the left pin of resonator to pin number 9 of ATmega168/328. And used short hookup wire to join ground pin of resonator (middle pin) to ATmega168/328 pin number 8 (Ground).

FTDI connector
I soldered six hookup wires to 6-pin Male header in this order (pointing the header out toward my right hand side).
And I soldered the hookup wires to ATmega168/328 as shown below.

ATmega168/328              Hookup wire         FTDI pins 

Ground Pin (8 or 22)         Black                      GND
-                                             -                              CTS (I connected this pin to  GND pin above)
VCC Pin (7 or 20)              Red                        VCC
RX Pin (2)                           White                      TX (out)
TX Pin (3)                           Green                      RX (in)
Reset Pin(1)                      Green                      DTR/RTS  (I soldered 0.1uF ceramic capacitor between male header and hookup wire.)

After all the wires connected, I used SuperGlue to glue the FTDI header to the end of 14-pin receptacles over pin number 1 and 28 of ATmega168/328.

10K Resistor
I soldered 10K resistor in between VCC pin (pin number 7) and  Reset pin (pin number 0)  of  ATmega168/328.

Note: For the details of how to make "Freeform Arduino" see the making steps of "Palm Arduino Kit", since it have the same schematics and it did not use PCB. There is no different in how to built steps between the First and this one, except Freeform Arduino does not have pin D13 LED and resistor.

Step 2: Straighten the pins (NOTE: Do not straighten the "USB Freeform Arduino")

Step 3: Added Power and Ground 

Step 4: Bring out the pins (Note: You could bring out only digitals and analogs only and not omit the XTAL1, XTAL2, and GND pins - 8, 9, and 10 in this "USB Freeform Arduino" just like I did in "Palm Arduino II) 

Now, we have Freeform Arduino ready for the next steps.

Step 3: The Enclosure - 35mm Film Canister

There is another kind of 35mm film canister, the one with the grey cap and black container. I avoided this one and used the white translucent canister instead, because I can see the shape of the object inside of it from the outside.
I was able to plot the position of the 14-pin receptacle of the ATmega168/328 to the surface of the canister. When I placed the Freeform Arduino close to the surface.

After I plotted the locations of the 14-pin receptacles with fine point Sharpie.
I used masking tape to shape the cut out areas on the canister.
Then I compared the dimension of the receptacles and the cut out area.

I used hand drill to drill the holes at the corners of the cut out.

And I used X-Acto knife to cut along the cutting lines from hole to hole.
(Be careful! The surface is slippery and it is not flat.)

After cut out all the opening I compared Freeform Arduino receptacles to the opening to see if the openings are OK.

Then I repeated the steps above to mark and cut the opening for the USB connector.
And I tried it out to see if the opening are OK.

Step 4: Test

As always I want to make sure everything is in working order before committing to the next steps.

So I temporarily soldered the VCC and GND wires of ATmega168/328 to USB cable.

I connected the FTDI cable to Freeform Arduino and upload the "Blinking LED" sketch to see if It would worked!
Then I unplugged the FTDI cable and inserted the Freeforn Arduino's USB power cable into USB ports.

The result, it was working as expected!

Step 5: Glue Them Up!

This step, I desoldered the USB's VCC and GND wires from the Freeform Arduino.
Then I added the hookup wires to VCC and GND pins of the Freeform Arduino.

I cleared the unused wires on the USB connector to be ready to be glued into the canister.

I used toothpick to paste the Super Glue to the canister and ATmega168/328 14-pin receptacles.

After the glue dried, I connected the VCC (pin 7) on ATmega168/328 to VCC on USB cable, and connected GND (pin 8) ATmega168/328 to GND Wire on  USB cable together.

Next, I applied the Super Glue to the USB connector  and canister with toothpick.

I tucked all the wiring inside the canister, and closed the lid.
And that's it! I got a "USB Freeform Arduino!" 

(One more thing to do is to label all the pinouts.)

Step 6: The Final

Now coming to the final test I did uploaded the blinking LED sketch again,  removed the FTDI cable, and then connected to the USB Port. 

After I had done testing it on the PC. I connected the USB Freeform Arduino to Laptop USB port and it worked fine too!

I am very happy with the outcome of the project. 
It looks really nice, and it really handy. 

For the durability test, I dropped it a few times on the thin area rug. The glued parts did not split! And it's still working fine!

The mission is accomplished.

I'm hoping to use this in my future robot projects.
Since it is very compact. It could be hiding in the body of the robot.
Or if I were to use it in any other project it should be easy to fit it in any enclosure.

For the power cable, I could make a power cable with the USB Type A receptacle to supply the power to my "USB Freeform Arduino" since this version of "Freeform Arduino" already equipped with USB connector.

Thank you very much for your visit. I hope you enjoy reading it!
And hoping to see someone coming up with a better ideas! If so please share!

3rd Annual Make It Stick Contest

Finalist in the
3rd Annual Make It Stick Contest

Make It Glow

Participated in the
Make It Glow

Hack It! Contest

Participated in the
Hack It! Contest

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    30 Discussions


    2 years ago

    Great project, thank you for sharing!

    There are two 14-pin female connectors on each side, and they match the pins on ATmega168/328, which also have 14 pins on each side of the micro controller.


    Reply 6 years ago on Introduction

    Looking forward to see yours soon.
    Yes, it is very handy!


    6 years ago on Step 2

    I intend to program my controller in an uno and then use it for final project like this , so what parts can be excluded ? I mean if I do not need to interface with a computer what is the bare minimum I need?

    1 reply

    Reply 6 years ago on Step 2

    Thanks for your interest!

    If you want to use Uno as the programmer to upload the sketch.
    You could eliminate, (see schematic in Step 1)

    3mm LED and 1K resistor (the debug LED),
    6-pin FTDI male header,
    0.1uF capacitor that connect between DTR pin on FTDI and RESET pin on Arduino

    You probably need to add,
    28-Pin DIP socket (
    So you could remove the micro-controller from the circuit, reload the sketch (using UNO) in case you want to change or add some more stuff in your circuit.
    Then insert it back to the 28-pin DIP socket.

    Hope to see you project appears on Instructables in the near future!

    Good luck,


    7 years ago on Introduction

    Where is 85rocco getting Nanos at $12.88 including shipping???

    This is a neat project and a great diy idea - good one!!!

    7 replies

    Reply 7 years ago on Introduction

    There is even cheaper. how about 11.99?


    Reply 6 years ago on Introduction

    ive used / DX for a year or two now, and i must admit their prices are hard to beat, but their shipping times are about a month to usa,, the last item I ordered, they sent me wrong item, it was a charger for a camera! It didn't even have a standard us 110 plug I ordered a 4 channel RF remote control key chain & attachment to make a 4 channel remote relay with an arduino for my car. had to wait a month to find out tha tmy plans were ruined by them again!
    THEN I had to fight to get my full refund they only wanted to give me a 3rd of what I paid, I finally got them to refund especially when i brought up an old order i made in January, according to their website everything shipped out, and it had been1.5 months, so i said whats going on they said sorry we for got to ship, I had ordered approx 5 things 2 came a month later, they said 1 was back ordered and the other they for got to ship again, in the end I never got full order waited 6 months for a partial order. I never used to have any issues with them, but, look around there forums, their is alot of it going on in fact after the first order mess up, i had to make a new account because i complained about thrii service they banned me from their forums, anything that I said negative about them was deleted or never showed up, then finally I made a new account. I now pay the extra 2 bucks to have better odds of actually getting it but quicker soon. I just had to chime in on this, and I do hope they get there stuff together, because there assortment is great. and unbeatable prices, but when you wait a month or 6 to get what you didn't order you lose faith. of course like I said i used them for a few years and they were fine then bad then fine, and seems they're in a bad spell again? Im not chancing my money.


    Reply 7 years ago on Introduction

    I saw some on eBay. Some are on sale for $10.38 with free shipping.

    Thanks for the compliment.


    Reply 7 years ago on Introduction

    for some reason i can never find anything on eBay :-)
    but if you really want cheap microcontrolers: TI is selling a board with a microcontroller+ one spare microcontroller for only a few bucks. I think it is called the 'Launchpad' with an MPS430 or something


    Reply 7 years ago on Introduction

    I got mine on ebay., just search "arduino nano v3.0", you'll find lots of them. If you're interested, a couple of things to look for in addition to price, some of them come without header pins, others have the pins but you need to solder them in yourself, mine came with pins already installed and included a usb cable.


    7 years ago on Introduction

    I am trying to get a single channel of EEG derived from 2 inputs, and perform an FFT with some output via colored LEDs. Will the Nano provide enough power and/or breadboard to avail this setup of the possible other chips that may be required to do this. My specialty is Sleep, not electronics, though I understand them. I am at a slight disadvantage not knowing the capabilities of the Arduino models. Any help appreciated.


    7 years ago on Introduction

    That's pretty cool but I don't quite get the point.

    If you want a small Arduino, why not just get an Arduino Nano, it's super cheap, I paid $12.88 for mine including shipping, it gives you all of the functionality of the regular sized Arduino Uno plus two extra analog inputs. Here's a picture of my Nano next to an Atmega328 chip.

    1 reply