qRobot is an adaptation of the QP/C active object (actor) framework for programming intelligent robots, such as the LEGO Mindstorms NXT, in standard ANSI C.
The behavior of the robot is specified in qRobot by means of event-driven active objects (actors), which are hierarchical state machines that communicate with one another asynchronously by exchanging events. Active objects are closely related to the concept of agents used in Artificial Intelligence (AI).
The qRobot framework supports manual coding of hierarchical state machines (UML statecharts) in C as well as fully *automatic* code generation by means of the free graphical QM modeling tool.
The qRobot project for the LEGO Mindstorms NXT provides replacement firmware for the NXT brick, the complete tooset for building C and C++ programs from a Windows PC, and an extensible set of drivers for the sensors and actuators for the NXT brick.
Works, very small, no complaints.
no trouble to install and run, works nicely.