Release 2012.11.17.00

(Autonomous Robot Control Software)
Make robots with the easiest robot programming software. Experience user-friendly features that make any robot easy to program.

Change Release Notes

This ARC update introduces a fantastic new feature to extend single scripts for event triggers. Until now when an event was triggered, it would execute only a single script command. Now you can add multiple scripts to a single command. Keep in mind, these are still "Event Triggers" and not complete scripts. This is how event trigger programming works in software - while a trigger is executing, it blocks all other commands until it has completed. This means you should not perform time intensive commands (i.e. loops and waits, etc).

  • All Event Triggers now support multiple EZ-Script lines
  • SendSerial() command no longer disconnects EZ-B if more than 9 characters are sent

User-inserted image

Enjoy :)

ARC Downloads

ARC Free


  • Includes a free 3rd party plugin robot skill per project
  • GPT-Powered AI support
  • Free with trial limitations

For schools, personal use & organizations. This edition is updated every 6-12 months.



Only $8.99/mo

  • 2 or more PCs simultaneously
  • Includes unlimited skills
  • Premium support discount
  • And much more

Experience the latest features and bug fixes weekly. A Pro subscription is required to use this edition.



  • Load and run any ARC project
  • Operates in read-only mode
  • Unlimited robot skills
  • Early access fixes & features

Have you finished programming your robot? Use this to run existing ARC projects for free*.

  • Minimum requirements are Windows 10 or higher with 2+gb ram and 500+MB free space.
  • Recommended requirements are Windows 10 or higher with 8+gb ram and 1000+MB free space.
  • ARC Free known-issues can be viewed by clicking here.
  • Get more information about each ARC edition by clicking here.
  • See what's new in the latest versions with Release notes.

Compare Editions

Feature ARC
  Get ARC for Free View Plans
Usage Personal
Premium support $14.99/ticket $9.99/ticket
Feature requests Yes
Early access to new features & fixes Yes
Simultaneous microcontroller connections* 1 255
Robot skills* 20 Unlimited
Skill Store plugins* 1 Unlimited
Cognitive services usage** 10/day 6,000/day
Auto-positions gait actions* 40 Unlimited
Speech recongition phrases* 10 Unlimited
Camera devices* 1 Unlimited
Vision resolution max 320x240 Unlimited
Interface builder* 2 Unlimited
Cloud project size 128 MB
Cloud project revision history Yes
Create Exosphere requests 50/month
Exosphere API access Contact Us
Volume license discounts Contact Us
  Get ARC for Free View Plans
* Per robot project
** 1,000 per cognitive type (vision recognition, speech recognition, face detection, sentiment, text recognition, emotion detection, azure text to speech)


Upgrade to ARC Pro

Stay at the forefront of robot programming innovation with ARC Pro, ensuring your robot is always equipped with the latest advancements.


@DJ - Good morning. Thank you for the latest update. I don't want to say this but the sendserial issue is still there except it will let me send 9 characters the first time and then the next time you send it the EZ-B locks up, the blue light goes out and does not come back on. For example SendSerial(d1, 9600, "12345678") will work everytime, but SendSerial(d1, 9600, "123456789") will only work once, if you send it again, lockup.

Again I tried this one 2 different EZ-B boards, a second pc, as well as tried a serial lcd module.


Ahh, very cool (if I understand this). For example; I don't have to have a different script written outside of the Voice Recognition panel for each voice command I want to do different things? I can put these scripts right in the Voice Recognition panel next to the command?

Thanks for this update. If what I asked above id correct it sounds like it will make things a lot more neater and less confusing. This and the Script Manager are a real big improvement for large projects.

Dave Schulpius


Thank you @Dave:) Please follow the directions that time intensive scripts should not be placed in triggers or you will block new commands from executing. I know many people are not familiar with Event Trigger programming, but that is how it works. If you want the code to be run in a seperate thread (i.e. background) then use the ControlCommand (cc). Otherwise, multiline scripts can be called by a single event trigger if they are not time intensive.

Time intensive scripts include commands such as "Servo_Wait" or "Goto Loops", etc..

