Arduino Conection

See the Arduino Connection video tutorial for a visual demonstration.

Embrio is intended to be used to prototype and build real time control programs, and it is most useful when connected directly to a development board via a serial connector. When connected to the Arduino it records sensor inputs, sends them to Embrio via the serial connection where they are passed through the control system and then back out to the Arduino.

NOTE: By default "Upload to last board set in Arduino IDE" is checked in the application options menu. When Embrio sends a command to Arduino to compile and upload your program, Arduino will use the last board settings used when uploading from the Arduino IDE. Otherwise Embrio will put together a command that includes the Arduino board set in the controller settings. Using the last board setting seems to be more reliable then sending the board so it is on by default.

So the process to connect to an Arduino is to first open the Arduino IDE and upload a simple program, like Blink, to your Arduino. Once the program uploads correctly, close the Arduino IDE to save its settings then you can connect with Embrio.

A - Select the port that your Arduino is plugged into.

B - This is the connection icon. Click on it to toggle opening and closing the connection. When a connection is made Embrio checks if a current connection program is running on the Arduino. If it is not, one is compiled and uploaded.

C - Refresh the connection program. When you are connected to an Arduino, if you add or remove any nodes that touch an Arduino pin, like a Digital Read node, you need to upload a new connection program. Clicking this will compile and upload a new program, then reconnect when the upload is complete.

D - The button compiles the project to be run entirely on the Arduino without a connected computer. This is only available in the licensed version.

E - The timing button. When compiling a final program, Embrio needs to know how long it takes each node type to update on your target hardware. This button compiles a timing program, uploads it to the Arduino, then waits for the timing data to be sent back. The results can be seen on the Profiler tab.

FThe current status of the Arduino connection is printed here.

View discussion page on forum