Ez-builder 2014.03.27.00

Download and install the latest ARC robot programming software to experience these updates.

Download ARC
Software Information
*Warning: This update includes a firmware update to the EZ-B v3.

This is an update to the EZ-B v3 firmware in preparation for shipping the v4. As you know, the v4 has amazing bandwidth and super low latency of all asynchronous events (i.e. streaming video, streaming audio, commands, etc.). The bandwidth of the EZ-B v4 is 6.66 mbps, which is a kabillion times faster than the 9600 bps of EZ-B v3. The ARC and EZ-SDK had filters which prevented too much data from flooding the communication channel of the EZ-B v3. Well, I have learned a thing or two while designing the v4.

The communication protocol between the client and EZ-B has always been very optimized and efficient - that was never a concern. However, how the EZ-B internally processes and buffers the incoming commands was improved. While designing the v4, I took advantage of the ARM CPU's many DMA channels. DMA is the Direct Memory Access feature of full featured processors; even found on in your PC. With DMA, the processor does not need to use expensive program instructions to perform simple tasks between Peripherals (hardware) and Memory. The EZ-B v4 has 8 DMA channels actively operating to buffer data between peripherals and the memory... This allow the main program to use it's impressive 120mhz processing speed effectively.

What does this have to do with the v3? Well, the v3 is a very simple and (forgive me) old school microcontroller. This old hardware does not have DMA, so the main program needs to handle both peripherals and command instructions - sharing the total processing speed of only 40mhz.

A while ago, I had an interesting idea - of how to take advantage of the hardware interrupts of the EZ-B v3's microcontroller to simulate a DMA style input buffer... Well, guess what? It works!

The benefits to the v3 having this custom software DMA faux input buffer is ARC no longer requires a communication speed filter. This also means far more responsive commands. During tests last night, Jeremie was changing colors of a BlinkM RGB LED over I2C while running a 12 servo Auto Position Script. With the previous 16.0 firmware, the BlinkM color changes were twitchy and laggy. With the new improved firmware 16.3, the responsiveness was very noticeable.

Also, those who use Ping and Sharp IR sensors will notice a dramatic performance difference!

There have been a few other changes in the latest v3's 16.3 firmware... However, these are changes which are internal to the operation of the EZ-B v3 for compatibility with the upcoming v4. Although there are no "new" features to the EZ-B v3, there are many reliability and performance enhancements - that I am certain you will notice.

The biggest change to this update is also the communication protocol. In order to make room for the new EZ-B v4 commands, the protocol needed to be reworked a little - do not worry, it's still as efficient as always :). This does mean that the Android App will also need to be updated in order to work with this new firmware 16.3. I'll post the Android App update later this evening.

- new command: GetADC12()
- new command: checkForUpdate()
- fix for $array[$x] support
- SDK supports 12 bit ADC
- all tracking types display more than one object returned but will only use the largest detected object
- support for three UART ports on v4
- removed support for v1 file format
- removed TCP password for v4 compatibility
- removed TCP ARC Command Server which allowed EZ-Builders to be chained together for v4 compatibility
- display variable arrays in form varaiable watcher
- EZ-B v3 Firmware v16.3
United Kingdom
Awesome update, I'll be sure to test it out on ping and IR sensors when I get the chance.
Thank you DJ for your generous explanation and enormous power enhancing firmware update!:) Very appreciated!
With so much attention being centered around Revolution and the V4, I think that it's way cool you still show your love to the V3 aslo. I was planning on spending some time with the V3 this weekend now, I'm even more excited.
This is why I love this company. They think of us and continually improve it's product!
Wow! Just upgrade firmware and tested. I can really see the difference.

Like the others mentioned; I'm amazed at how much time EZ Robot has put into not only supporting the older boards but actually making it better. The big powerhoue guys like MS will just phase out the older versions so you buy the new stuff. Thanks for keeping the "old school" new!

Cant wait to get some time this weekend to upgrade and take this one for a spin. I kinda miss the "old days" when the upgrades were comming sometimes twice a week. ;)
Hey Dave... I am sure once we get the V4s, the updates will become more frequent again...
Czech Republic
I have updated my EZB v3 - OS for 16.3 and Builder for 2014.03.27.00. From this moment I have the problem with flicker of servos. Is it possible to move back to previous versions? I am not happy with that! Please, can you help me, please ?
The servo code has not been changed - can you be more specific of what you are experiencing?
Czech Republic
I only updated SWs. When I saw results, I tried to find reason and step by step I disconnected digital servos to eliminate possible interference, but it had no influence. Servos vibrate all digital and analog. Before update all was correct.

And now servos vibrate

Let me start by saying EZ-B is awesome. I have noticed my pwm sliders and my adc have a few issues after this update. The adc multiplier under the adc value box, seems to have changed from about .019 to .012. The PWM sliders do not STOP when you press stop, I have to play with the slider a little bit to get my motors to completely stop. Also, at 45 percent slider setting the outputs drive at full on.
@donesvarc Very nice WallE! You did a lot of the mods to it.
Czech Republic
Thank you Troy .Me and my son are happy. But after last update not. I would like to ask for help.
As always, I'll look into it, find the reason, and solve it:) I'll check on that today.

As for the adc multiplier, that has not changed - the multiplier can be edited in the config button. Press the config button and change the multiplier for your voltage.