Alternatywa: “odchudzony” komponent ESPHome (wM-BUS/M-Bus) – tylko RF→MQTT, dekodowanie poza ESP ( HA )

T1, antenka drucik/sprężynka:
[10:42:04.806][I][wmbus:1333]: DIAG 15min summary / podsumowanie 15min diag: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary_15min interval=900s uptime_ms=900379 listen_mode=T1 only irq=38 (t1=38 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=1 ok=1 truncated=0 dropped=0 crc_failed=0 [10:42:04.810][I][wmbus:1342]: DIAG hint: GOOD | RF link looks stable / łącze radiowe wygląda stabilnie

T1, antenka „bolec":
[11:01:58.013][I][wmbus:1333]: DIAG 15min summary / podsumowanie 15min diag: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary_15min interval=900s uptime_ms=900377 listen_mode=T1 only irq=50 (t1=50 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=0 ok=0 truncated=0 dropped=0 crc_failed=0

Nie wiem, na ile miarodajne może być takie porównanie. Na razie nie jestem w stanie stabilnie i powtarzalnie ustawić anteny, a w przypadku takiego małego dzyndzelka może to mieć spore znaczenie.

O Paaanie…
Nie jestem pewny jak to zrobić, ani czego szukać. Podpowiedz proszę, jak wyłowić C1. Jakimś linkiem poratuj chociaż :slight_smile:

Odpowiedź na ile miarodajne mniej więcej masz w samym logu :

  • przy sprężynce radio wyzwoliło się 38x
  • przy antenie 50x.

Co do dongla…

rtl433.zip (2,5 MB)

Rozpakuj sobie, podłącz dongla z anteną do USB, PC/Laptop/CMD…

rtl_433-rtlsdr.exe -f 868.95M -s 1200k -R 0 -A -vvv

Efekt mniej więcej ( czyli czy dongiel słyszy cokolwiek na 868.950) :

rtl_433 version 25.12 branch  at 202512121350 inputs file rtl_tcp RTL-SDR

New defaults active, use "-Y classic -s 250k" if you need the old defaults

Disabling all device decoders.
[Protocols] Registered 0 out of 290 device decoding protocols
[Input] The internals of input handling changed, read about and report problems on PR #1978
[SDR] Found 1 device(s)
[SDR] trying device 0: Realtek, RTL2838UHIDIR, SN: 00000001
Found Rafael Micro R820T tuner
[SDR] Using device 0: Realtek, RTL2838UHIDIR, SN: 00000001, "Generic RTL2832U OEM"
Enabled direct sampling mode, input 2
[SDR] Sample rate set to 1200000 S/s.
[Input] Bit detection level set to 0.0 (Auto).
[SDR] Tuner gain set to Auto.
[Input] Reading samples in async mode...
[R82XX] PLL not locked!
Disabled direct sampling mode
[SDR] rtlsdr_set_center_freq 868950000 = 0
[SDR] Tuned to 868.950MHz.
[acquire_thread] acquire_thread enter...
Detected FSK package    2026-09-26 13:10:04
Analyzing pulses...
Total count:  618,  width: 2.89 ms              ( 3467 S)
Pulse width distribution:
 [ 0] count:   64,  width:    2 us [2;2]        (   3 S)
 [ 1] count:  156,  width:    2 us [2;2]        (   2 S)
 [ 2] count:  257,  width:    1 us [1;1]        (   1 S)
 [ 3] count:   26,  width:    8 us [7;10]       (   9 S)
 [ 4] count:   41,  width:    3 us [3;3]        (   4 S)
 [ 5] count:   45,  width:    4 us [4;7]        (   5 S)
 [ 6] count:    4,  width:   18 us [17;22]      (  22 S)
 [ 7] count:    9,  width:   12 us [11;14]      (  14 S)
 [ 8] count:    1,  width:   24 us [24;24]      (  29 S)
 [ 9] count:   15,  width:    6 us [6;7]        (   7 S)
Gap width distribution:
 [ 0] count:   37,  width:    3 us [3;3]        (   4 S)
 [ 1] count:  150,  width:    2 us [2;2]        (   2 S)
 [ 2] count:  288,  width:    1 us [1;1]        (   1 S)
 [ 3] count:   47,  width:    2 us [2;2]        (   3 S)
 [ 4] count:   33,  width:    7 us [6;8]        (   8 S)
 [ 5] count:   43,  width:    4 us [4;5]        (   5 S)
 [ 6] count:   11,  width:   11 us [9;13]       (  13 S)
 [ 7] count:    7,  width:   16 us [14;18]      (  19 S)
 [ 8] count:    1,  width:    8 us [8;8]        (  10 S)
Pulse+gap period distribution:
 [ 0] count:  114,  width:    4 us [4;6]        (   5 S)
 [ 1] count:   95,  width:    3 us [3;3]        (   4 S)
 [ 2] count:  105,  width:    2 us [2;2]        (   2 S)
 [ 3] count:   31,  width:   12 us [11;16]      (  15 S)
 [ 4] count:  135,  width:    2 us [2;2]        (   3 S)
 [ 5] count:   61,  width:    8 us [8;11]       (  10 S)
 [ 6] count:    9,  width:   20 us [18;25]      (  24 S)
 [ 7] count:   65,  width:    6 us [6;7]        (   7 S)
 [ 8] count:    2,  width:   16 us [16;17]      (  19 S)
Gap+pulse period distribution:
 [ 0] count:  147,  width:    2 us [2;2]        (   3 S)
 [ 1] count:  121,  width:    4 us [4;5]        (   5 S)
 [ 2] count:   94,  width:    2 us [2;2]        (   2 S)
 [ 3] count:   93,  width:    3 us [3;3]        (   4 S)
 [ 4] count:   65,  width:    8 us [8;11]       (  10 S)
 [ 5] count:   24,  width:   12 us [11;15]      (  15 S)
 [ 6] count:   61,  width:    6 us [6;7]        (   7 S)
 [ 7] count:   11,  width:   18 us [16;23]      (  22 S)
 [ 8] count:    1,  width:   25 us [25;25]      (  30 S)
 [ 9] count:    1,  width:   16 us [16;16]      (  19 S)
Timing distribution:
 [ 0] count:  111,  width:    2 us [2;2]        (   3 S)
 [ 1] count:  306,  width:    2 us [2;2]        (   2 S)
 [ 2] count:  546,  width:    1 us [1;1]        (   1 S)
 [ 3] count:   50,  width:    8 us [7;10]       (   9 S)
 [ 4] count:   78,  width:    3 us [3;3]        (   4 S)
 [ 5] count:   88,  width:    4 us [4;7]        (   5 S)
 [ 6] count:    9,  width:   18 us [16;22]      (  21 S)
 [ 7] count:   21,  width:   12 us [10;14]      (  14 S)
 [ 8] count:    1,  width:   24 us [24;24]      (  29 S)
 [ 9] count:   26,  width:    6 us [6;7]        (   7 S)
Level estimates [high, low]:   1000,     20
RSSI: -12.1 dB SNR: 17.0 dB Noise: -29.1 dB
Frequency offsets [F1, F2]:     708,    903     (+13.0 kHz, +16.5 kHz)
Guessing modulation: Non Return to Zero coding (Pulse Code)
Attempting demodulation... short_width: 1, long_width: 1, reset_limit: 853, sync_width: 0
Use a flex decoder with -X 'n=name,m=FSK_PCM,s=1,l=1,r=853'
[pulse_slicer_pcm] Analyzer Device: Exact bit width (in us) is 0.83 vs 0.83, 1158 bit measured
[pulse_slicer_pcm] Analyzer Device
codes     : {3468}e194331dff0020b6cde801c5c9ee020066ffe99d5a13fc6ce00cbbdfffff86ffdfdc04de413ff994b507ef33104fffdb980016f7cc180cbf658a8affcbbffffffeb76f8038c77660677b23252cdefdba8eb43f3fea3d27c7bb507ae00d9208c93cb0c36a800190896000b772bf8681003f91e5b10bd4fff6dfff25ff862f605fe013f7ffffff7fdfffffb4f91f080a0140b9c3cc3b13deffcda16e620000c0e0ae800289ff98007cfcf99238531b7c025f02bed00e84ffff7cc445fc81080cfedd73fff3ff76b3c30f6137cb90980004008880bf61404b00df02081070201ff4feff6c97cbee3fb5f26cf843a06efec1fa4001028422000006f692524b3f85900459becfe7b83d18c946fefffff59caeb7b6016eef1ff1e8841bdc14d7779ef3203c05f2a3416effecfceadfc19a7affff7fffdfff6ffed4097c6fb7026e0e7f140007fd8000204dfec0303507ff3cca012810fffeffd837bbc5f001b3e08021f802fb40a3b6580e08d7882000039e5f4e54be7e4900679fb7003053fda1000002440006e10de980000a42600000bfe02effeffeaff9f4dbed060001510a79d6dff3ed8049683ffe7bfe4e63b0cee7f67fa

I potem :

rtl_433-rtlsdr.exe -f 868.95M -s 1200k -R 104 -vvv

Efekt:

2 Likes

Mała zmiana w składni ponieważ mój komponent jest używany przez nie polskojęzycznych użytkowników.
Po kompilacji na ESP logi będą wyłącznie w EN i jest to domyślnie.
Włączenie na życzenie logów po polsku :

wmbus_radio:
  log_language: pl

Dzięki.

Na -R 0 zalew, dużo szumu i śmieci.
Na -R 104 tylko T1, tylko mój licznik Otus.

Ale test trwał tylko 3 godziny, ponowię w poniedziałek, może w “porze inkasenckiej” będzie więcej.

Za to płytka przestała działać poprawnie. Wróciła na swoje docelowe miejsce, bliżej licznika i 2 wodomierzy, łapie 1 ramkę, od razu po restarcie, potem przestaje…

INFO ESPHome 2026.9.0
INFO Loaded validated config cache for heltec-wmbus-bridge.yaml, skipping validation.
INFO Starting log output from 192.168.100.105 using esphome API
INFO Successfully resolved esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 0.000s
INFO Starting looking for IP in topic esphome/discover/esphome-wmbus-heltec-v4r8
INFO Connected to MQTT broker!
INFO Send discover via MQTT broker topic: esphome/ping/esphome-wmbus-heltec-v4r8
INFO Found IP via MQTT broker: 192.168.100.105
INFO Successfully connected to esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 7.030s
INFO Successful handshake with esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 0.851s
[23:54:33.670][I][app:151]: ESPHome version 2026.9.0 compiled on 2026-09-26 23:52:52 +0200
[23:54:33.680][I][app:158]: ESP32 Chip: ESP32-S3 rev0.2, 2 core(s)
[23:54:35.619][I][wmbus:618]: Radio active: SX1262 | Listen mode: T1 only | receiver_stack=3072 bytes | diagnostic_mode=normal | meter_stats=highlighted | RF: freq=868.950MHz bitrate=100kbps fdev=50kHz BT=0.5 RxBW=312kHz
[23:54:35.619][I][wmbus:627]: SX1262 YAML sanity:
[23:54:35.619][I][wmbus:630]:   has_tcxo: true -> TCXO enabled
[23:54:35.619][I][wmbus:638]:   dio2_rf_switch: true -> DIO2 RF switch enabled
[23:54:35.630][W][wmbus:660]:   long_gfsk_packets: true -> costs ~7 dB in weak signal; worth it only if you receive frames above ~150 decoded bytes
[23:54:35.640][I][wmbus:674]:   rx_gain: boosted
[23:54:35.640][I][wmbus:684]:   rf_sw_pin: not configured -> OK for boards without a module RF switch; REQUIRED on XIAO ESP32-S3 + Wio-SX1262 (GPIO38), otherwise ~30 dB less sensitivity
[23:54:35.640][I][SX1262:573]: SX1262 REGISTER DUMP BEGIN stage=after_reset
[23:54:35.650][I][SX1262:585]: SX1262 REG [after_reset] 06A0: 00 02 41 55 00 14 7B 08 20 0A 20 07 00 00 00 00
[23:54:35.660][I][SX1262:585]: SX1262 REG [after_reset] 06B0: 00 00 00 00 04 00 14 20 21 00 C6 0F 1D 0F 10 21
[23:54:35.660][I][SX1262:585]: SX1262 REG [after_reset] 06C0: 97 23 52 25 56 53 65 64 00 00 00 00 00 00 00 00
[23:54:35.660][I][SX1262:585]: SX1262 REG [after_reset] 06D0: 00 0C 03 00 00 00 00 00 00 00 00 00 00 00 00 00
[23:54:35.670][I][SX1262:585]: SX1262 REG [after_reset] 0880: 03 00 00 5F 10 08 00 00 08 05 00 39 30 00 00 0C
[23:54:35.681][I][SX1262:585]: SX1262 REG [after_reset] 0890: 00 00 00 00 00 0F 0A 07 10 00 26 01 01 53 06 07
[23:54:35.690][I][SX1262:585]: SX1262 REG [after_reset] 08A0: 10 00 AA 20 5A 04 F0 00 56 56 54 43 94 20 40 00
[23:54:35.690][I][SX1262:585]: SX1262 REG [after_reset] 08B0: 00 83 11 00 01 04 0A 4C 14 0A 2F 01 6B FF FF 00
[23:54:35.700][I][SX1262:585]: SX1262 REG [after_reset] 08E0: 90 39 0C 04 40 20 1C 18 03 00 05 04 03 02 01 01
[23:54:35.700][I][SX1262:585]: SX1262 REG [after_reset] 08F0: 00 00 00 00 30 00 00 00 00 00 00 00 00 00 00 00
[23:54:35.717][I][SX1262:588]: SX1262 REGISTER DUMP END stage=after_reset
[23:54:35.747][I][SX1262:573]: SX1262 REGISTER DUMP BEGIN stage=rx_configured
[23:54:35.760][I][SX1262:585]: SX1262 REG [rx_configured] 06A0: 00 00 28 00 00 CC CC 09 21 10 10 07 00 00 00 00
[23:54:35.760][I][SX1262:585]: SX1262 REG [rx_configured] 06B0: 00 88 00 B0 05 00 40 10 21 00 C1 FF 1D 0F 10 21
[23:54:35.760][I][SX1262:585]: SX1262 REG [rx_configured] 06C0: 54 3D 00 00 00 00 00 00 FF 06 9C 98 01 00 00 00
[23:54:35.761][I][SX1262:585]: SX1262 REG [rx_configured] 06D0: 00 0C 01 00 00 00 00 00 00 00 00 00 00 00 00 00
[23:54:35.770][I][SX1262:585]: SX1262 REG [rx_configured] 0880: 03 00 00 5F 10 08 00 00 08 0E 00 36 4F 33 43 0D
[23:54:35.770][I][SX1262:585]: SX1262 REG [rx_configured] 0890: 55 56 00 10 BD 0F 0A 07 12 80 26 01 01 53 06 07
[23:54:35.785][I][SX1262:585]: SX1262 REG [rx_configured] 08A0: 10 00 AD 20 5A 24 F0 00 56 56 54 43 96 20 40 00
[23:54:35.786][I][SX1262:585]: SX1262 REG [rx_configured] 08B0: 00 83 11 00 01 04 0A 4C 14 0A 2F 01 6B FF 9A 60
[23:54:35.800][I][SX1262:585]: SX1262 REG [rx_configured] 08E0: 90 39 0F 04 48 A0 1C 18 03 00 05 04 03 02 01 01
[23:54:35.800][I][SX1262:585]: SX1262 REG [rx_configured] 08F0: 03 00 00 01 1E 00 00 00 00 00 00 00 00 00 00 00
[23:54:35.811][I][SX1262:588]: SX1262 REGISTER DUMP END stage=rx_configured
[23:54:35.811][I][SX1262:1585]: RegRxGain=0x96 RegSyncWord[0]=0x54 [1]=0x3D [2]=0x00 sync_bits=16
[23:54:35.820][I][SX1262:1588]: RSSI/AGC calibration snapshot: CalH=0x01 CalL=0x53 Tune12=0x00 Tune34=0x00 Tune56=0x00 Tune78=0x00 Tune910=0x00 Tune1112=0x00 Tune13=0x00 FirstPow=0x0A
[23:54:35.821][I][wmbus:719]: Forward whitelist: disabled - every decoded frame is published
[23:54:35.821][I][wmbus:729]: Configuration (SX1262):
[23:54:35.821][I][wmbus:731]:   [core]
[23:54:35.830][I][wmbus:731]:   radio_type: SX1262 (required)
[23:54:35.840][I][wmbus:731]:   listen_mode: t1 (CHANGED, default: both)
[23:54:35.840][I][wmbus:731]:   listen_mode_filter_after_parse: false (default)
[23:54:35.840][I][wmbus:731]:   use_noise_floor_threshold: false (default)
[23:54:35.850][I][wmbus:731]:   noise_floor_margin_db: 6 (default)
[23:54:35.860][I][wmbus:731]:   frequency: not set (mode default: 868.950 MHz for t1/c1/both, 868.300 MHz for s1)
[23:54:35.860][I][wmbus:731]:   receiver_task_stack_size: 3072 (default)
[23:54:35.860][I][wmbus:731]:   allow_untested_framework: false (default)
[23:54:35.870][I][wmbus:731]:   [pins]
[23:54:35.880][I][wmbus:731]:   cs_pin: GPIO8 (set)
[23:54:35.880][I][wmbus:731]:   reset_pin: GPIO12 (set)
[23:54:35.890][I][wmbus:731]:   irq_pin: GPIO14 (set)
[23:54:35.900][I][wmbus:731]:   busy_pin: GPIO13 (set)
[23:54:35.900][I][wmbus:731]:   fem_en_pin: GPIO2 (set)
[23:54:35.900][I][wmbus:731]:   fem_ctrl_pin: GPIO7 (set)
[23:54:35.900][I][wmbus:731]:   fem_pa_pin: GPIO5 (set)
[23:54:35.911][I][wmbus:731]:   [sx1262]
[23:54:35.911][I][wmbus:731]:   has_tcxo: true (CHANGED, default: false)
[23:54:35.911][I][wmbus:731]:   tcxo_voltage: 1.8v (CHANGED, default: 3.0v)
[23:54:35.920][I][wmbus:731]:   dio2_rf_switch: true (default)
[23:54:35.927][I][wmbus:731]:   rx_gain: boosted (default)
[23:54:35.927][I][wmbus:731]:   long_gfsk_packets: true (CHANGED, default: false)
[23:54:35.927][I][wmbus:731]:   clear_device_errors_on_boot: true (CHANGED, default: false)
[23:54:35.928][I][wmbus:731]:   publish_dev_err_after_clear: true (CHANGED, default: false)
[23:54:35.943][I][wmbus:731]:   sx1262_rx_bandwidth: 312khz (default)
[23:54:35.944][I][wmbus:731]:   min_preamble_bits: 16 (default)
[23:54:35.944][I][wmbus:731]:   [output]
[23:54:35.944][I][wmbus:731]:   publish_rssi: false (default)
[23:54:35.960][I][wmbus:731]:   forward_meters: disabled (no whitelist) (default)
[23:54:35.960][I][wmbus:731]:   target_meter_id: "" (default)
[23:54:35.960][I][wmbus:731]:   publish_radio_raw: false (default)
[23:54:35.960][I][wmbus:731]:   telegram_qos: 0 (default)
[23:54:35.970][I][wmbus:731]:   rssi_qos: 0 (default)
[23:54:35.980][I][wmbus:731]:   health_qos: 0 (default)
[23:54:35.980][I][wmbus:731]:   diagnostic_qos: 0 (default)
[23:54:35.980][I][wmbus:731]:   rx_qos: 1 (default)
[23:54:35.990][I][wmbus:731]:   mqtt_buffer_size: 0 (default)
[23:54:35.990][I][wmbus:731]:   buffer_priority: disabled (shared buffer) (default)
[23:54:35.990][I][wmbus:731]:   [diagnostics]
[23:54:35.990][I][wmbus:731]:   diagnostic_mode: normal (CHANGED, default: off)
[23:54:36.000][I][wmbus:731]:   diagnostic_summary_interval: 60s (default)
[23:54:36.010][I][wmbus:731]:   highlight_meters: empty (default)
[23:54:36.020][W][component:419]: wmbus_radio took a long time for an operation (401 ms), max is 50 ms
[23:54:59.869][I][wmbus:552]: RSSI source: inflight (path=stream RssiSync=0x12 RssiAvg=0x98 inflight=-10dBm) -> -10dBm
[23:54:59.889][I][wmbus:557]: SX1262 RX snapshot: IRQ=0x0008 captured=353 exit=t1_length first[8]=D3271C58D59AB254
[23:55:00.076][I][wmbus:1246]: Have data (decoded=207 bytes, raw=353 bytes) [RSSI: -10dBm, mode: T1 A, mfr:APA id:55317789 ver:1 type:2 ci:7A]
[23:55:00.076][S][light]: 'LED' >> OFF
[23:55:25.440][I][safe_mode:154]: Boot seems successful; resetting boot loop counter
[23:55:25.679][I][wmbus:872]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=60374 listen_mode=T1 only irq=3 (t1=3 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=1 ok=1 truncated=0 dropped=0 crc_failed=0
[23:55:25.689][I][wmbus:881]: DIAG hint: GOOD | RF link looks stable
[23:55:25.699][I][wmbus:201]: SUGGESTION [ADD_HIGHLIGHT_METERS]: Meters are being received. Check which IDs appear in wmbusmeters, then add them to highlight_meters to track per-meter reception quality.
[23:55:27.089][W][api.connection:2675]: esphome-device-builder (192.168.100.7): Reading failed CONNECTION_CLOSED errno=128
[23:55:59.849][W][wmbus:1636][radio_recv]: payload read short: remaining=343 total_len=353 already_read=10
[23:55:59.855][I][SX1262:1530][radio_recv]: DEBUG [payload_read_failed]: Status=0x54 (RX) IrqStatus=0x0000 DeviceErrors=0x0000 RegRxGain=0x96 Sync=543D00 RxAddrPtr=0x0A RxTxPldLen=0x0A DIO1=0 BUSY=0
[23:55:59.856][I][SX1262:1537][radio_recv]: DEBUG [payload_read_failed]: sync_word_valid_latched=no receiver_running=yes
[23:55:59.856][W][wmbus:1651][radio_recv]: Failed to read data
[23:56:25.693][I][wmbus:872]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=120379 listen_mode=T1 only irq=1 (t1=1 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=0 ok=0 truncated=0 dropped=0 crc_failed=0
[23:56:25.699][W][wmbus:883]: DIAG hint: RX_NO_MATCH | receiver triggered but nothing passed the filter - something IS transmitting; check listen_mode, min_preamble_bits and the meter's mode
INFO Processing unexpected disconnect from ESPHome API for esphome-wmbus-heltec-v4r8 @ 192.168.100.105
WARNING Disconnected from API
INFO Successfully resolved esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 0.000s
WARNING Can't connect to ESPHome API for esphome-wmbus-heltec-v4r8 @ 192.168.100.105: Error connecting to [AddrInfo(family=<AddressFamily.AF_INET: 2>, type=<SocketKind.SOCK_STREAM: 1>, proto=6, sockaddr=IPv4Sockaddr(address='192.168.100.105', port=6053))]: [WinError 121] Przekroczono limit czasu semafora (SocketAPIError)
INFO Trying to connect to esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in the background
INFO Successfully connected to esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 0.090s
INFO Successful handshake with esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 0.561s
[23:57:25.702][I][wmbus:872]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=180391 listen_mode=T1 only irq=3 (t1=3 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=0 ok=0 truncated=0 dropped=0 crc_failed=0
[23:57:25.707][W][wmbus:883]: DIAG hint: RX_NO_MATCH | receiver triggered but nothing passed the filter - something IS transmitting; check listen_mode, min_preamble_bits and the meter's mode
[23:57:59.847][W][wmbus:1651][radio_recv]: Failed to read data
[23:58:25.708][I][wmbus:872]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=240401 listen_mode=T1 only irq=3 (t1=3 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=0 ok=0 truncated=0 dropped=0 crc_failed=0
[23:58:25.714][W][wmbus:883]: DIAG hint: RX_NO_MATCH | receiver triggered but nothing passed the filter - something IS transmitting; check listen_mode, min_preamble_bits and the meter's mode
[23:58:59.849][W][wmbus:1651][radio_recv]: Failed to read data
[23:59:03.732][W][api.connection:2669]: ESPHome Logs 2026.9.0 (192.168.100.7): is unresponsive; disconnecting
[23:59:25.723][I][wmbus:872]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=300412 listen_mode=T1 only irq=1 (t1=1 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=0 ok=0 truncated=0 dropped=0 crc_failed=0
[23:59:25.728][W][wmbus:883]: DIAG hint: RX_NO_MATCH | receiver triggered but nothing passed the filter - something IS transmitting; check listen_mode, min_preamble_bits and the meter's mode
[23:59:52.671][W][wmbus:1651][radio_recv]: Failed to read data
[23:59:59.937][W][wmbus:1651][radio_recv]: Failed to read data

Płytkę odsuń - to nie ma być bliżej. Uwierz mi bo Ja czytam pół bloku. Teraz masz przesterowanie a Heltec ma wzmacniacz.
Masz drugie narzędzie czyli dongiel - czekaj cierpliwie :slight_smile:

To rodzi kilka problemów. Trochę mi nie na rękę odsunięcie płytki.

Po pierwsze - to miało być docelowe położenie, planowałem nawet rezygnację z Wi-Fi i komunikację z homelabem po USB.

Po drugie - ciężko o miejsce daleko od odczytywanych urządzeń. Wodomierze mam na obu końcach mieszkania, podzielniki dookoła, grzejników mam 6. Nie mam szans spełnić warunku “co najmniej 3 metry od każdego z urządzeń”. Geometryczny środek mieszkania/najdalszy punkt od urządzeń wypada w próżni - brak ściań, brak zasilenia.

Płytka przestała odczytywać licznik prądu jeszcze leżąc w tymczasowym miejscu, daleko od szachtu enektrycznego. Licznik raportuje co minutę. Nie uznaje weekendów. 2 lata nie sprawiał problemów, dongle widzi go cały czas, z dowolnego miejsca, im bliżej tym mniej ramek gubi. Płytka łapie teraz w porywach 1 ramkę na godzinę.

Co zatem mogło stać się z płytką? W międzyczasie parę razy wgrywałem Twój komponent (gałąź Dev). Nie zmieniałeś tam nic? :wink:

Jutro poniedziałek, od rana będę testować różne warianty, znowu odpalę rtl_433 (chociaż to mi przerywa ciągłość odczytów z licznika, ale czego się nie robi, żeby było lepiej).

Dongle grzeje się dość mocno i sporo prądu ciągnie, CPU też trochę obciąża. Dlatego jestem skłonny nawet kupić drugą płytkę, żeby mieć oddzielne urządzenia do C1 i T1, żeby pozbyć się RTL. Ale to nie będzie mieć sensu, jeśli Heltec nie łapie wcale C1 (to może nie być jego wina, być może Ista ma wyłączone OMS i leci w 100% na własnościowym protokole)

Gałąź dev jest dla mnie. Dla userów main - tylko wyjątkowo wskazuje na czas testów dev co nie raz czyniłem a po testach zmiana trafia do main.

Heltec łapie C1 tylko problemem jest próg słyszalności.
Nie poddawaj się, do -90dBm Heltec czyta potem jest głuchy.
Przypominam - ja słyszę 150 liczników sumarycznie.
I o dziwo najnowszy nabytek T-BEAM Sx1262 słyszy lepiej od Helteca - zbieram dane w związku z tym.

Racja, moja pomyłka. MQTT Bridge jest z Deva…

Będę jednak obstawał przy tym, że moja płytka działa niepoprawnie. Mojego licznika nie widzi wcale, dongle widzi bez problemu.

Poza tym teraz jest poniedziałek, powinny odzywać się wszystkie możliwe urządzenia w okolicy, a moja płytka jest praktycznie głucha. Przez kilkadziesiąt minut jeden licznik i to tylko 1 odczyt…

Log też trochę niepokojący:

INFO ESPHome 2026.9.0
INFO Loaded validated config cache for heltec-wmbus-bridge.yaml, skipping validation.
INFO Starting log output from 192.168.100.105 using esphome API
INFO Successfully resolved esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 0.001s
INFO Starting looking for IP in topic esphome/discover/esphome-wmbus-heltec-v4r8
INFO Connected to MQTT broker!
INFO Send discover via MQTT broker topic: esphome/ping/esphome-wmbus-heltec-v4r8
INFO Found IP via MQTT broker: 192.168.100.105
INFO Successfully connected to esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 7.030s
INFO Successful handshake with esphome-wmbus-heltec-v4r8 @ 192.168.100.105 in 0.668s
[12:59:03.970][I][app:151]: ESPHome version 2026.9.0 compiled on 2026-09-26 23:52:52 +0200
[12:59:03.970][I][app:158]: ESP32 Chip: ESP32-S3 rev0.2, 2 core(s)
[12:59:04.796][I][wmbus:1246]: Have data (decoded=29 bytes, raw=53 bytes) [RSSI: -65dBm, mode: T1 A, mfr:APA id:03647369 ver:20 type:7 ci:A0]
[12:59:04.899][S][light]: 'LED' >> OFF
[12:59:06.120][I][wmbus:618]: Radio active: SX1262 | Listen mode: T1 only | receiver_stack=3072 bytes | diagnostic_mode=normal | meter_stats=highlighted | RF: freq=868.950MHz bitrate=100kbps fdev=50kHz BT=0.5 RxBW=312kHz
[12:59:06.129][I][wmbus:627]: SX1262 YAML sanity:
[12:59:06.129][I][wmbus:630]:   has_tcxo: true -> TCXO enabled
[12:59:06.129][I][wmbus:638]:   dio2_rf_switch: true -> DIO2 RF switch enabled
[12:59:06.129][W][wmbus:660]:   long_gfsk_packets: true -> costs ~7 dB in weak signal; worth it only if you receive frames above ~150 decoded bytes
[12:59:06.129][I][wmbus:674]:   rx_gain: boosted
[12:59:06.129][I][wmbus:684]:   rf_sw_pin: not configured -> OK for boards without a module RF switch; REQUIRED on XIAO ESP32-S3 + Wio-SX1262 (GPIO38), otherwise ~30 dB less sensitivity
[12:59:06.129][I][SX1262:573]: SX1262 REGISTER DUMP BEGIN stage=after_reset
[12:59:06.133][I][SX1262:585]: SX1262 REG [after_reset] 06A0: 00 02 41 55 00 14 7B 08 20 0A 20 07 00 00 00 00
[12:59:06.133][I][SX1262:585]: SX1262 REG [after_reset] 06B0: 00 00 00 00 04 00 14 20 21 00 C6 0F 1D 0F 10 21
[12:59:06.133][I][SX1262:585]: SX1262 REG [after_reset] 06C0: 97 23 52 25 56 53 65 64 00 00 00 00 00 00 00 00
[12:59:06.133][I][SX1262:585]: SX1262 REG [after_reset] 06D0: 00 0C 03 00 00 00 00 00 00 00 00 00 00 00 00 00
[12:59:06.147][I][SX1262:585]: SX1262 REG [after_reset] 0880: 03 00 00 5F 10 08 00 00 08 05 00 39 30 00 00 0C
[12:59:06.147][I][SX1262:585]: SX1262 REG [after_reset] 0890: 00 00 00 00 00 0F 0A 07 10 00 26 01 01 53 06 07
[12:59:06.148][I][SX1262:585]: SX1262 REG [after_reset] 08A0: 10 00 AA 20 5A 04 F0 00 56 56 54 43 94 20 40 00
[12:59:06.148][I][SX1262:585]: SX1262 REG [after_reset] 08B0: 00 83 11 00 01 04 0A 4C 14 0A 2F 01 6B FF FF 00
[12:59:06.156][I][SX1262:585]: SX1262 REG [after_reset] 08E0: 90 39 0C 04 40 20 1C 18 03 00 05 04 03 02 01 01
[12:59:06.157][I][SX1262:585]: SX1262 REG [after_reset] 08F0: 00 00 00 00 30 00 00 00 00 00 00 00 00 00 00 00
[12:59:06.157][I][SX1262:588]: SX1262 REGISTER DUMP END stage=after_reset
[12:59:06.186][I][SX1262:573]: SX1262 REGISTER DUMP BEGIN stage=rx_configured
[12:59:06.206][I][SX1262:585]: SX1262 REG [rx_configured] 06A0: 00 00 28 00 00 CC CC 09 21 10 10 07 00 00 00 00
[12:59:06.206][I][SX1262:585]: SX1262 REG [rx_configured] 06B0: 0F FB 00 B0 05 00 40 10 21 00 C1 0A 1D 0F 10 21
[12:59:06.206][I][SX1262:585]: SX1262 REG [rx_configured] 06C0: 54 3D 00 00 00 00 00 00 0A 06 9C A6 01 00 00 00
[12:59:06.206][I][SX1262:585]: SX1262 REG [rx_configured] 06D0: 00 0C 01 00 00 00 00 00 00 00 00 00 00 00 00 00
[12:59:06.208][I][SX1262:585]: SX1262 REG [rx_configured] 0880: 03 00 00 5F 10 08 00 00 08 0E 00 36 4F 33 43 0D
[12:59:06.209][I][SX1262:585]: SX1262 REG [rx_configured] 0890: 55 56 00 10 BD 0F 0A 07 12 80 26 01 01 53 06 07
[12:59:06.209][I][SX1262:585]: SX1262 REG [rx_configured] 08A0: 10 00 AD 20 5A 24 F0 00 56 56 54 43 96 20 40 00
[12:59:06.209][I][SX1262:585]: SX1262 REG [rx_configured] 08B0: 00 83 11 00 01 04 0A 4C 14 0A 2F 01 6B FF C8 60
[12:59:06.249][I][SX1262:585]: SX1262 REG [rx_configured] 08E0: 90 39 0F 04 48 A0 1C 18 03 00 05 04 03 02 01 01
[12:59:06.249][I][SX1262:585]: SX1262 REG [rx_configured] 08F0: 03 00 00 02 1E 00 00 00 00 00 00 00 00 00 00 00
[12:59:06.250][I][SX1262:588]: SX1262 REGISTER DUMP END stage=rx_configured
[12:59:06.250][I][SX1262:1585]: RegRxGain=0x96 RegSyncWord[0]=0x54 [1]=0x3D [2]=0x00 sync_bits=16
[12:59:06.250][I][SX1262:1588]: RSSI/AGC calibration snapshot: CalH=0x01 CalL=0x53 Tune12=0x00 Tune34=0x00 Tune56=0x00 Tune78=0x00 Tune910=0x00 Tune1112=0x00 Tune13=0x00 FirstPow=0x0A
[12:59:06.250][I][wmbus:719]: Forward whitelist: disabled - every decoded frame is published
[12:59:06.250][I][wmbus:729]: Configuration (SX1262):
[12:59:06.250][I][wmbus:731]:   [core]
[12:59:06.250][I][wmbus:731]:   radio_type: SX1262 (required)
[12:59:06.251][I][wmbus:731]:   listen_mode: t1 (CHANGED, default: both)
[12:59:06.251][I][wmbus:731]:   listen_mode_filter_after_parse: false (default)
[12:59:06.251][I][wmbus:731]:   use_noise_floor_threshold: false (default)
[12:59:06.251][I][wmbus:731]:   noise_floor_margin_db: 6 (default)
[12:59:06.251][I][wmbus:731]:   frequency: not set (mode default: 868.950 MHz for t1/c1/both, 868.300 MHz for s1)
[12:59:06.251][I][wmbus:731]:   receiver_task_stack_size: 3072 (default)
[12:59:06.251][I][wmbus:731]:   allow_untested_framework: false (default)
[12:59:06.251][I][wmbus:731]:   [pins]
[12:59:06.252][I][wmbus:731]:   cs_pin: GPIO8 (set)
[12:59:06.252][I][wmbus:731]:   reset_pin: GPIO12 (set)
[12:59:06.252][I][wmbus:731]:   irq_pin: GPIO14 (set)
[12:59:06.252][I][wmbus:731]:   busy_pin: GPIO13 (set)
[12:59:06.252][I][wmbus:731]:   fem_en_pin: GPIO2 (set)
[12:59:06.252][I][wmbus:731]:   fem_ctrl_pin: GPIO7 (set)
[12:59:06.252][I][wmbus:731]:   fem_pa_pin: GPIO5 (set)
[12:59:06.289][I][wmbus:731]:   [sx1262]
[12:59:06.289][I][wmbus:731]:   has_tcxo: true (CHANGED, default: false)
[12:59:06.289][I][wmbus:731]:   tcxo_voltage: 1.8v (CHANGED, default: 3.0v)
[12:59:06.289][I][wmbus:731]:   dio2_rf_switch: true (default)
[12:59:06.290][I][wmbus:731]:   rx_gain: boosted (default)
[12:59:06.290][I][wmbus:731]:   long_gfsk_packets: true (CHANGED, default: false)
[12:59:06.290][I][wmbus:731]:   clear_device_errors_on_boot: true (CHANGED, default: false)
[12:59:06.290][I][wmbus:731]:   publish_dev_err_after_clear: true (CHANGED, default: false)
[12:59:06.290][I][wmbus:731]:   sx1262_rx_bandwidth: 312khz (default)
[12:59:06.290][I][wmbus:731]:   min_preamble_bits: 16 (default)
[12:59:06.291][I][wmbus:731]:   [output]
[12:59:06.291][I][wmbus:731]:   publish_rssi: false (default)
[12:59:06.291][I][wmbus:731]:   forward_meters: disabled (no whitelist) (default)
[12:59:06.291][I][wmbus:731]:   target_meter_id: "" (default)
[12:59:06.291][I][wmbus:731]:   publish_radio_raw: false (default)
[12:59:06.291][I][wmbus:731]:   telegram_qos: 0 (default)
[12:59:06.291][I][wmbus:731]:   rssi_qos: 0 (default)
[12:59:06.291][I][wmbus:731]:   health_qos: 0 (default)
[12:59:06.292][I][wmbus:731]:   diagnostic_qos: 0 (default)
[12:59:06.292][I][wmbus:731]:   rx_qos: 1 (default)
[12:59:06.292][I][wmbus:731]:   mqtt_buffer_size: 0 (default)
[12:59:06.292][I][wmbus:731]:   buffer_priority: disabled (shared buffer) (default)
[12:59:06.292][I][wmbus:731]:   [diagnostics]
[12:59:06.293][I][wmbus:731]:   diagnostic_mode: normal (CHANGED, default: off)
[12:59:06.303][I][wmbus:731]:   diagnostic_summary_interval: 60s (default)
[12:59:06.309][I][wmbus:731]:   highlight_meters: empty (default)
[12:59:06.310][W][component:419]: wmbus_radio took a long time for an operation (193 ms), max is 50 ms
[12:59:14.448][W][wmbus:1636][radio_recv]: payload read short: remaining=45 total_len=53 already_read=8
[12:59:14.456][I][SX1262:1530][radio_recv]: DEBUG [payload_read_failed]: Status=0x22 (STBY_RC) IrqStatus=0x0000 DeviceErrors=0x0000 RegRxGain=0x96 Sync=543D00 RxAddrPtr=0x08 RxTxPldLen=0x07 DIO1=0 BUSY=0
[12:59:14.676][I][SX1262:1537][radio_recv]: DEBUG [payload_read_failed]: sync_word_valid_latched=no receiver_running=NO
[12:59:14.677][W][SX1262:1542][radio_recv]: SX1262 is not in RX (mode=STBY_RC). Nothing can be received in this state.
[12:59:14.677][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:26.404][I][wmbus:794]: MQTT outbox stats: depth=0 cap=0/0 psram | dropped total=4 this-outage=4 (heap-refused=0 evicted=4) | queued total=0
[12:59:26.407][I][wmbus:816]: MQTT outbox drops this outage by meter: 55317789=2 01012786=2
[12:59:33.707][I][wmbus:1246]: Have data (decoded=29 bytes, raw=53 bytes) [RSSI: -65dBm, mode: T1 A, mfr:APA id:03647369 ver:20 type:7 ci:A0]
[12:59:33.801][S][light]: 'LED' >> OFF
[12:59:43.342][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:47.829][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:47.917][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:48.401][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:48.982][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:49.167][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:50.419][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:50.641][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:52.949][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:55.027][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:55.515][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:56.013][I][safe_mode:154]: Boot seems successful; resetting boot loop counter
[12:59:56.169][W][wmbus:1651][radio_recv]: Failed to read data
[12:59:56.197][I][wmbus:872]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=60310 listen_mode=T1 only irq=44 (t1=42 c1a=0 c1b=0 c_other=0 s1=0 no_data=2) total=4 ok=4 truncated=0 dropped=0 crc_failed=0
[12:59:56.197][I][wmbus:881]: DIAG hint: GOOD | RF link looks stable
[12:59:56.197][I][wmbus:201]: SUGGESTION [ADD_HIGHLIGHT_METERS]: Meters are being received. Check which IDs appear in wmbusmeters, then add them to highlight_meters to track per-meter reception quality.
[12:59:58.745][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:00.246][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:00.772][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:02.315][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:02.568][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:05.247][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:06.260][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:06.483][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:07.750][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:10.073][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:12.181][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:14.561][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:14.676][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:17.604][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:19.894][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:21.791][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:22.909][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:27.941][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:29.147][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:29.702][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:30.073][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:30.589][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:31.394][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:33.101][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:37.530][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:39.027][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:39.511][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:40.994][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:43.799][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:44.082][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:46.605][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:49.185][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:49.320][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:50.020][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:50.589][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:53.596][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:55.372][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:56.211][I][wmbus:872]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=120319 listen_mode=T1 only irq=43 (t1=43 c1a=0 c1b=0 c_other=0 s1=0 no_data=0) total=0 ok=0 truncated=0 dropped=0 crc_failed=0
[13:00:56.215][W][wmbus:883]: DIAG hint: RX_NO_MATCH | receiver triggered but nothing passed the filter - something IS transmitting; check listen_mode, min_preamble_bits and the meter's mode
[13:00:56.215][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:56.834][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:58.672][W][wmbus:1651][radio_recv]: Failed to read data
[13:00:59.118][W][wmbus:1651][radio_recv]: Failed to read data

Druga rzecz - zapuściłem znowu rtl-433 na -R 104 i widzi tylko mój licznik Apatora. Ani śladu po czymkolwiek na C1.

Więc C1 jest martwe prawdopodobnie i Twoja teza o OMS może być prawdziwa - ale ja bym tak łatwo nie odpuszczał bo potrzebujesz 24 h nasłuchu z dowodem.
W tej chwili robię poprawkę diagnostyczną i zaraz to wystawie abyś wiedział co masz zrobić - kod to wykrywa ale nie sygnalizuje bo tego nie przerabiałem u siebie.

Daj Clean Build Files - to nic nie kosztuje a będzie jak należy.

Dalej optuje abyś płytkę wyrzucił ze skrzynki z licznikiem.

Rozwiązanie jeżeli ma zostać w skrzynce
W kodzie masz :

  fem_pa_pin: GPIO5

Zamień na :

  fem_pa_pin:
    number: GPIO5
    inverted: true

Ja na swojej wersji tego nie zrobię - tylko Twoja to ma więc przetestujesz.
Co to robi ? Tryb bypass i tracisz na czułości około 30 dBm , Otus-a zaczniesz słyszeć ale któryś ze słabszych Apatorów wyleci.

Sprawdź poprawność wetknięcia pigtaila w złączu antenowym.

Ostateczność na PW - wyślij ją do mnie.

Zrobiłem Clean Build Files.

Wyprowadziłem znowu z okolic homelaba, położyłem w salonie (czym drażnię żonę…). Ale gwoli ścisłości - licznik jest w skrzynce, a homelab jest po drugiej stronie ściany za szachtem technicznym, jest między nimi mur, w linii prostej to będzie prawie metr.

W każdym razie teraz zabrałem go stamtąd, ale to niewiele pomogło. Co prawda już nie leci kilkanaście/dziesiąt Failed to read data na minutę, ale nie odbieram w tej chwili żadnych telegramów, wszystko zamilkło:

[14:30:06.739][I][wmbus:929]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=780410 listen_mode=T1 only irq=43 (t1=0 c1a=0 c1b=0 c_other=0 s1=0 no_data=43) total=0 ok=0 truncated=0 dropped=0 crc_failed=0
[14:30:06.744][W][wmbus:940]: DIAG hint: RX_NO_MATCH | receiver triggered but nothing passed the filter - something IS transmitting; check listen_mode, min_preamble_bits and the meter's mode
[14:31:06.745][I][wmbus:929]: DIAG summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary interval=60s uptime_ms=840417 listen_mode=T1 only irq=40 (t1=0 c1a=0 c1b=0 c_other=0 s1=0 no_data=40) total=0 ok=0 truncated=0 dropped=0 crc_failed=0
[14:31:06.749][W][wmbus:940]: DIAG hint: RX_NO_MATCH | receiver triggered but nothing passed the filter - something IS transmitting; check listen_mode, min_preamble_bits and the meter's mode
[14:32:06.626][I][wmbus:1400]: DIAG 15min summary: topic=wmbus/esphome-wmbus-heltec-v4r8/diag/summary_15min interval=900s uptime_ms=900298 listen_mode=T1 only irq=640 (t1=26 c1a=0 c1b=0 c_other=0 s1=0 no_data=614) total=2 ok=1 truncated=0 dropped=1 crc_failed=0
[14:32:06.629][I][wmbus:1409]: DIAG hint: OK | looks good

Przetestowałem fem_pa_pin - z inverted i bez. Bez znaczących różnic.

Antenki też przełączam.

Sam wręcz się zastanawiam, czy gniazda antenki nie uszkodziłem od zbyt częstych zamian. No ale jest wyraźne kliknięcie przy wciskaniu.

Mogę wysłać płytkę do testów, nic nie tracę, bo i tak mi nic nie działa. Realtekiem dalej testuję eter.

Gniazda hirose/ufl itp. mają zwykle gwarantowane 5 podłączeń bez utraty parametrów, ale nawet znaczący wzrost tłumienia nie powinien spowodować braku odbioru. Ja wręcz stawiam na zakłócenia od… samej płytki. Antena odbiorcza RF868 ma być w pionie.

Ale u mnie to kiedyś leżało w poziomie i czytało jak wściekłe . Teraz mam wszystkie w pionie i jeszcze obok AP. Czytają jak czytały.
@szopen tu jest wersja R8 której Ja nawet nie mam - AI napisał kod na podstawie dokumentacji.
Per analogia zrobił mi tak samo LR1121 zanim płytka przyszła a walnął się w jednym miejscu tylko.

Jak wklejasz to pełny log od startu - bo tam jest całe info zanim płytka zaczyna czytać.

To co napisałem, to jest tylko kwestia optymalizacji warunków odbioru - antena RF868 powinna być najdalej od płytki i pionowo (i tu nawet nie chodzi o polaryzację pionową lecz o jej charakterystykę promieniowania), nie mam tego w ręce, ale w/g dokumentacji antena WiFi to FPC zintegrowana z obudową wyświetlacza (swoją drogą mocno udziwnione rozwiązanie), więc antena RF868 ma być możliwie daleko od rogu obudowy wyświetlacza z napisem zawierającym fragment o wifi. Bo chodzi o eliminowanie zakłóceń od płytki (może jest wykonana na tyle sensownie, że nie jest to istotny problem, ale nie mam = nie sprawdzę), jakkolwiek domyślam się, że prawdopodobnie ta jedna śruba mocująca obudowę wyświetlacza jest nieizolowana od toru antenowego WiFi - nawet na schemacie ta antena jest opisana jako “pionowy kołek”.

BTW
Tor RF ma wzmacniacz antenowy - ale widzę, że teraz modyfikowałeś ustawienia by go wyłączyć.

Yyyy, no to limit wielokrotnie przekroczyłem.

Zrobiłem kolejne podejście:

  • fem_pa_pin ustawiłem na "non-inverted"
  • long_gfsk_packets przywróciłem na false
  • antenkę-bolec możliwie najbardziej idealnie pionowo
  • zostawiłem T1

Efekt jest taki, że znalazło mi 19 urządzeń. Same wodomierze Apatora, 3-4 modele. Żaden mój, i wg mojej wiedzy, nie są to wodomierze mieszkaniowe z mojego bloku, ew. zacząłem łapać okoliczne budynki.

Z jednej strony - fajnie, dużo sprzętu widzę. Z drugiej - nie łapie mojego licznika prądu, który jest 5 metrów od płytki.

Przełączę się na C1 teraz, skoro jest taka dobra passa.

To nie jest limit, tylko gwarantowana liczba podłączeń bez utraty parametrów tj. wykraczania poza ich wartości znamionowe.

Praktyka pokazuje, że tego typu złącza spokojnie wytrzymują podłączanie nawet kilkanaście razy bez zauważalnej zmiany parametrów (ale trafiła mi się też kiedyś jedna sytuacja w sprzęcie znanego i wiarygodnego producenta, gdzie wtyk rozpadł się przy drugim podłączeniu).

Tak - właśnie celowo to zrobiłem tj wyłączenie wzmacniacza aby odebrać tak silny sygnał.

No dobra, nic więcej nie wycisnę.

Ani dongle z Realtec, ani Heltec przez całą noc aż do teraz nie złapały nic na C1, zatem chyba można się rozejść :slight_smile:

Build był z najnowszej wersji z wczorajszego wieczoru, jak mi sugerowałeś w DM, @Krzyszof_K.

Na T1 ciągle nie widzi mojego licznika prądu, widzi mnóstwo obcych wodomierzy Apator.

Zrobimy wymianę : Prześle Ci mojego Helteca a Ty mi swojego

Aktualizacja 1.5.74: dodatek mocno odchudzony z CPU

Przy okazji testu, do którego dołożyłem piątą płytkę ESP, zauważyłem, że HA zaczyna mi przycinać. Winny okazał się mój dodatek. Przy 5 płytkach i ~200 licznikach w zasięgu potrafił zająć 2 rdzenie N97.

Przyczyna: dodatek obsługiwał w bashu każdą ramkę z eteru, z każdej płytki, a nie tylko Wasze liczniki. Koszt rósł więc z liczbą płytek i liczników w okolicy. Przy jednej płytce w domu było to prawie niewidoczne, dlatego wcześniej nikt tego nie zgłaszał.

W wersjach 1.5.67–1.5.74 przepisałem tę część na jeden proces w Pythonie. U mnie, przy tym samym nocnym ruchu, obciążenie całego serwera spadło z ~35% do ~11%, a load z ~1,9 do ~0,5. Dodałem też test, który pilnuje, żeby koszt jednej ramki nie rósł z liczbą liczników w eterze.

Jeśli macie kilka płytek, mieszkacie w bloku albo działacie na słabym CPU, zaktualizujcie do 1.5.74. Po drodze poprawiłem też klasy statystyk (state_class) dla części pól energii, wody i gazu. Jeśli HA pokaże w Naprawach ostrzeżenie o zmianie statystyk, to właśnie stąd.

Dodam jako ciekawostka - koszt przeróbki wyniósł 86$ ALE mnie to nie kosztowało NIC ( poza moim czasem , prądem i stałą opłatą za płatną wersje Claude) - prezent od Anthropica z limitem czasowym do wykorzystania ( 100 $ do 5 Listopada).

EDIT : dalsze prace trwają stąd co chwila nowsza wersja Dodatku.