Event-driven programming is a common pattern in embedded systems. However, if you develop software directly on top of RTOS, using event-driven mode is a bit more complicated. The framework is designed in C++, fully adopts message mechanism, and implements event-driven model through subscriber-publisher pattern. The framework also provides a finite state machine implementation method.