Now that the circuit for my Temperature and Humidity Control is working – its time to create a standalone micro-controller circuit so that I can free up my Induino.
References:
http://arduino.cc/en/Tutorial/ArduinoToBreadboard
http://arduino.cc/en/Hacking/PinMapping168
http://www.instructables.com/id/The-RRRRRRRRRRBA-or-What-They-Dont-Teach-You-in-/step5/Some-Caveats/
Shopping List:
- Atmega 328P-PU (without bootloader)
- 16 MHz Crystal
- 2 x 22 pf capacitors
- LM 7805
- 1 uF + 10uF Electrolytic capacitors
- 10k Resistor
- General purpose PCB
All-in ~250 bucks. Had a 9V 1A power supply at home – so that was free. Needed a 9V for the relays that I had – otherwise you can use a 5V USB adapter that comes with most mobiles and gadgets. I have 8-10 lying at home 🙂
Wiring the Components:
Wire up the components as per the diagram below:
Burning the Bootloader:
- Connect your arduino to your computer using the USB cable.
- Select your board type and port from the Tools Menu
- Open the Arduino ISP sketch from examples
- Upload to your Arduino (clone)
For the Induino – you can modify the LED numbers as follows: Lines 49-51 in the code. LED_HB 13; LED_ERR 12; LED_PMODE 11; Edit: Just realised – pins 11, 12, 13 are used for actual programming and should not have LEDs attached to them.
- This would allow you to use the in-built LEDs to show the bootloading process (purely optional)
- Select Tools->Board->Arduino Uno (the sources say use either Nano or Duemilanove – but Uno works just fine; I selected Uno so that I don’t have to keep changing the board every time I program my standalone kit)
- Select Tools->Programmer->Arduino as ISP
- Select Tools->Burn Bootloader
- Congrats – you have a working standalone arduino (albeit with some limitations)
You can disconnect the cables from your Arduino to the standalone board
 Uploading Sketches
Since our clone doesn’t have a USB-TTL interface, we have to use our arduino to program it. (this is one of the limitations :-))
- Remove the micro-controller from your Arduino (I’m trying to skip this step – so if anyone knows a better way – I’m all ears)
- Connect Rx pin to Pin 2 on the micro-controller
- Connect Tx pin to Pin 3 on the micro-controller
- Connect RST pin to Pin 1 on the micro-controller
- Connect power to the board (either through arduino or separate)
- Connect your arduino to the computer
- Upload sketch as usual