Connecting Arduino to ARC

Programming Arduino
  1. On the previous step, you were instructed to download a firmware soucecode zip file for the Arduino that you'd like to use. Extract the contents of your zip file somewhere on your hard drive. I create a Arduino folder in My Documents and keep them in there.

    User-inserted image

  2. Enter the folder with your Arduino firmware source file. I'll use the Arduino Mega as an example, but the process is the same for the other Arduino versions.

    User-inserted image

  3. Do you have Arduino IDE programming software installed? If so, double click on the *.INO file and it will load the project into the Arduino IDE software. Otherwise, download Arduino software from HERE.

    User-inserted image

  4. When the software loads, the main file will be the EZ-B firmware. The only field that really matters for you to notice is the BAUD_RATE. You will need to know the BAUD_RATE when connecting to ARC in the next step of this tutorial.

    User-inserted image

  5. Connect your Arduino to the PC via the USB cable

  6. Let's configure the Arduino IDE for your Arduino board. In my example, I'm using the MEGA so I selected that. If you're using an UNO or Duemilanove, select that instead.

    User-inserted image

  7. Specify the COM PORT for your Arduino to be programmed

    User-inserted image

  8. Press the UPLOAD button, which will compile and program the Arduino to become an EZ-B

    User-inserted image

  9. There you go, the Arduino has been programmed and is now an EZ-B. The next step will demonstrate how to connect ARC to the EZ-Arduino. Or is it EasyDuino? OR EZDuino?

    User-inserted image

Remember, you don't have to perform these steps each time. The Arduino will remember the programming when it is turned off and back on again. The program is inside of the Arduino memory until it is reprogrammed. So, feel free to close the Arduino IDE program and move to the next step.


ARC Pro

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.

#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!