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.
Load ARC and press the CONFIG button on the connection control
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.
Press SAVE
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.
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.
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.
I have an idea for you, but it’ll take a few days to make
DJ Sures, Thank you so much for your response. If you do think of a way that would really be great. You have no idea how much I've already struggled. I knew I was already taking on a big challenge. Thank you!
I have some ideas. Running a few excitements but the plan is to allow a robot skill to extend the servo ports into the Vx ports for arduino firmware. Stay tuned
and thanks for the kind words
Im excited, thank you again!
I presume you will use your Arduino Mega to control a mix of servos and digital ports.
One easy option: change the firmware code to map: EZB 0-23 servos to control arduino mega servo ports 0-23. EZB 0-23 digital ports to control arduino mega digital ports 24-47
so you can control 24 servos and 24 digital ports, is this ok ?
Oh that’s a good idea - it would be easiest change right away. Smart Ptp
DJ taking in consideration Arduino Mega hardware limitations:
I would map the following: Analog: A0-A7
Servos: mega ports D22-D43 = 22 Servos = EZB 0-21 mega ports D68-D69 = 2 Servos = EZB 22-23 Total = 24 servos
PWM Ports: mega ports D02-D10 = 9 ports = EZB 0-8 mega ports D13 = 1 ports = EZB 9 mega ports D44-D46 = 3 ports = EZB 10-12 Total = 13 pwm ports
Digital Ports: EZB 0-12 = same as PWM ports in mega (above) EZB 13-14 = D11-D12 = 2 ports EZB 15-20 = D62-D67 = 6 ports Total = 21 ports ( 8 exclusive for Digital IO and 13 shared with PWM ports)
pin 0 and 1 are serial port 0 / usb port (avoid these ports)
and you have the following: Serial1 on pins 19 (RX) and 18 (TX), Serial2 on pins 17 (RX) and 16 (TX), Serial3 on pins 15 (RX) and 14 (TX).
I2C: D20 - sda D21 - scl
With the above setup: 24 servos 13 pwm ports / digital ports 8 digital ports 8 analog ports serial ports available/free i2c available/free
Super smart. I like it! I’ll make changes and publish. This will be much easier. Thanks again for the idea ptp