A while back I released the original version of ArdOS that was really meant to be compiled using Atmel Studio 6. Today I am proud to introduce the latest version of ArdOS that was re-written for use within the Arduino IDE.
ArdOS is now available at https://bitbucket.org/ctank/ardos-ide
. You can download the ZIP file (includes quick start guide and reference guide) directly from https://bitbucket.org/ctank/ardos-ide/downloads
The following changes were made:
- 100% support for Arduino libraries. All the features that you love like Serial, attachInterrupt, etc are now accessible in ArdOS.
- You can now bring ArdOS into the Arduino IDE through Sketch->Import Library->Add Library (on Arduino 1.0.5 onwards) or by unzipping the ZIP file into the libraries directory.
- Examples accessible through File->Examples->ArdOS.
- Much better documentation.
- Greatly simplified configuration. By default all components of ArdOS will be compiled in, but you can edit the kernel.h file to exclude components.
- Simplified task creation. Task stacks are automatically created for you.
- Stack sizes for each task can now be set at run-time.
- The number of tasks can now also be set at run-time, albeit only when ArdOS is initialized. However this means no more fiddling with the ArdOS header files to set the number of tasks.
- Now supports boards based on the ATmega168, ATmega328, ATmega1280 and ATmega2560.
- Now supports analog output on all PWM pins.
- A compact and configurable kernel.
- Prioritized scheduling for hard real-time tasks.
- Binary and counting semaphores.
- Mutex locks and conditional variables.
- First-in-first out and prioritized message queues.
Do take ArdOS out for a spin and let me know your thoughts!