Introduction: 15mm X 20mm Size Arduino
Inspired by Femtoduino USB, the objective of this project was to experiment with PCB design in order to create another small-size version of an Arduino-compatible board based on the ATmega328P micro controller.
The schematics of this project are identical to Arduino Nano/Uno, only parts with smaller footprint (such as 0402 SMD) were used instead.
Step 1: First Attempt
First version of the board used Ch240G as the onboard USB to serial converter, and required to use both sides of the PCB to fit all the components within 15mm x 20mm.
Step 2: First Small Arduino-compitable Board
Components on the bottom side of the board were soldered first using a stencil, solder paste, and a heat gun, some silicone thermal paste that dries/hardens were used to secure the components, then the components on the top side were placed and solders using the same process.
Step 3: Second Attempt
Based on the experience of the first attempt, a few modifications/improvements were made for the second design:
- Replaced CH340G with CP2102 USB to serial converter, which has a smaller footprint, in order to fit all the components on once side of the PCB, allow easer and faster soldering.
- V-cuts on the panelized PCB, each individual PCB snap apart.
- Silkscreen for each pin.
Step 4: Conclusion
Very interesting and fun project, and not very practical. 1.27mm pins were difficult to solder without bridging neighboring pins, one solution that worked very well was to cut off the legs of spare resistors, solder into the pins first, then solder wires to the legs, then protect with 1mm heat-shrink tube.
For projects where small Arduino boards are used, Nano or Pro Mini will most likely suffice.
2 Comments
6 years ago
Dude this is awesome! What kind of crystal did you use? I've been looking to start making some custom boards. I would love more detail on part numbers and such. Also, why not make a this using a Atmega32U4 and skip the USB to serial?
Reply 6 years ago
Thank you sir, just posted Bill of Materials for this project. I believe there reason was Atmega32u4-MU was just a little too big to fit onto the board; probably would've been better if I wasn't fixated on the 15mm x 20mm size (17mm x 20mm would probably work) and use Atmega32u4 instead.