This documentation is very helpful:

1. For developers that want to communicate with Virtuino library without Virtuino app 

2. For developers that want to create their own code to communicate with Virtuino app 

 

Virtuino app uses TCP sockets  to read/write values a Virtuino server

Command  format to read a value from the Virtuino library

!Vxx=?$   or !Vxxx=?$

! is  the command start character

V is the type of memory.

V virtual pin (any value  type)

Q digital pins  (0 or 1)

O analog output     

A analog input

T text

xx is the pin number (two  or three digits) 00 - 255 

= The character after the pin number

? ask for value

is the last command  character


Virtuino command to read the value of the V memory V0 (without password)

!V00=?$

Response from library  !V00=12.5$       (12.5 is the value of V0)


Virtuino command to read the Digital Pin 13  (without password)

!Q13=?$

Response from library  !Q13=1$       (1 is the value of D0)


Virtuino command to read the Analog Pin A2  (without password)

!A02=?$

Response from library  !A02=512$       (512 is the value of A2)


Virtuino command to read the Digital Pin 6 and A1 and V4  (without password)

!Q06=?$!A01=?$!V04=?$

Response !Q06=0$!A01=100$!V04=23.45$


Virtuino command to upload a value to the V memory V0 (without password)

!V00=45$

Response from library  !V00=45$     (The same with the request command)


Virtuino command to change the state of digital pin 13 (without password)

!Q13=1$

Response from library  !Q13=1$     (The same with the request command)


Virtuino command to change the value analog pin 6 (without password)

!O06=23$

Response from library: !O06=23$     (The same with the request command)


Virtuino command to read and write to virtuino library memory and board pins (without password)

!Q06=1$!A01=?$!V04=32$

Response from library:  !Q06=1$!A01=128$!V04=32$


If the library password is 1234 the request has to start with the password

Example:

Request from virtuino: 1234!Q06=1$!A01=?$!V04=32$

Response from library:  !Q06=1$!A01=128$!V04=32$