Difference between revisions of "FTDI ATmega"
Line 67: | Line 67: | ||
== future hardware enhancements == |
== future hardware enhancements == |
||
Provide a 3- or 4-pin header with the i2c pins (to communicate with wiimote and other peripherals). The leds need to be disabled for this to work. :-( |
|||
== future software enhancements == |
== future software enhancements == |
Revision as of 15:58, 21 September 2011
FTDI-atmega
This is the documentation page for the FTDI-atmega PCB.
overview
The FTDI-atmega PCB has an USB connector and a 20-pin IO connector. The brains of the PCB is an ATmega168 chip.
pinout
The 20 pin connector is connected as follows
1 | GND |
2 | GND |
3 | PC3 |
4 | PC2 |
5 | PC1 |
6 | PC0 |
7 | PB5 |
8 | PB4 |
9 | PB3 |
10 | PB2 |
11 | PB1 |
12 | PB0 |
13 | PD7 |
14 | PD6 |
15 | PD5 |
16 | PD4 |
17 | PD3 |
18 | PD2 |
19 | VCC |
20 | VCC |
- led1 is connected to VCC
- led2 is connected to CBUS0 (FT232RL)
- led3 is connected to CBUS1 (FT232RL)
- led4 is connected to PC5
- led5 is connected to PC4
programming
This section describes how you get your program into the processor.
Linux
You can program the processor using any ICSP programmer that you might have. In that case, the jumper SV1 should then be in the upper position (away from the ICSP connector).
Or you can program it with the ftdi bitbang programmer included on the board.
Here is the documentation: http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html
The ftdi-bitbang programmer-driver for avrdude is not included in the standard avrdude program. The reason is that the patch uses the ftdi library FTD2xx and not the open source libftdi.
In the avrdude bug tracking system another patch is doing the rounds, but that one is really slow because it doesn't exploit the ftdi's synchronous mode.
TODO: port the fast ftdi bitbang code to libftdi and submit to avrdude.
windows
See the linux section above.
writing programs
The chip is an ATmega168. http://www.atmel.com/dyn/resources/prod_documents/doc2545.pdf
future hardware enhancements
Provide a 3- or 4-pin header with the i2c pins (to communicate with wiimote and other peripherals). The leds need to be disabled for this to work. :-(