Connecting Arduino to ARC

Connecting to ARC

On the previous step, we programmed the Arduino to become an EZ-B. Now that the code is running on the chip, we can begin using it with ARC.

  1. Load ARC and press the CONFIG button on the connection control

    User-inserted image

  2. Press the SETTINGS tab and select the BAUD RATE for the EZB Index that will be your Arduino. If you're connecting to multiple devices (i.e. EZ-B v4, IoTiny and Arduino), you will want to have each device on a different connection index. I'm using connection index 0 (zero) in my example. Change the BAUD RATE for the connection index that you wish to use. The BAUD RATE was specified in the previous step. By default, most of the EZ-Arduino firmwares will be 57600 baud.

    User-inserted image

  3. Press SAVE

    User-inserted image

  4. Click on the ADDRESS input of the device index that you configured for the Arduino. In my example, I'm using index 0 (zero). The ADDRESS will display a number of detected addresses and devices, including a COMx port, which is the Arduino. Select the COMx port. My Arduino is on COM6.

    User-inserted image

  5. Now press the CONNECT button and ARC will connect to the Arduino. The capabilities of the particular Arduino device are detected by ARC and displayed in the debug window. In the example below, I added a debug window to demonstrate the connection log.

Notice the capabilities detected by the Firmware used on this Arduino. There are a number of capabilities listed, but there's a larger number of capabilities missing. For example, there is no Video or Audio support. Consult the capability list of the firmware so you understand what features may be missing before using. If a feature is missing from the firmware, ARC will notify you when attempting to use the capability.

User-inserted image

You may now begin using your Arduino with ARC. The port numbers align with the ports of the Arduino. Based on the Arduino hardware version, you may be limited to ports. For example, the Arduino UNO has 14 digital ports and only 2-13 are usable. This is because 0 and 1 are used for the USB. If you select a port higher than 13 in ARC, nothing will happen on the Arduino because there's no port. The same applies to Analog ports, as the UNO only has 6 ADC ports.

The Arduino Mega, however, has enough ports to satisfy ARC’s port selection dialog.


ARC Pro

Upgrade to ARC Pro

Join the ARC Pro community and gain access to a wealth of resources and support, ensuring your robot's success.

#9  

Very interesting, hopefully this does not stop/limit  any future hardware development like say a newer EZ-5 controller.

United Kingdom
#10  

Wow, this is very interesting and as others have said a Game Changer!! This definitely opens up a ton of questions, but I’ll have a play around with this first.

#11   — Edited

Has anyone gotten it to work yet? I'm in need of some assistance please.

The only servo response I've been able to get is on "D0" of my UNO. No other pin combination responds.  Even then, I seem to have wrong speed and position, as my small servo barely moves between 0-90 and only in one direction.  Its also backwards in the "Servo Summary."  Speed scroll moves position setting and position scroll moves speed setting.  I'm guessing I have a few things set incorrectly or perhaps way off base.  I'm green at this, so take it easy on me.;)

Whoops...Hello by the way!  This is my first post and first time ever using ARC.  I don't know about anything else here yet. I just downloaded it tonight and jumped in with my Arduino and servos.  Sorry if this is the wrong place to ask questions, but I haven't found a user forum yet. thanks!

#12   — Edited

:DHey there, Welcome HuneyBee Glad you have jumped on trying ARC on your Arduino! I am very curious to see if anyone does get this working out!

United Kingdom
#13  

I followed the "'Connecting Arduino to ARC" step by step and loaded the Arduino Uno firmware OK onto my Arduino Uno board.

But I get the following error message when attempting to Connect to the ARC.

03-Feb-19 4:36:24 PM - Attempting connection on COM3 03-Feb-19 4:36:25 PM - Connected to COM3 at 57600 03-Feb-19 4:36:25 PM - Reports 222 03-Feb-19 4:36:47 PM - Connection Failed: System.Exception: This device is not an EZ-B. Please follow the online tutorials on the EZ-Robot website. at EZ_B.EZB.o412JueFyx() at EZ_B.EZB.Connect(String hostname, Int32 baudRate) 03-Feb-19 4:36:47 PM - Disconnected

Could it be I'm using a Arduino Uno+ board, rather then a standard Arduino Uno board? The boards should be identical apart from the Uno+ has more features regarding power pin-outs and USB.

PRO
Synthiam
#14   — Edited

Hunnybee: welcome! That’s interesting - what servo shield are you using? And are you powering the uno with a battery? It won’t run off usb. The ports D0 and D1 won't be used on the Arduino because they are reserved for DEBUG and USB communication on all Arduinos. So the firmware has the ports D0 and D1 ignored. The reason you may see servos on D0 or D1 move is due to the USB traffic. There's no way to control D0 or D1 from ARC because it's reserved for the USB on all Arduinos.

Something else to notice which is bizarre on the arduino servo shields is they seem to provide servo power from the voltage regulator, which means +5 volts. That's not very useful because most servos will brown-out the pcb.

Cem: you’re not using the beta ARC.

United Kingdom
#15  

Thanks JD, Yep, I didn’t read all the requirements!!

ARC Version

  • This feature works with ARC 2019.01.31.00 Beta or newer
#16  

Thanks everyone for the welcomes.  Also thanks for updating the code.  I uploaded the latest version.  Now I have much more success than my first time around using the UNO.  I am getting the servo responses I expect, though I still have a lot to figure out in general.

I started printing an INMOOV head as my first project, but I had to shelve it for a number of reasons.  I haven't decided what else will be my first robotics project, but it will definitely be much smaller scope.  I'm excited to learn about ARC.  I hope to see you all around here somewhere.  Thanks again!