Embrio is a development tool for creating embedded software, currently for use with the Arduino. It can also create programs to run on a PC, either connected to an Arduino or not. It utilizes an "agent based" architecture designed for the challenges of programming highly parallel software with limited hardware resources.
It is a visual environment where programs are made by adding and connecting nodes into groups called agents. At the low level, physical pins on the Arduino can be read from or written to with analog or digital input and output nodes, or you can write your own nodes using the full power of the Arduino library. The control and logic of your program are then designed visually with a real time connection to your Arduino giving you unprecedented interaction while creating your projects.