Bing Speech Recognition icon Bing Speech Recognition Accurate Bing cloud speech-to-text for ARC: wake-word, programmable control, $BingSpeech output, Windows language support, headset compatible Try it →
Tutorial
Published — Updated

Connecting Arduino To ARC

Step 1 of 4

Program an Arduino and connect it to ARC to become an EZ-B.


Related Hardware (view all EZB hardware)
Program Arduino Uno with EZB firmware for Synthiam ARC control; pinouts, PWM pins and frequency details for Arduino boards.
USB
Servos 12
Camera
Audio
UART
I2C
ADC 6
Digital 14
Synthiam ARC enables Arduino Mega 2560 control with 8 ADC, 13 PWM, 21 digital ports and 24 servos; includes firmware, shield and tutorials
USB
Servos 24
Camera
Audio
UART 3
I2C
ADC 8
Digital 21
Connect Synthiam ARC to Arduino Leonardo via USB using EZB firmware to control GPIO, PWM, servos, and ADC; enable DTR in ARC connection.
USB
Servos 12
Camera
Audio
UART Varies
I2C
ADC Varies
Digital Varies

Compatible Arduinos

This tutorial currently covers what Arduino's are compatible with ARC, where to download the firmware, how to flash the Arduino and connect to ARC.

Once you follow this tutorial and program an Arduino, you will be able to connect an Arduino to ARC and control the Arduino. Essentially, you will be converting an Arduino into an EZB. The best part about this is having access to the source code means you can add new functionalities to the Arduino and extend the capabilities of ARC. The one item to note is each Arduino will have different capabilities or lacking capabilities (i.e. video, audio, etc.).

ARC Version

  • This feature works with ARC 2019.01.31.00 Beta or newer

Arduino Capabilities Additionally, each Arduino model will have a different MCU (microcontroller) with different capabilities for servos, PWM, and Analog. Consult the datasheet/manual of the Arduino you're using to ensure you understand what ports are available for different commands. For example, some Arduino models only allow PWM/Servos on specific digital ports. Meanwhile, other Arduino's share I2C with Analog ports. You will have to determine what ports are available because we have no idea due to the number of Arduino versions out there. For example, servo ports on Arduino UNO must be PWM ports 3, 5, 6, 9, 10, and 11. These limitations are that of the Arduino libraries and hardware.

There's a significant number of Arduino's variations out there each with slight modifications. This means the base firmware provided in this tutorial can be modified for various Arduino configurations. Also, you are free to add new features to the Arduino firmware and register them as Capabilities to be used in ARC. But, that's a future edit of this tutorial:).

User-inserted image

*Arduino Mega showed in the picture above

Compatible Official Arduinos The ARC software is compatible with a number of Arduino products, which the firmware can be found on their respective pages. Find your Arduino board and download the firmware from this page: https://synthiam.com/Support/Hardware/Hardware-Overview

Download the firmware source code for your Arduino version or compatible from the above link and continue to the next step of this tutorial. *Note: compatible or clone Arduino's will require a toolset and library installation to compile the firmware. Check the Arduino compatible product manual for instructions on adding libraries and tools to the Arduino IDE for clone hardware.


ARC Pro

Upgrade to ARC Pro

Stay on the cutting edge of robotics with ARC Pro, guaranteeing that your robot is always ahead of the game.

Author Avatar
PRO
Synthiam
LinkedIn Thingiverse Twitter YouTube GitHub
#33  

Any for that board will work. They just create a virtual COM port in Windows, which you select in ARC.

#35  

DJ, I assume you can use the EZ-B as connection 0 and add the arduino to connection 1 to give yourself additional I/O correct?

What If the arduino has WiFi already? Can we use it wirelessly?

Author Avatar
PRO
Synthiam
LinkedIn Thingiverse Twitter YouTube GitHub
#36  

Yes to the ezb #1

yes to the WiFi version of arduino. Look in the getting started guide for the WiFi enabled arduino

Author Avatar
PRO
USA
#37  

Great tutorial

I used my Arduino today, com3 on ARC

sharp sensor:

used port ADC3

sharp IR radar

ADC graph

ADC meter

ADC read

All went well

Author Avatar
PRO
Synthiam
LinkedIn Thingiverse Twitter YouTube GitHub
#38  

That's great news! Appreciate the feedback:D

#39  

@DJ-Sures,

Any updates on adding "Capabilities"?  I'm looking to use an Arduino Mega as an EZ-B controller, but need to add (I think?) a library to manage some Neo Pixels.  Any thoughts or suggestions?

Thanks,

John