======== UKHAS Badgeboard V1.0 ========
===== Introduction =====
The UKHAS Badgeboard was given to attendees of the 2012 UKHAS Conference in London on the 20th of Septemeber 2012. The concept was by James Coxon M6JCX and the design was by Anthony Stirk M0UPU. It was designed in Eagle and [[http://www.hackvana.com|manufactured in China by Mitch Davis of Hackvana]]. Assembly was done by Anthony. The board is released as open hardware see further down for the Eagle files and gerbers.
{{:general:img_0970.jpg?300|}}
The board was supplied at the conference with a ATMega 328P microcontroller, an 8Mhz Crystal and with the Arduino bootloader installed. The board has pads for attaching an NTX2 or an RFM22B radio module, DS18B20 temperature sensor and a linear voltage regulator. A0 through A7 are broken out, as are RX and TX, INT1. There are pads to allow a voltage divider for battery monitoring attached to A0. There are connections for two LED's.
===== Files =====
The board schematic {{:general:badge.pdf|is here}}. \\
The Eagle files {{:general:badge.zip|are here}}. \\
The Gerbers to follow. \\
===== Known Issues =====
* SDN on the RFM22B was intended to connect to the microcontroller so you could switch the RFM22B off and on. However this was missed. The fix is either bridge SDN to GND with an 0603 R0 resistor (pins are next to each other) this puts the module permanently on. Or run a wire from SDN to A0-A5 and then use that to switch the module off/on.
* A6/A7 are not normally usable in the Arduino enviroment, you can enable these see Enabling Ports A6/A7 Board Details below. Please note you can only use these two for analogue reads, you cannot use them for digital operations like A0-A5.
* The SCK pin for the RFM22B and the ISCP header are shared - if you are unable to use a programmer it may be due to the SCK pins being distrupted, to fix you'll need to cut the line (by unsoldering the RFM22b pin). To diagnose this problem check avrdude (or arduino) which will give you an error:
avrdude: stk500v2_program_enable(): bad AVRISPmkII connection status: SCK fail
avrdude: initialization failed, rc=-1
===== Bill of Materials As Supplied =====
1 x ATMEGA328P-AU-ND TQFP
1 x ABLS-8.000MHZ-K4T ABRACON 8MHZ CRYSTAL
2 x 0603 18pF Capacitor
2 x 0603 100nF Capacitor
1 x 0603 10K Resistor
===== Full Bill Of Materials =====
Alot of the following components are optional depending on your application.
MICROCONTROLLER ATMEGA328P-AU-ND TQFP
CRYSTAL ABLS-8.000MHZ-K4T ABRACON 8MHZ CRYSTAL
C1,C10 0603 0.1µF X7R Capacitor
C3,C4 0603 18pF X7R Capacitor
C5 0805 0.1µF Tantalum Capacitor i.e KEMET - T491A104K035AT
C6 0805 4.7µF Tantalum Capacitor i.e KEMET - T491A475K010AT
R1,R2,R8 0603 10K
R3 0603 47K (Optional would advise use of PWM to drive NTX2)
R4 0603 39K (Optional would advise use of PWM to drive NTX2)
R5,R11 0603 1K
R6 0603 100K
R7 0603 4K7
VREG TEXAS INSTRUMENTS - TPS76633D - V REG LDO 0.25A 3.3V
CONNECTOR JST (JAPAN SOLDERLESS TERMINALS) - S02B-PASK-2 - HEADER, PA, 2WAY, SIDE, 2MM
ICSP HEADER MOLEX - 90131-0763 - HEADER, VERTICAL, 2ROW, 6WAY
TEMP SENSOR DS18B20 SOIC (on PCB) TO-92 external
LED1, LED2 0603 LED
RADIO Either RFM22B OR NTX2
===== Enabling Ports A6/A7 Board Details =====
To enable the A6/A7 ports on the board you will neeed to add the following code to your Arduino BOARDS.TXT file :
##############################################################
badgeboard.name=UKHAS Badgeboard (3.3V, 8 MHz) w/ ATmega328
badgeboard.upload.protocol=arduino
badgeboard.upload.maximum_size=30720
badgeboard.upload.speed=57600
badgeboard.bootloader.low_fuses=0xFF
badgeboard.bootloader.high_fuses=0xDA
badgeboard.bootloader.extended_fuses=0x05
badgeboard.bootloader.path=atmega
badgeboard.bootloader.file=ATmegaBOOT_168_atmega328_pro_8MHz.hex
badgeboard.bootloader.unlock_bits=0x3F
badgeboard.bootloader.lock_bits=0x0F
badgeboard.build.mcu=atmega328p
badgeboard.build.f_cpu=8000000L
badgeboard.build.core=arduino
badgeboard.build.variant=eightanaloginputs
===== Programming via FTDI =====
To program the board as if it was an Arduino you will need to purchase a seperate FTDI board, a suitable one is [[https://www.sparkfun.com/products/9873|this from Sparkfun]]. To use connect as follows :
BADGE FTDI
RX TX
TX RX
VCC 3V3
GND GND
ICSP HEADER PIN 5 DTR
(RESET)
{{:general:img_1009.jpg?300|}}
Select the correct COM port and they program as normal. Alternatively use a programmer such as the Olimex AVR-ISP500 to program the board via the ICSP connector.
===== Open Source Hardware =====
This design is released as open source. This means the design is made publicly available so that you can study, modify, distribute, make, and sell the design or hardware based on that design. No further runs of this design will be made nor will boards be for sale. You are more than welcome to send the gerbers to [[http://tinyurl.com/hvpcbfaq|Mitch at Hackvana]] who will make some further boards for you.