Arduino Basic DRO Controller

Page Index

DIY DRO Using Arduino UNO
Arduino DRO Controller for iGaging Scales


This is the basic version of the DRO controller built around an ATMega168 or ATMega328-based Arduino kit, such as Arduino UNO, Arduino Nano, etc. It can read up to four iGaging DigiMag and/or AccuRemote Remote DRO scales and a directional tachometer.

Ryszard Malinowski has made significant upgrades to my original Arduino v3 sketch. His version handles HAL sensors and low RPM much better than the original version. The documentation and the download links can be found on his website

Compared to the MSP430 Basic DRO Controller, the build cost might be a bit higher, especially when using a name-brand Arduino board. Never the less, this controller's main advantage is the wide availability of parts. With the exception of the Bluetooth Transceiver Module all of the required components are available [in the USA] at the Radio Shack and many other electronic stores. Moreover, since Arduino's Serial-to-USB adapter is supported by the TouchDRO, no additional parts are required for USB connectivity.


  • Parts readily available in most parts of the world
  • Firmware easy to modify and/or upload
  • Can be used with USB connection without extra parts


  • Slightly more expensive than MSP430 Basic version
  • Requires more parts
  • Limited to iGaging/AccuRemote scales


ATMega168 or ATMega328
Clock Frequency
16MHz (8MHz at 3.3V)
Supported Scale Format
21 Bit (Shahe/iGaging Remote DRO and AccuRemote)
Supported Axes
Tachometer Support
Yes (directional)
Scale Refresh Rate
24 Hz (90KHz clock cycle)
Tachometer Refresh Rate
2 Hz
Position Update Rate
UART Speed
9600 Baud

Parts List

*Sparkfun 500 1/4W Resistor Kit from Amazon or includes all of the needed resistor values.