Nurduino | |
---|---|
Participants | |
Skills | Electronics |
Status | Active |
Niche | Electronics |
Purpose | Use in other project |
Tool | |
Location | |
Cost | |
Tool category |
Nurduino.jpg {{#if:{{{Tool}}} | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:{{{Tool}}} | [[Tool Cost::{{{Cost}}} | }}
Nurduino is our very own arduino clone. It is the evolution of the Arduino Radio Spectrum Analyzer prototype on a breadboard project. In that project I built a prototype of the Nurduino, and tried to share the how's and why's.
In this page I will make a shorted description of how to build the Nurduino kit, and use it as a 2.4GHz Radio Analyzer.
Attention (errata)
- At the LED1 location on the PCB the wrong hole is marked with a + sign. This is actually the GND hole. The other hole should contain the + leg of the LED.
- In the PCB design, a mistake has been made by forgetting a resistor for the LED. We therefore soldered a 1k resistor to the + leg of the LED. For those who buy the kit complete, you receive a pre-assembled LED, so you don't need to worry. Others: please attach the resistor to the LED or you could burn out not only your LED but also your Atmega328 IC!
What do I need
- A soldering iron (including sponge and stand). Use one that is accurate with a good tip. Although the pcb is setup with a lot of space there are a few spots where accuracy is required. Under €50 there are good options available.
- Solder. I use 0.7mm (more accurate then 1mm) with a resin core, containing lead (wash your hands and try not to breathe the fumes).
- FTDI cable or FTDI friend (and micro usb cable) to connect the board to the usb port.
Software
- To program the atmega chip, you need this sketch.
- The arsa software which reads the data from the nurduino from usb and displays it on a computer. See below for installation details.
- java jre
- librxtx-java
- The full schematic and pcb design of the Nurduino can be found in this zipfile.
Kit components
Putting it together
If this is your first time soldering: don't worry, it is actually not hard. I learnt it from Mitch Altman, who is a great teacher and the co-author of Soldering is easy.
The PCB has markings for each specific component. The component table above contains these locations. The order in which you solder is not really important, apart from making it as easy as possible to reach each component while soldering. I suggest you start with the smaller resistors, capacitors and crystal. Then the headers and socket, larger capacitors and voltage regulator. The LED and pushbutton you can do whenever you feel like it. Use the picture above as a guide.
Programming the IC
If you soldered everything correctly, it is time to program the ic. Hook up the FTDI cable or FTDI friend and usb cable. It is important you have the oriëntation of the FTDI cable/friend correct. The pins on the board are marked. The GND pin should connect to the black wire on the FTDI cable. The VCC pin should connect to the red wire. This is really important, else you might fry the whole pcb.
A good tutorial on arduino programming can be found with Lady Ada. Use the following settings instead of what is listed there. For the board choose "Arduino Duemilanove w/ATmega328". For the port on linux you might probably use /dev/ttyUSB0 on Ubuntu/Debian, or equivalent on other distributions. For Windows, see Lady Ada's tutorial for installing the drivers.
When you installed the arduino programming environment, and configured (maybe even loaded a standard blink sketch to test if uploading works) you can load the correct program to the board. The sketch (program) is listed at the top under [#Software]. Download the file to your sketchbook folder in your documents folder. After that you can find it back in the Arduino programming environment under file->Sketchbook.
Push and hold the reset button on the Nurduino, klik the upload button on the arduino IDE (arrow to the right) and release the reset button after a fraction of a second (before the arduino IDE says uploading). After that, the software should be loaded on the chip. The LED should now start flashing regularly.
You can now connect the nurduino to your computer using the FTDI friend or FTDI cable (make sure you connect it correctly, black wire at the GND pin) to the board and your computer, and start the Arsa software (see below). The Arsa software should now show the signal strength like in the picture.
The Arsa software
The Arsa (arduino radio spectrum analyser) is a java application that reads the usb port data from the Nurduino and displays a bar graph with the signal strenght. It displays both the maximum since you started it, and the current signal.
You can download the most recent version on [1]. Download the arsa-<version>-jar-with-dependencies.jar file. You can start it with java. Currently it only works on Linux and assumes the Nurduino is available as /dev/ttyUSB0 (default on Debian and it's derivatives like Ubuntu). It also requires the librxtxSerial.so. You can start the file (assuming you have java and librxtx-java installed) with:
LD_LIBRARY_PATH=/usr/lib/jni/ java -jar arsa-<version>-jar-with-dependencies.jar