@CharleyBot, i cannot reproduce the error you are experiencing. On our test machines the SendSerial works. I'm not certain what localized issue is causing your experience. I can look into it further later. A few releases ago the SendSerial was optimized and the communication speed between the EZ-B and PC was increased. The SendSeial was sending data to the EZ-B quicker than the slower baud rate specified. For example, sending data to the EZ-B for a 9600 baud rate took longer to send a character than the EZ-B protocol command.

I'll take a look later and see if there is anything additional that hasn't been considered for your localized issue.


@DJ - Thank you, I appreciate it, I know its only when I send text strings, everything else works fine with SendSerial, I will go through my setup today and install ARC on a new laptop I just got in and go from there with testing both a Serial LCD and the EMIC2 module.

Thanks again


@charleyBot try the version that is up today 2012.11.18.00


I'll give it a whirl as well. Been fighting with my LCD for the last 2 days.



If I send this:

SendSerial(D13, 9600, "1234567890123456")

I get an output of this:



@Lumpy does it disconnect?

If it does not disconnect, then all characters are being sent. It is impossible for that to be an issue.


On the second send it will disconnect on me.

I've rebooted, .Net was just updated the other day.


If i only send 8 characters I can send it multiple times with no problems.

If I add in a 9th character it will send once, then on the second or third send it disconnects.


@DJ - I can now send a max of 13 characters before the EZ-B will lockup. My Script is:

SendSerial(D3, 9600, "sHello Charle", 0x0d)

If I add to the script:

SendSerial (D3, 9600, 0x0D) Sleep(20) SendSerial(d3, 9600, "sHello Charle",0x0d) Sleep(20)

It causes the EZ-B to lockup, blue light does not come on anymore and the red BT light starts blinking.

Is there anything else you want me to try with this? I am wondering if I need to add a resistor to it.

This is also happening on the Serial LCD module I have.


You do not need to add a resistor. I cannot reproduce these errors on any of our computers. I'll try looking at it later - i'm driving blind.


I can make a vid?


@DJ - okay, I appreciate it. Thank You


@Lumpy seeing the failure won't help. It's about watching the insides of windows :)


No problem. Just trying to help.

To brighten your day!


Lumpy! Yes, that did it:D you rock


@DJ, not that this will help with the troubleshooting, but I can confirm that it is not an isolated incident with @Charleybot or @Lumpy... nor does it seem to be related to hardware attached to the EZ-B. I set up a script with the following;

SendSerial(d7, 9600, "123456789")

I used D7 that has nothing attached to it.

After the 3rd time running the script my EZ-B locked up, blue LED went out and while my auto-connect script kept trying to do its thing, and it showed such with the red LED, I had to power off and back on the EZ-B before I could reconnect. ARC does not appear to lock up, just the EZ-B.

Hope this helps.

Oh, also, I am using latest version ARC 2012-11-18


@DJ, here is another tidbit that actually might help... if I keep on manually running the above script, sometimes I see all my connected servos jump just a bit even if the EZ-B does not lock... but inevitably it will lock.


Hi DJ,

Thanks for the good work. Our bot is nearly completed. The main thing that has us stopped dead-in-our-tracks is the loss of camera resolution. We lost glyph detection range by a factor of 10. Any ideas? different camera? ...

Thanks again


Hello @DJ, Did you get a chance to check out the servo release issue I had mentioned a couple of releases back, wherein when using Server/Client any servo release command on the Client (Remote) resulted on the Server (EZ-B) side's matching servo going to 100?

I ask because now I see that in this version a Client side release command always sends its matching Server side's servo to the opposite extreme 1 instead of the 100 of all prior tests (assuming the invert is not on at the Server end... in fact the invert switch setting on the Client does not carry over to the Server anyhow).

Either way, a release all command tends to cause all sorts of havoc on the robot :)

Doesn't matter which PC is the server or client. All other servo and PWM controls seem to work fine.

Thank you.


@DJ - I was just wondering if you had a chance to figure out what was going on with the SendSerial issue with using strings? I have made a temp workaround for the time being by using another pic chip that talks directly to the EMIC2 board and the LCD but would prefer not having to add another pic.