Feature List

  • [new:1.6] Supports the ATMega128, ATMega32, and ATMega16 microcontroller models.
  • [new:1.6] GUI for interactive simulation and monitoring.
  • [new:1.6] Automatically generated disassembler.
  • [new:1.4] Energy analysis tool.
  • [new:1.4] GDB backend via remote serial protocol.
  • [improved:1.6] Fast, cycle-accurate simulation of AVR programs.
  • [improved:1.6] Cycle-accurate sensor network simulation.
  • [improved:1.6] Profiling options and utilities.
  • [improved:1.6] Greater than real-time performance for 7mhz devices.
  • [improved:1.6] Clean, well-documented Java API.
  • [improved:1.6] Three input formats: Atmel syntax, GAS syntax, and avr-objdump format.
  • Support for breakpoints and watchpoints.
  • [improved:1.6] Flexible extension points for developers.
  • [improved:1.6] Scalable threading model for multi-node simulation.
  • [improved:1.6] Stack analysis tool.
  • Support for these devices on the ATMega128L:
    • [new:1.6] The in-system reprogrammable flash.
    • The basic timer, Timer0.
    • [improved:1.4] Timer1, Timer2, and Timer3.
    • The SPI (Serial Peripheral Interface) device.
    • [improved:1.6] The two UART chips: USART0 and USART1
    • The 4KB EEPROM.
    • The ADC (Analog to Digital Converter) device.
  • Support for these devices on the mica2 platform:
    • [new:1.6] The light sensor.
    • [new:1.6] The 512kb external flash.
    • [improved:1.4] Red, Green, and Yellow LEDs.
    • [improved:1.6] The CC1000 AM radio.
  • Control flow graph utilities.


Features New for Beta 1.6

  • Support for the ATMega32 and ATMega16 microcontrollers.
  • Automatically generated AVR disassembler.
  • Simple GUI and stack monitor.
  • Support for in-system-reprogramming, used in Surge and SOS.
  • Refactored software architecture.
  • Some performance improvements: 15-25% faster than Beta 1.4.
  • Automatically updates node numbers for TinyOS and SOS program images.
  • Allows sensor data to be replayed into the simulation.
  • Improved emulation of CC1000 AM radio on Berkeley motes.
  • Cleaner multiple-node simulation output.
  • Improved command line options and help.
  • Fixed several bugs relating to probing and monitoring behavior.
  • Added several new probing extension points.
  • Implemented inter-procedural side-effect analysis..
  • New monitors: calls, interrupts, and IO register monitors.
  • Fixed dozens of bugs, including probing and monitoring, objdump input format, GDB server, terminal output.


Features New for Beta 1.4

  • GDB Backend.
  • Energy analysis tool (by Olaf Landsiedel).
  • Distance-attentuation radio model and topology files (by Olaf Landsiedel).
  • Refactored software architecture.
  • Slight performance improvements: up to 10% faster than Beta 1.2.
  • Fixed several timing bugs.
  • Improved emulation of CC1000 AM radio on Berkeley motes.
  • Cleaner multiple-node simulation output.
  • Improved test suite and testing harness.
  • Improved command line options and help.
  • Fixed several bugs relating to probing and monitoring behavior.
  • Deprecated legacy interpreter.


Features New for Beta 1.2

  • More complete JavaDoc documentation.
  • Refactored software architecture.
  • Signification performance improvements: up to 65% faster than Beta 1.0.
  • Support for Timer1, Timer2, Timer3, SPI, USART, EEPROM and ADC devices.
  • Emulation of the CC1000 AM radio on Berkeley motes.
  • Complete sensor network simulation infrastructure.
  • Improved stack analysis tool.
  • Support for memory watchpoints.
  • Improved command line options and help.


Features Planned for Avrora 1.0

  • Complete support for all on-chip devices on the Atmega128L.
  • Flash memory updates.
  • All sleep modes.
  • Configurable external oscillators.
  • Complete support for all "mica2" board components.
  • Complete logging and inspection infrastructure.
  • Extensible Environment model.
  • Interactive source-level debugger.


Future Features

  • Interactive interface for inspecting simulation.
  • A more complete microcontroller and platform library.