{"id":1607,"date":"2014-01-10T10:10:14","date_gmt":"2014-01-10T09:10:14","guid":{"rendered":"http:\/\/www.objectis-software.com\/support\/?p=1607"},"modified":"2021-01-26T14:53:23","modified_gmt":"2021-01-26T13:53:23","slug":"ocf-server-and-ostudio-live-tuning-now-avalible-on-arduino","status":"publish","type":"post","link":"https:\/\/www.objectis-software.com\/support\/ocf-server-and-ostudio-live-tuning-now-avalible-on-arduino\/","title":{"rendered":"Arduino, how to tune and monitor live step-by-step?"},"content":{"rendered":"<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/Arduino.jpg\"><img loading=\"lazy\" class=\"wp-image-1642 aligncenter\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/Arduino.jpg\" alt=\"Arduino\" width=\"678\" height=\"329\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/Arduino.jpg 1920w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/Arduino-300x145.jpg 300w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/Arduino-1024x497.jpg 1024w\" sizes=\"(max-width: 678px) 100vw, 678px\" \/><\/a><\/p>\n<p>Arduino, which received an Honorary Mention in the Digital Communities section of the 2006 Ars Electronica Prix, is now fully compatible with Ocf Server. It means that every client (can be oStudio &#8211; Live Tuning or your own application with Ocf Client) can connect to an Arduino single-board microcontroller. As usual, the client can interact with the Arduino board LIVE!<\/p>\n<p>You can also <a href=\"http:\/\/www.objectis-software.com\/support\/download\/samples\/Arduino\/OcfEmbedded_-_Application_Note_-_Arduino_1.2.pdf\" target=\"_blank\" rel=\"noopener\">get the PDF here<\/a>.<\/p>\n<p>Here is the contents:<\/p>\n<ol type=\"1\">\n<li>Introduction<\/li>\n<li>Step by step procedure\n<ol type=\"1\">\n<li>Download and setup<\/li>\n<li>Copy Ocfe files to Arduino IDE libraries<\/li>\n<li>Extract the example<\/li>\n<li>Compile and upload the example to your Arduino target<\/li>\n<li>Test and enjoy with oStudio &#8211; Live Tuning<\/li>\n<\/ol>\n<\/li>\n<li>More to do with oStudio &#8211; Live Tuning<\/li>\n<\/ol>\n<p>Let&#8217;s begin!<\/p>\n<h2>1. Introduction<\/h2>\n<p>This document provides all the elements you need to test OcfEmbedded on Arduino.<br \/>\nRead the OcfEmbedded programmer guide for more detailed information.<\/p>\n<h2>2. Step by step procedure<\/h2>\n<h3>2.1 Download ans setup<\/h3>\n<ol type=\"1\">\n<li><a title=\"Download oStudio - Live Tuning\" href=\"https:\/\/www.objectis-software.com\/support\/download\/ostudio\/oStudio 2-2.3.14-setup.exe\" target=\"_blank\" rel=\"noopener\" data-wplink-url-error=\"true\">Download oStudio &#8211; Live Tuning<\/a> and install it.<\/li>\n<li><a href=\"http:\/\/www.objectis-software.com\/support\/download\/samples\/Arduino\/ArduinoOcfe_Application_Note_1_0.zip\" target=\"_blank\" rel=\"noopener\">Download ArduinoOcfe_Application_Note.zip<\/a> and open it.<\/li>\n<\/ol>\n<h3>2.2 Copy Ocfe files to Arduino IDE libraries<\/h3>\n<p>From the ArduinoOcfe_Application_Note.zip file, folder \u201clibraries\u201d :<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1610\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles.jpg\" alt=\"arduino_copyocfefiles\" width=\"1170\" height=\"329\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles.jpg 1170w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles-300x84.jpg 300w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles-1024x287.jpg 1024w\" sizes=\"(max-width: 1170px) 100vw, 1170px\" \/><\/a><\/p>\n<p>Extract the folder \u201cOcfe\u201d to the \u201cArduino IDE\u201d libraries folder (which is typically C:\\Program Files (x86)\\Arduino\\libraries) :<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles2.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1611\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles2.jpg\" alt=\"arduino_copyocfefiles2\" width=\"988\" height=\"750\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles2.jpg 988w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_copyocfefiles2-300x227.jpg 300w\" sizes=\"(max-width: 988px) 100vw, 988px\" \/><\/a><\/p>\n<h3>2.3 Extracte the example<\/h3>\n<p>From the ArduinoOcfe_Application_Note.zip file, folder \u201cExample\u201d:<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_extract.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1612\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_extract.jpg\" alt=\"arduino_extract\" width=\"1252\" height=\"353\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_extract.jpg 1252w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_extract-300x84.jpg 300w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_extract-1024x288.jpg 1024w\" sizes=\"(max-width: 1252px) 100vw, 1252px\" \/><\/a><\/p>\n<p>Extract the ArduinoOcfe folder to the folder where you usually store your Arduino projects.<\/p>\n<h3>2.4 Compile and upload the example to your Arduino target<\/h3>\n<p>Open the ArduinoOcfe.ino file with \u201cArduino Ide\u201d<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_open.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1613\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_open.jpg\" alt=\"arduino_open\" width=\"1077\" height=\"464\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_open.jpg 1077w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_open-300x129.jpg 300w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_open-1024x441.jpg 1024w\" sizes=\"(max-width: 1077px) 100vw, 1077px\" \/><\/a><\/p>\n<p>Select the Board model matching your Arduino<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_selectboard.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1614\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_selectboard.jpg\" alt=\"arduino_selectboard\" width=\"942\" height=\"841\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_selectboard.jpg 942w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_selectboard-300x267.jpg 300w\" sizes=\"(max-width: 942px) 100vw, 942px\" \/><\/a><\/p>\n<p>Connect your Arduino to USB port and select the corresponding communication port:<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_connect.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1615\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_connect.jpg\" alt=\"arduino_connect\" width=\"941\" height=\"405\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_connect.jpg 941w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_connect-300x129.jpg 300w\" sizes=\"(max-width: 941px) 100vw, 941px\" \/><\/a><\/p>\n<p>Compile and upload to the Arduino<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_compile.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1616\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_compile.jpg\" alt=\"arduino_compile\" width=\"940\" height=\"839\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_compile.jpg 940w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_compile-300x267.jpg 300w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/a><\/p>\n<h3>2.5 Test and enjoy with oStudio &#8211; Live Tuning<\/h3>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>Once the example is uploaded, the Output 13 Led should blink with a 1 second period.<\/li>\n<li>From the Windows start menu, open \u201coStudio\u201d.<\/li>\n<li>Select menu File\/New\/Project.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTenjoy1.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1617\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTenjoy1.jpg\" alt=\"arduino_LTenjoy1\" width=\"960\" height=\"387\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTenjoy1.jpg 960w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTenjoy1-300x120.jpg 300w\" sizes=\"(max-width: 960px) 100vw, 960px\" \/><\/a><\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>In the &#8220;Add new project&#8221; dialog, select the &#8220;Live Tuning&#8221; project type, fill in the project name and select the desired folder, then click OK.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewproject.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1618\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewproject.jpg\" alt=\"arduino_LTnewproject\" width=\"962\" height=\"638\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewproject.jpg 962w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewproject-300x198.jpg 300w\" sizes=\"(max-width: 962px) 100vw, 962px\" \/><\/a><\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>From the menu \u201cLive Tuning\u201d, select \u201cNew connection\u201d :<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewconnection.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1619\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewconnection.jpg\" alt=\"arduino_LTnewconnection\" width=\"959\" height=\"292\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewconnection.jpg 959w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewconnection-300x91.jpg 300w\" sizes=\"(max-width: 959px) 100vw, 959px\" \/><\/a><\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>In the \u201cAdd New connection\u201d dialog, select \u201cEmbedded Com\u201d, this is the communication protocol for Ocf Embedded through a serial \u201cCom\u201d port.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTaddnewconnection.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1620\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTaddnewconnection.jpg\" alt=\"arduino_LTaddnewconnection\" width=\"961\" height=\"636\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTaddnewconnection.jpg 961w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTaddnewconnection-300x198.jpg 300w\" sizes=\"(max-width: 961px) 100vw, 961px\" \/><\/a><\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>In the \u201cProperties\u201d dialog, fill in the appropriate communication parameters :\n<ul type=\"disc\">\n<li>Select the \u201cCom\u201d port corresponding to your Arduino.<\/li>\n<li>Select the baud rate \u201c230400\u201d to match the settings in the example program.<\/li>\n<li>Click ok.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTproperties.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1621\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTproperties.jpg\" alt=\"arduino_LTproperties\" width=\"966\" height=\"526\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTproperties.jpg 966w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTproperties-300x163.jpg 300w\" sizes=\"(max-width: 966px) 100vw, 966px\" \/><\/a><\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>Browse the published variables<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>All the variables published by the example program through the OCFE protocol are exported in the following section of the source code:<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_browsvariables.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1622\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_browsvariables.jpg\" alt=\"arduino_browsvariables\" width=\"822\" height=\"523\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_browsvariables.jpg 822w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_browsvariables-300x190.jpg 300w\" sizes=\"(max-width: 822px) 100vw, 822px\" \/><\/a><\/p>\n<p>The list of published variables can easily be changed to match your own application. See the Ocfe programmer guide for more information.<br \/>\nAll those metadata are read by oStudio when connecting to the Arduino target (or when F5 key is pressed to refresh the tree). So, once connected to the Arduino, oStudio let you immediately browse all those variables with the left tree view.<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmetadata.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1623\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmetadata.jpg\" alt=\"arduino_LTmetadata\" width=\"966\" height=\"435\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmetadata.jpg 966w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmetadata-300x135.jpg 300w\" sizes=\"(max-width: 966px) 100vw, 966px\" \/><\/a><\/p>\n<p>While the mouse cursor is moving around a variable name, a tooltip appears displaying the current value of the variable, retrieved through OCFE protocol.<\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>Monitor the variables<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>Simply drag drop a variable from the tree on the left to the watch pane on the right.<br \/>\nThe variable is monitored, and the value is continuously updated.<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmonitoring.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1624\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmonitoring.jpg\" alt=\"arduino_LTmonitoring\" width=\"941\" height=\"459\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmonitoring.jpg 941w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmonitoring-300x146.jpg 300w\" sizes=\"(max-width: 941px) 100vw, 941px\" \/><\/a><\/p>\n<p>Doing so with the DigitalOutput[13] that is blinking, you will see the toggling of the variable in the watch pane.<\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>Remotely change the value of a variable<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>A double click on any variable will open the \u201cField invocation\u201d dialog. This dialog will let you type a new value for the variable that will be applied with the \u201cApply\u201d button.<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTchangevariables.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1625\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTchangevariables.jpg\" alt=\"arduino_LTchangevariables\" width=\"961\" height=\"547\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTchangevariables.jpg 961w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTchangevariables-300x170.jpg 300w\" sizes=\"(max-width: 961px) 100vw, 961px\" \/><\/a><\/p>\n<p>To test this functionality, you can change the blink period of the digital output 13 by setting a new value to BlinkPeriod[13] (for example, set the value 500 to set the blink period to 500 ms). In this Arduino ocfe example application, setting the blink period to 0 will stop blinking.<br \/>\nIn the same way, you can write the value of a DigitalOutput, by writing the corresponding variable.<\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>Tracing a variable<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>A right click in the tabs will let you create new panes.<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewpanes.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1626\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewpanes.jpg\" alt=\"arduino_LTnewpanes\" width=\"963\" height=\"246\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewpanes.jpg 963w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTnewpanes-300x76.jpg 300w\" sizes=\"(max-width: 963px) 100vw, 963px\" \/><\/a><\/p>\n<p>Create a new trace pane, and simply drag-drop the variables to trace into this new pane.<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTtrace.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1627\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTtrace.jpg\" alt=\"arduino_LTtrace\" width=\"938\" height=\"535\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTtrace.jpg 938w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTtrace-300x171.jpg 300w\" sizes=\"(max-width: 938px) 100vw, 938px\" \/><\/a><\/p>\n<p>In the picture above, the variables DigitalOut[13] and AnalogIn[0] are plot.<br \/>\noStudio let you organize your panes in multiple views :<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmultipanes.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1628\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmultipanes.jpg\" alt=\"arduino_LTmultipanes\" width=\"959\" height=\"548\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmultipanes.jpg 959w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTmultipanes-300x171.jpg 300w\" sizes=\"(max-width: 959px) 100vw, 959px\" \/><\/a><\/p>\n<ol type=\"1\">\n<li style=\"list-style-type: none;\">\n<ol type=\"1\">\n<li>Scripting<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>oStudio offers many additional functionalities, that are extremely useful to tune an application. We will finish by writing a small C# script demonstrating how to write a variable.<br \/>\nSimply create a new pane \u201cCsScript\u201d, which let you write some C# code that will be compiled on the fly.<br \/>\nTo read or write a variable into the Arduino using Ocfe, simply use the path of the variable and read it or write it as usual with the \u201c=\u201d operator. To make this more easy, you can also simply drag drop a variable from the tree to the script pane.<br \/>\nAs an example, we will write a script that slowly changes the blinking period from 0 to 500 ms for output 13.<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscript.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1629\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscript.jpg\" alt=\"arduino_LTscript\" width=\"938\" height=\"507\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscript.jpg 938w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscript-300x162.jpg 300w\" sizes=\"(max-width: 938px) 100vw, 938px\" \/><\/a><\/p>\n<p>Click on the run button. The blink period will slowly increase from very fast to normal blinking. The result is cleary visible on the Trace below :<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscripteffect.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1630\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscripteffect.jpg\" alt=\"arduino_LTscripteffect\" width=\"939\" height=\"509\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscripteffect.jpg 939w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTscripteffect-300x162.jpg 300w\" sizes=\"(max-width: 939px) 100vw, 939px\" \/><\/a><\/p>\n<p>Keep in mind that Ocfe is dynamic typed, so it is sometimes better or even required with C# scripts to use type cast to ensure proper execution.<br \/>\nThe code written as scripts in oStudio can also be integrated into your own plain .Net applications.<br \/>\nTo do so, you simply need to download the OcfApi, an extremely easy to use library.<\/p>\n<h2>3. More to do with oStudio &#8211; Live Tuning<\/h2>\n<p>Our experience is that oStudio, the live debugging tool, dramatically improves the development efficiency and the tuning of embedded systems.<br \/>\nWe wish that you will also get a lot of benefits from oStudio in your own projects.<br \/>\nYou can go further with Ocf solutions :<\/p>\n<ul type=\"disc\">\n<li>OcfNative is a communication protocol that let you monitor in the same easy way any of your plain .Net applications. Simply publish your objects with a few lines of code and oStudio let you grab into your application.<\/li>\n<li>\u201cOcfNative AES encrypted\u201c let you achieve the same results with a high level of security on open networks.<\/li>\n<li>OcfApi let you very easily integrate Ocf protocols into your own .Net applications in a snap. That way, Ocf is not only a debugging facility, but a first class communication solution.<\/li>\n<\/ul>\n<p>Ocf is a simple and efficient object oriented communication solution that simplifies to the extreme the interoperability of applications.<\/p>\n<p>OBJECTIS is continuously working on improving oStudio and Ocf to deliver excellent solutions to the community. We will appreciate your feedbacks.<\/p>\n<p><a href=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTfeedback.jpg\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1631\" src=\"http:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTfeedback.jpg\" alt=\"arduino_LTfeedback\" width=\"962\" height=\"639\" srcset=\"https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTfeedback.jpg 962w, https:\/\/www.objectis-software.com\/support\/wp-content\/uploads\/2014\/01\/arduino_LTfeedback-300x199.jpg 300w\" sizes=\"(max-width: 962px) 100vw, 962px\" \/><\/a><\/p>\n<!-- Simple Share Buttons Adder (8.4.6) simplesharebuttons.com --><div class=\"ssba-classic-2 ssba ssbp-wrap alignleft ssbp--theme-1\"><div style=\"text-align:left\"><span class=\"ssba-share-text\">Share this...<\/span><br\/><a data-site=\"facebook\" class=\"ssba_facebook_share ssba_share_link\" href=\"https:\/\/www.facebook.com\/sharer.php?t=Arduino, how to tune and monitor live step-by-step?&u=https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts\/1607\"  target=_blank  style=\"color:; background-color: ; height: 48px; width: 48px; \" ><img src=\"https:\/\/www.objectis-software.com\/support\/wp-content\/plugins\/simple-share-buttons-adder\/buttons\/somacro\/facebook.png\" style=\"width: 35px;\" title=\"facebook\" class=\"ssba ssba-img\" alt=\"Share on facebook\" \/><div title=\"Facebook\" class=\"ssbp-text\">Facebook<\/div><\/a><a data-site=\"pinterest\" class=\"ssba_pinterest_share ssba_share_link\" href=\"https:\/\/pinterest.com\/pin\/create\/button\/?description=Arduino, how to tune and monitor live step-by-step?&media=&url=https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts\/1607\"  target=_blank  style=\"color:; background-color: ; height: 48px; width: 48px; \" ><img src=\"https:\/\/www.objectis-software.com\/support\/wp-content\/plugins\/simple-share-buttons-adder\/buttons\/somacro\/pinterest.png\" style=\"width: 35px;\" title=\"pinterest\" class=\"ssba ssba-img\" alt=\"Share on pinterest\" \/><div title=\"Pinterest\" class=\"ssbp-text\">Pinterest<\/div><\/a><a data-site=\"twitter\" class=\"ssba_twitter_share ssba_share_link\" href=\"https:\/\/twitter.com\/intent\/tweet?text=Arduino, how to tune and monitor live step-by-step?&url=https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts\/1607&via=\"  target=_blank  style=\"color:; background-color: ; height: 48px; width: 48px; \" ><img src=\"https:\/\/www.objectis-software.com\/support\/wp-content\/plugins\/simple-share-buttons-adder\/buttons\/somacro\/twitter.png\" style=\"width: 35px;\" title=\"twitter\" class=\"ssba ssba-img\" alt=\"Share on twitter\" \/><div title=\"Twitter\" class=\"ssbp-text\">Twitter<\/div><\/a><a data-site=\"linkedin\" class=\"ssba_linkedin_share ssba_share_link\" href=\"https:\/\/www.linkedin.com\/shareArticle?title=Arduino, how to tune and monitor live step-by-step?&url=https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts\/1607\"  target=_blank  style=\"color:; background-color: ; height: 48px; width: 48px; \" ><img src=\"https:\/\/www.objectis-software.com\/support\/wp-content\/plugins\/simple-share-buttons-adder\/buttons\/somacro\/linkedin.png\" style=\"width: 35px;\" title=\"linkedin\" class=\"ssba ssba-img\" alt=\"Share on linkedin\" \/><div title=\"Linkedin\" class=\"ssbp-text\">Linkedin<\/div><\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Arduino, which received an Honorary Mention in the Digital Communities section of the 2006 Ars Electronica Prix, is now fully compatible with Ocf Server. It means that every client (can be oStudio &#8211; Live Tuning or your own application with Ocf Client) can connect to an Arduino single-board microcontroller. As usual, the client can interact with the Arduino board LIVE! You can also get the PDF here. Here is the contents: Introduction Step by step procedure Download and setup Copy Ocfe files to Arduino IDE libraries Extract the example Compile and upload the example to your Arduino target Test and <a class=\"blog-more btn btn-xxs btn-primary\" href=\"https:\/\/www.objectis-software.com\/support\/ocf-server-and-ostudio-live-tuning-now-avalible-on-arduino\/\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[16],"tags":[43,24,21,52,23,44,42,47,35],"_links":{"self":[{"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts\/1607"}],"collection":[{"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/comments?post=1607"}],"version-history":[{"count":35,"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts\/1607\/revisions"}],"predecessor-version":[{"id":2107,"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/posts\/1607\/revisions\/2107"}],"wp:attachment":[{"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/media?parent=1607"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/categories?post=1607"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.objectis-software.com\/support\/wp-json\/wp\/v2\/tags?post=1607"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}