
Download and install the latest ARC robot programming software to experience these updates.
Get ARCThis release contains a rewrite of the EZ-Script compiler for more features, functions, scientific math and compliance. The old compiler allowed you to embed variables within a quoted string ( i.e. "Text: $variable" ). However, that wasn't a compliant syntax to be similar with other programming languages. The new compiler requires the strings to be concatenated (i.e. "Text: " + $variable). This will aid in education and readability.
There is also a slight speed increase in the compiler. And many new functions for Math and Logic.
A really neat add-in is a new control for the Apple Mobile Device App called FNI Co. Sensor Streamer. There is both a free and paid version available. The control can be found under the Misc category of Add Control. The control will set variables to the values of parameters from the application. This includes sensors such as Compass (teslameter), Accelerometer, Gyroscope, GPS (longitude, latitude), and touchscreen. It's a really great app! Download App: https://itunes.apple.com/app/sensor-data-streamer/id608278214?mt=8
Changes:
- New EZ-Script compiler
- New Control: Sensor Streamer Server
- New memory Variable Manager
- File->Open dialog remembers last open location
To Use
1) Load EZ-Builder
2) Select Projects tab from top menu
3) Press Add Control
4) Select MISC tab
5) Add the control "Sensor Streamer Server"
The control will default to port 1111. Configure your Mobile Device to connect to your computer's IP Address. The control will display the Accelerometer, Gyroscope and Compass Direction. The Config menu will allow you to assign sensor values to EZ-Script variables. The Sensor Stream Server will also control servos. This can be configured under the Config menu of the control.


There is also a slight speed increase in the compiler. And many new functions for Math and Logic.
A really neat add-in is a new control for the Apple Mobile Device App called FNI Co. Sensor Streamer. There is both a free and paid version available. The control can be found under the Misc category of Add Control. The control will set variables to the values of parameters from the application. This includes sensors such as Compass (teslameter), Accelerometer, Gyroscope, GPS (longitude, latitude), and touchscreen. It's a really great app! Download App: https://itunes.apple.com/app/sensor-data-streamer/id608278214?mt=8
Changes:
- New EZ-Script compiler
- New Control: Sensor Streamer Server
- New memory Variable Manager
- File->Open dialog remembers last open location
To Use
1) Load EZ-Builder
2) Select Projects tab from top menu
3) Press Add Control
4) Select MISC tab
5) Add the control "Sensor Streamer Server"
The control will default to port 1111. Configure your Mobile Device to connect to your computer's IP Address. The control will display the Accelerometer, Gyroscope and Compass Direction. The Config menu will allow you to assign sensor values to EZ-Script variables. The Sensor Stream Server will also control servos. This can be configured under the Config menu of the control.


I was not connected to my EZ-B at the time, so if this is like how voice reco used to require the board to be connected for timing, then my test may have been invalid.
I'll try again tomorrow night connected to an EZ-B unless DJ can post some information about what specifically the stream is watching for.
DJ, if you want to add Android support, Sensor Fusion has the cleanest interface, but also crashed on me several times and would not even save data to a log file. IMU+GPS Stream includes the most sensor data but I need to update the target IP address and which sensors I want to stream every time I run it. Wireless IMU only streams three sensors, but is also open source, so could be a good place to start if we want to build a ARC specific app.
Alan
DJ, is it possible to make an addition to the Digital panel ? The Set Digital is fine but I'd like to be able to control more I/O. I am currently testing a track platform and it need 4 i/o total to work, 2 for the right motor and two for the left one. I know it's selfish to ask for this but at least it will populate a little bit the Digital window
Thank you for the good work and so many improvement !
André
I just think I can use a joystick unstead with script, it will be much better, I will be able to have speed control at the same time as direction (for the mower, the other is only on or off). So, will have to wait until tomorrow to purchase a joystick
The toggle function is to toggle the state of the output of one digital port ? I made a search and was not able to fin any example in the forum, only in ARC and I can't test it now, my wife is sleeping.
Thank you DJ for the good suggestions, I am very happy with my EZ kit and it alway's surprise me with the possibility you have made in it.
André
Just to show you the little thing I test, it's not good looking for now:
Thank's again DJ
The first time I run the script control it gives me 0's regardless of the color of the BlinkM. The second time I ran it, it disconnects the EZ-Robot controller in the connection widget.
From the ARC BlinkM control I was able to read and set values just fine. My BlinkM fades through many colors as a default program. I was able to pick up different values at different times.
Is it a flaw with the example code?
from : https://www.ez-robot.com/Community/Forum/posts.aspx?threadId=3918
Code:
Have you tried substituting the $i2caddress variable for the actual address, in this case 0x09?
Return in the status window when it disconnects.
Code:
I'll try and test it on mine later if I can.
So far, the only thing I cannot get to work is the example script provided above of which I posted the reference to where I found it in the EZ-Robot forum. My actual project is a I2C compass module that I cannot get working with the ARC script. But since I am certain my BlinkM is operational, I figured it is better to use to debug my I2C issues.
Since the ARC BlinkM control works, I'm certain the EZ-Robot and BlinkM work fine. Just trying to figure out the script side.
Thanks so much. I appreciate all you can do to help me figure out how to use I2C with the ARC script.
That will help
Now I'm looking forward to getting my compass working. Thanks for all the help. EZRobot makes this hobby super fun.
I was trying to write an ezscript using the sensor streamer compass variable for navigation without success.
Would you please publish an example on how to do that?
Nick
@Dj I suppose that since this conversation is 3 years old now there's no hope that there'll be a version of the the current UDP sensors listener that is compatible with either of the Android apps mentioned by @thetechgourou? It's really a pity since the iPhone is a control freak which does not allow for any remote control, nor any customization nor any way to relaunch an app remotely, while Android allows for all these options. Using a GPS, and orientation sensors in general is, in my case, totally meant to work on autonomus robots, not high tech RC cars, so there's no point for me to use an iphone since they will always eventually stop running their sensor and it will not be possible to restart it remotely...
@Alan, btw, the ARC is receiving the data stream from IMU+GPS Stream Android App, if you look into the debug you'll see it prints in loops that the received data is invalid. I think you're right, it might indeed be a matter of headers and raw data. It's really frustrating to see that, basically, my robot will never have any sort of reliable position/direction/orientation reading since on one end my EZ-robot's MPU9150 systematically end up sending inconsistent data, even after calibration attempts : sometimes it works to the perfection, some other times it simply doesn't work any longer (even once plugged to a totally separate controller without any other device connected to it) and, on the other end, my HMC5883, although it sends pretty consistent data, it however systematically crashes the EZBoard due to the inherent totally unreliable nature of i2C on a moving robot with motors and, thus, induction, bumps, etc. (and this is also a pb with the MPU).
Alan
Well... ok then, I'll get to work...
Thanks for the link I'll look into this as soon as the time is given to me... I have a champagne party to set up for Saturday and so far I only bought tons of champagne... @Alan, @Rich or @Dj, join us if you're in NY! Well celebrate five years (I think) since I started as a complete beginner in the field and now became the guy to whom you say: Hey! program it yourself! " I'm sooo Flattered!
@Dj I read and watched all tutorials available on EZ-ROBOT website and so far creating a new plugin is pretty doable as long as it's within EZ_builder's presets classes.
On the other end writing an UDP listener in C# is also pretty simple.
What I can't figure out is how to make these work together within the same code in Visual Studio... here lies my limit right now.