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

With Synthiam ARC Pro, you're not just programming a robot; you're shaping the future of automation, one innovative idea at a time.

#41   — Edited

So, not quite.  If I'm reading that correctly, its flashing the Arduino sketch in that post and then the control plugin is connecting to that Arduino and its sole purpose is to run the ring?  I'm trying to add the neopixel library to the EZ-Mega.ino sketch and run two rings and a strip.  Am I overthinking it, or is that the right path?

***Update. so I added the library in the Arduino sketch, defined the strip, and have the lights animating via the sketch.  I can still connect to the Arduino from ARC so that part isn't broken.  My question now would be, how can I add a new function and call that from ez-script?  I think that will give me what I'm looking for.

***Update 2.   Ok. so I pretty much figured out that I need to add all the custom functionality to the Arduino sketch that I want (in progress), add a custom firmware (https://synthiam.com/Firmware/NewFirmware), add a new version and upload my firmware while also requesting the New Capabilities (https://synthiam.com/Firmware/NewCapability) that I'm adding.  Whew.  Will make the firmware available when (let's be honest, if) I get it finished.

PRO
USA
#42  

Did you see my Happy New Year Mr. Roman robot with Arduino uno -  make sure you click on the icon on the connection  - then go to settings, change the serial connection to 57600

PRO
Synthiam
#43   — Edited

Noggin - i can revisit the neopixel with arduino on a future live hack... I tried it last spring but man, neopixel isn't my favorite. They use A LOT of power and drain batteries super quick. Also, the whole way they work is kinda wacky... the arduino library didn’t work for me in my past live hack. Might be able to find the archived video somewhere on here and see if I made some mistakes that you could fix?

lots of people seem to like the idea of neopixels because of the convenience. Let's see what we can do...

#44  

DJ Sures - Some of your live hacks were taken down with a DCMA request, it appears, but I've watched #4 which got me started on the custom firmware.  I've baked in basic functionality to the Mega sketch, but don't know how to add the EZB Protocol commands on the software side.  I presume thats via the capabilities request, which I put one in last night, but think I did it wrong.  Essentially, if I get all the functions added to the sketch, and provide a list of the new Protocol commands that are needed to call them, can you add those to the app?  We'd need to coordinate on what bytes to send for the commands, but I modeled it after the command/sub command structure I saw.  I can send you a current copy of the firmware if you'd like to see what I was working on.

Let me know!  Feel free to pm me at my profile email address.

United Kingdom
#45  

Should I be able to control the speed at which the servos move when using an arduino? I have tried ServoSpeed and every thing I can think of and the servos still move at full speed. There doesn't appear to be any arduino code supporting CmdSetServoSpeed .

Please help.

PRO
Synthiam
#46   — Edited

Rhfinch - the Arduino ezb firmware does not support the servo speed capability. The list of capabilities for a ezb are displayed in the lower log when connected.

also, the firmware webpage where you downloaded it from has the list of capabilities.

The work around for servo speed is to use the Auto Position control.

United Kingdom
#47  

Thanks. I'll look at that.

Unknown Country
#48   — Edited

Hello need help, i have an excavator project and i want to check with your software, how to start?. The excavator has an arduino mega, esp2866, 2x L298N