Test Arduino to DHB-10 Communication
Test Arduino to DHB-10 Communication
This next sketch asks the DHB-10 for its hardware and firmware versions, and displays the results in Terminal. Here is what you’ll see if your Arduino communicates successfully with the DHB-10 (left) alongside messages you might see if communication fails (right).
IMPORTANT: Your Arlo will not be ready for the next step until it displays nonzero values for fwver and hwver.
NOTE: If your terminal output resembles the one on the right, try the Arlo Failed the Communication Test section in Troubleshooting.

- Make sure your programming cable is connected, the Arlo’s Main power is on, and the BOE Shield’s power switch is set to 2.
- Turn on the Arlo’s Motors power.
- Verify that the DHB-10’s indicator lights blink on/off orange once every second.
- If not, go back to the Arlo Assembly Tutorial and start checking wiring connections.
- Open and run Arlo-Test-Arduino-DHB-10-Communication.ino.
- If the Terminal displays only 0 values (like fwver = 0, hwver = 0), recheck the cables connecting the BOE Shield servo ports to the DHB-10’s Ch1 and Ch2 ports.
- If the Terminal displays the hardware and firmware versions (like fwver = 10, hwver = 1), make a note of the firmware version, and then proceed to the Test Motor Connections section.
/*
Arlo-Test-Arduino-DHB-10-Communication
You'll be ready for the next step when the Arduino Terminal displays:
fwver = 10
hwver = 1
*/
#include <ArloRobot.h> // Include Arlo library
#include <SoftwareSerial.h> // Include SoftwareSerial library
ArloRobot Arlo; // Declare Arlo object
SoftwareSerial ArloSerial(12, 13); // Declare SoftwareSerial object
// DHB-10 -> I/O 12, DHB-10 <- I/O 13
void setup() // Setup function
{
tone(4, 3000, 2000); // Piezospeaker beep
Serial.begin(9600); // Start terminal serial port
ArloSerial.begin(19200); // Start DHB-10 serial communication
Arlo.begin(ArloSerial); // Pass to Arlo object
int fwver = Arlo.readFirmwareVer(); // Check DHB-10 firmware
Serial.print("fwver = "); // Display firmware version
Serial.println(fwver, DEC);
int hwver = Arlo.readHardwareVer(); // Check DHB-10 hardware
Serial.print("hwver = "); // Display hardware version
Serial.println(hwver, DEC);
}
void loop() {} // Nothing for main loop