Das Shield kennt 5 Arbeitsmodus. Eingestellt wird der Modus über einen Widerstand an Bauteilposition „R19“:
Ein Trigger (0-1-0) von mind. 10µs auf “RX/Trig” startet das Senden und wenn auf “TX/Echo” das Signal high wird, ist das Echo eingegangen. Die Impulsbreite vom Echo bestimmt Entfernung (Mindeststromverbrauch 2,5 mA)
Im Prinzip gleich wie “Mode 1”, jedoch muss der Triggerimpuls länger sein (mind. 1ms) um den Chip aus dem Tiefschlaf zu holen (Low Power Mode). (Mindeststromverbrauch 40 µA)
Hier gibt es keinen Trigger, sondern das Modul sendet kontinuierlich selbst Signale aus (alle 120ms). Das Echo kommt hier als serieller 16-Bit Wert (=Entfernung in mm?) auf dem “TX/Echo” zurück, mit 9600 Baud 8N1. (Mindeststromverbrauch 2,5 mA)
Wie “Mode 3”, jedoch sendet das Modul erst wenn auf dem “RX/Trig” ein serielles Datenwort 0x01 geschrieben wird, ebenfalls mit 9600 Baud 8N1. (Mindeststromverbrauch 20 µA)
ASCII-Codeausgabe (Mindeststromverbrauch 20 µA).
Es gibt noch das Modul JSN-SR04T, welches ähnlich aussieht, aber hier sind die Modus und Widerstandswerte anders.
| JSN-SR04T | AJ-SR04M |
|---|---|
| Mode 1 (47 kOhm) | Mode 3 (120 kOhm) |
| Mode 2 (120 kOhm) | Mode 4 (47 kOhim) |
In diesem Modus sendet der Sensor selbstständig alle 120 ms einen Ping und gibt das empfangene Echo seriell zurück.
Für den UART-Modus wird die ESPHome Platform jsn_sr04t verwendet.
uart:
id: uart_1
tx_pin: GPIO4 # connected to "RX/Trig" pin of shield
rx_pin: GPIO5 # connected to "TX/Echo" pin of shield
baud_rate: 9600
sensor:
# Configuration for AJ-SR04M set to "Mode 4" (R19=47 kOhm)
- platform: "jsn_sr04t"
name: "Entfernung"
uart_id: uart_1
device_class: distance
update_interval: 10s
Im UART-Modus sendet der Sensor beim Empfang eines Trigger-Bytes 0x01 beim Empfang des Echos 4 Bytes zurück: Ein Header-Byte (0xFF), 2 Datenbytes (Entfernungswert) und ein Checksum-Byte.
Für den UART-Modus wird die ESPHome Platform jsn_sr04t verwendet.
uart:
id: uart_1
tx_pin: GPIO4 # connected to "RX/Trig" pin of shield
rx_pin: GPIO5 # connected to "TX/Echo" pin of shield
baud_rate: 9600
sensor:
# Configuration for AJ-SR04M set to "Mode 3" (R19=120 kOhm)
- platform: "jsn_sr04t"
name: "Entfernung"
uart_id: uart_1
device_class: distance