Status: ? = Not sure if worth the effort or useful at all. - = Planned. X = In progress, some work done. * = Done. After 1.0.0: * Improved makefiles with settings section and shared common part. * Queues macros should not refer to the semaphore counters directly. * Priority ordering option for semaphores. * chSysLock() and chSysUnlock() with counter (option). * OSEK-style chSysSuspendAll()/chSysResumeAll()/chSysEnable()/chSysDisable() (implemented this as the new Suspended and Disabled states in 1.1). * Mailboxes subsystem (lwIP requires them). * Multiple debug switches. * Split asserts from parameters checks. * Add checks to all APIs. * Stack checks option. * Threads profiling option. - Registers clearing on thread start. * Idle loop hook macro. * Switch the configuration options to TRUE/FALSE rather than def/undef. * Remove port_puts() from all the ports. * Stack sizes article into the documentation. - Find out and document main stack settings in MSP430 and AVR runtimes. - Logo... After 1.2.0: X Abstract I/O channels rather than just serial ports. - Move the serial drivers implementations in library. Better keep the core as compact as possible. - Threads Pools manager in the library. - New chThdCreate() that takes just two parameters, a pointer to a thread descriptor and the tread parameter. It could wrap the current variants or just be an alternative. - Minimal optional C-runtime library (complete enough for lwIP). - OSEK-style simple tasks within the idle thread. ? Think to something for threads restart. ? Multiple heaps, disjoint heaps, heaps in heaps. - Update C++ wrapper (Heap, Pools, Mailboxes and any new feature). - Think about making threads return void. Ideas for 2.x.x: - High resolution timers and tickless kernel. - Reference counter for threads, concept of detached threads, threads management. Ideas for 3.x.x: - Multicore support. Side projects: X lwIP TCP/IP stack integration and demo. X FatFS library integration and demo. X ChibiOS Wizard, UML modeling and ChibiOS applications code and documentation generator. X OSEK layer. - Posix layer. X File System - Visual debugger/monitor interfaced through OpenOCD. - Objects registry in the kernel. Lower priority: - More demos - More ARM ports ? PIC24 port - Microblaze port - PowerPC port ? Coldfire port ? H8 port