Grapple is designed to be a simple network layer, allowing the addition of multiuser features to an application for as little as a dozen lines of code. However, it also allows for more. It features simple client-server networking that keeps all clients aware of all other clients, passworded servers, and data transfer via TCP, UDP, or reliable UDP. Advanced features include network messaging via push, pull, or a combination, multiple methods of querying users, user groups for client bandwidth saving, network load reacting data transmission and retransmission, background pinging to monitor network states, server failover, and a fully functional lobby system.
QP is a family of lightweight software frameworks for building responsive and modular real-time embedded applications as systems of cooperating, event-driven active objects (actors). The QP family consists of QP/C, QP/C++, and QP-nano frameworks, which are all strictly quality controlled, superbly documented, and commercially licensable. The behavior of active objects is specified in QP by means of hierarchical state machines (UML statecharts). The frameworks support manual coding of UML state machines in C or C++ as well as automatic code generation by means of the free QM modeling tool. All QP frameworks can run on bare-metal MCUs, completely replacing a traditional RTOS. Ports and ready-to-use examples are provided for all major CPUs, such as ARM Cortex-M, ARM7/9, MSP430, C28x, C55x, RX, R8C, AVR32, AVRMega, PIC24/dsPIC, as well as Arduino and mbed. QP/C and QP/C++ can also work with a traditional OS/RTOS, such as: POSIX (Linux, QNX), Windows, VxWorks, ThreadX, and uC/OS.