US-100 Ultrasonic Sensor Module Temperature Compensation Distance Measuring

SKU: FA3006-4
Module Model

US-100

Operating Voltage

DC 2.4V – 5.5V

Static Current

< 2mA

Ultrasonic Frequency

40kHz

Detection Range

2cm – 450cm

Measurement Accuracy

0.3cm + 1%

Sensing Angle

< 15°

Interface

GPIO (level) or UART (jumper selectable)

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)

Usage

GPIO Mode (Jumper Removed)

  1. Connect power — Supply 2.4V–5.5V DC to VCC and GND .

  2. Connect Trig and Echo — Connect Trig/TX to a digital output on your MCU, Echo/RX to a digital input .

  3. Send trigger pulse — Set Trig HIGH for at least 10µs, then LOW .

  4. Read echo pulse — Measure the HIGH pulse duration on Echo. Calculate: Distance (mm) = PulseWidth (µs) × 34 / 100 / 2 .

  5. No temperature calculation needed — The module already applies temperature correction internally .

UART Mode (Jumper Installed)

  1. Set jumper — Place the shunt on the mode selection jumper on the back of the module .

  2. Connect serial — Connect the module’s Trig/TX to your MCU’s TX, and Echo/RX to your MCU’s RX (not crossed) .

  3. Configure serial — Set your MCU serial port to 9600 baud, 8-N-1 .

  4. Read distance — Send 0x55, then read two bytes: Distance (mm) = FirstByte × 256 + SecondByte .

  5. Read temperature — Send 0x50, read one byte: Celsius = Byte – 45 .

Pin Connections

Module Pin Function (GPIO Mode) Function (UART Mode)
VCC Power (2.4V–5.5V) Power (2.4V–5.5V)
Trig/TX Trigger input UART TX (to MCU TX)
Echo/RX Echo output UART RX (to MCU RX)
GND Ground Ground
GND Ground Ground

Typical Applications

  • Outdoor robotics — Temperature-compensated obstacle avoidance in varying weather

  • Liquid level sensing — Water tank and reservoir monitoring

  • Parking sensors — Vehicle proximity detection with reliable readings

  • Weather stations — Distance and temperature data in one module

  • Automation projects — Precise ranging for industrial and DIY systems

Notes for Business Buyers

  • Superior to HC-SR04 — Temperature compensation, UART mode, and lower power consumption (2mA vs. 15mA) .

  • Proven performance — Independent testing confirms 1–1.3% average accuracy in real-world temperature conditions .

  • Dual-mode flexibility — One module serves both classic trigger/echo and serial projects.

  • Suitable for bulk purchasing — Ideal for robotics manufacturers, outdoor sensor integrators, and educational institutions.

Q: What is the US-100 Ultrasonic Sensor Module used for?

It is a distance measuring sensor with temperature compensation, used in robotics, liquid level sensing, parking systems, and outdoor projects where temperature fluctuations affect accuracy .

Q: What is the difference between US-100 and HC-SR04?

The US-100 adds onboard temperature compensation, supports UART mode in addition to GPIO, and consumes under 2mA static current (vs. ~15mA for HC-SR04) .

Q: How does temperature compensation work?

The module automatically measures ambient temperature and corrects the distance calculation internally. In GPIO mode, the Echo pulse width already accounts for temperature effects, so you can use the standard 340 m/s speed of sound .

Q: How do I switch between GPIO and UART modes?

Use the jumper on the back of the module. When the jumper is removed, the module operates in GPIO (trigger/echo) mode. When the jumper is installed, it operates in UART mode .

Q: What is the UART baud rate?

The UART interface operates at 9600 baud, 8 data bits, no parity, 1 stop bit (8-N-1) .

Q: How do I read temperature in UART mode?

Send the byte 0x50 and read back one byte. The actual temperature is Byte – 45 degrees Celsius. For example, if you receive 0x45 (69 decimal), the temperature is 69 – 45 = 24°C .

Q: What is the minimum detection distance?

The minimum detection distance is 2cm. Adafruit recommends using the sensor in the 10cm to 250cm range for best results .

Q: Can I use the US-100 with a 3.3V microcontroller?

Yes. The US-100 operates from 2.4V to 5.5V, so it works directly with 3.3V and 5V systems without level shifting .

Q: Is the US-100 waterproof?

No. The US-100 is not waterproof and should not be submerged in water or operated in wet environments without protection.

Q: Can I purchase in bulk for a product development project?

Yes. This module is suitable for both individual users and business purchasing, including robotics manufacturers, outdoor sensor integrators, and educational institutions.