The US-100 Ultrasonic Sensor Module is a high-precision distance measuring sensor that stands out from the classic HC-SR04 by integrating onboard temperature compensation and supporting two selectable output modes: the familiar GPIO (trigger/echo) mode and a convenient UART (serial) mode. This makes it an exceptionally versatile choice for robotics, liquid level sensing, parking systems, and outdoor projects where temperature fluctuations would otherwise degrade measurement accuracy .
At the heart of the module is an ultrasonic transmitter and receiver pair operating at 40kHz. In GPIO mode, the module works exactly like an HC-SR04: you send a high pulse of at least 10µs to the Trig pin, and the Echo pin outputs a pulse whose width is proportional to the measured distance . The key difference is that the US-100 automatically measures the ambient temperature and corrects the distance calculation internally. This means the Echo pulse width already accounts for temperature effects, so you can use the standard speed of sound (340 m/s) in your calculations regardless of the actual temperature . The formula for distance in GPIO mode is: Distance (mm) = Pulse Width (µs) × 34 / 100 / 2 .
In UART mode, the module takes over all the calculation work. After enabling the mode jumper, you simply send the byte 0x55 at 9600 baud to trigger a measurement, and the module returns two bytes representing the distance in millimeters. The formula is: Distance (mm) = First Byte × 256 + Second Byte . The US-100 can also act as a temperature sensor in UART mode: send 0x50 and read back a single byte where Celsius = Byte – 45 . This is a unique feature that adds real value for environmental monitoring and calibration purposes.
The module operates from a wide 2.4V to 5.5V supply, making it compatible with both 3.3V and 5V microcontrollers without any logic level shifting . Its static current consumption is under 2mA, which is significantly lower than many comparable ultrasonic modules . The detection range spans 2cm to 450cm, with a measurement accuracy of approximately 0.3cm + 1% and a sensing angle of less than 15° .
A research study comparing ultrasonic sensors for dumpster fill-level monitoring found that the US-100 outperformed the HC-SR04 in distance measurement accuracy, achieving average errors of just 1.01% for metal targets and 1.27% for plastic targets in temperature-varying conditions . Another practical review noted that while many cheap modules claim “5-meter range” but drift by ±15cm when temperature changes, the US-100’s hardware-level temperature compensation keeps readings stable from frosty garages to hot afternoons .
The module measures approximately 45mm × 20mm and uses a standard 5-pin interface (VCC, Trig/TX, Echo/RX, GND, GND) with a 2.54mm jumper on the back for mode selection . In UART mode, the wiring is straightforward: the module’s Trig/TX connects to your microcontroller’s TX, and Echo/RX connects to your RX (note: this is not crossed like normal UART) . Adafruit’s learning guide confirms the US-100 is fully supported in CircuitPython with dedicated libraries .
Important Note: The US-100 is not waterproof and should not be submerged. The minimum detection distance is 2cm, and for best results Adafruit recommends using it in the 10cm to 250cm range . Objects with soft, angled, or highly irregular surfaces may reflect poorly. The module requires a minimum delay between measurements to avoid echo interference.
Whether you are building an outdoor robot, a weather station, a liquid level monitor, or a parking sensor, the US-100’s temperature compensation and dual-mode flexibility make it a smarter choice than the classic HC-SR04. It is suitable for individual makers, students, and businesses purchasing in bulk for product development or educational programs.
Features
-
Onboard temperature compensation — Automatically corrects distance measurements for ambient temperature changes
-
Dual output modes — GPIO (trigger/echo) and UART (9600 baud), selectable via onboard jumper
-
UART temperature reading — Can output ambient temperature (send 0x50, receive Celsius as Byte – 45)
-
Wide voltage range — 2.4V to 5.5V DC, compatible with 3.3V and 5V logic
-
Low power consumption — Under 2mA static current
-
High precision — 0.3cm + 1% accuracy with 1mm resolution
-
Wide detection range — 2cm to 450cm
-
Standard 5-pin interface — VCC, Trig/TX, Echo/RX, GND, GND
-
Compact form factor — 45mm × 20mm PCB
-
Extensive library support — Works with Arduino, CircuitPython, and Raspberry Pi
Technical Specifications
| # | Parameter | Specification |
|---|---|---|
| 1 | Module Model | US-100 |
| 2 | Operating Voltage | DC 2.4V – 5.5V |
| 3 | Static Current | < 2mA |
| 4 | Ultrasonic Frequency | 40kHz |
| 5 | Detection Range | 2cm – 450cm |
| 6 | Measurement Accuracy | 0.3cm + 1% |
| 7 | Sensing Angle | < 15° |
| 8 | Interface | GPIO (level) or UART (jumper selectable) |

























