The FreakLabs Pro AVRUSB128 v1.1 board is an MCU board with 128 kB flash, 8 kB RAM for the FreakLabs rapid prototyping platform. This is part of the Pro series of development systems that has an MCU with larger resources for full wireless protocol stacks. There are also two universal serial connectors which are the standard connectors for all the FreakLabs radio and peripheral boards. This allows for the greatest flexibility in choosing radios, sensors, and peripherals for the prototyping system. There is also an 8-bit memory bus with 12 address bits for interfacing to memory-mapped peripherals such as ethernet controllers.
The universal serial connector is a connector interface with a standard pinout for all FreakLabs peripheral boards. The universal connector contains an SPI bus, I2C bus, two interrupts, two analog inputs, 1 PWM output, 1 timer/frequency counter input, GPIO, and power. The purpose of having a standard interface is so that MCU boards can be quickly swapped in and out without requiring the need to buy new peripheral boards. Hence peripheral boards can be re-used for testing on different MCU architectures making it easier to do benchmarking, software porting, and compatibility testing.
The MCU is an Atmel AT90USB1286 AVR-based 8-bit microcontroller with integrated USB device controller, 8kB RAM, 128kB flash, 4kB EEPROM, external address bus, multiple ADC channels, hardware PWM and waveform generators, and hardware frequency/event counters. It also comes with a bootloader that is compatible with the Atmel FLIP USB flash downloader or AVRDude so that a hardware programmer is not needed. The bootloader is stored in a protected area and cannot be overwritten except by external hardware debugger/programmer. In other words, the board is unbrickable. An exposed JTAG debug/programming port is also available for connection to emulators such as the JTAG ICE MKII or AVR Dragon (in programming mode only). The board can also be powered off of either a 5V DC input, USB’s integrated 5V VBUS power supply, or 2-AA batteries. The batteries go into a regulation circuit that keeps the output constant at 3.3V as the batteries drain down to ~0.9V.
In terms of software, the AT90USB1286 is well supported in the wireless sensor network community. The same MCU is used in the popular Atmel Raven wireless platform and ports exist for the Contiki OS and the FreakLabs FreakZ Zigbee stack.
- AT90USB1286 AVR-based MCU
- 128kB flash/8kB SRAM/4kB EEPROM
- 2 universal serial connectors
- 1 external address bus expansion port
- Power supplied by 5V DC jack, VBUS, or battery
- Bootloader contained within protected boot memory
- Free flash downloader application
- 2-AA Battery holder + regulation circuit for constant voltage output
Datasheet for FL-AVRUSB128-DEV v1.0
Datasheet for FL-AVRUSB128-DEV v1.1
Link: Firmware Downloading on AVR USB Microcontrollers