Arduino Serial Protocol
Arduino Serial Protocol builds a human readable protocol useful to activate the Arduino functions from a remote system or from a terminal like Arduino IDE Serial Monitor or Putty. Arduino executes the requested function and returns the result that can be displayed or treated by the sender. The software is compatible with Intel Edison.

The protocol built-in functions are:
· PinMode
· DigitalRead
· DigitalWrite
· AnalogRead
· AnalogWrite
· PulseIn
· Tone
· NoTone
· Millis
· Delay
· MyFunction (for customized code)
· csvOn
· csvOff

Developers can add or delete functions as needed in their projects.  
The solution can be a "ready to go" software for simple Arduino applications or a module to improve every sketch with a powerful communication tool.

Getting started
· download the Arduino Serial Protocol sketch from this page (see below)  
· open the Arduino environment
· compile and load the sketch
· verify the serial speed (preset to 9600)
· open the “Serial Monitor” window from “Tools” menu, set NL as line terminator, after one second appears “hello from Arduino”
· type “?” to get command help
· type the commands respecting the format
· Arduino answers with a string containing the sent id and the measured value

Examples
Command Answer Notes
1,PinMode,13,1
1,- allows digital pin 13 for output
2,DigitalWrite,13,1 2,- sets the pin 13 to high value, the led is on
x,DigitalWrite,13,0 x,- sets the pin 13 to low value, the led is off
MyApp,MyFunction,10 MyApp,129 runs MyFunction with 10 as parameter, the returned value is 129

The id parameter can be a simple letter or a string or a counter defined by the command sender system


Any feedback will be appreciated, if I know how people use my software I can get new ideas

Comments