Spis Treści

WMBUS SIH Reader 868 doczekał się aktualizacji, w nowej wersji 1.5 nastąpiła zmiana modułu ESP z 8266 na moduł ESP32S3. Dzięki ESP32S3 SIH Reader 1.5 stał się teraz dwa razy wydajniejszy. W nowej wersji SIH Reader’a nastąpiły lekkie zmiany wizualne: brak anteny zewnętrznej WiFi oraz pojawiła się dioda RGB informująca o statusie pracy urządzenia. Obudowa została praktycznie zaprojektowana od nowa (chodź wygląda tak samo), niestety nauka nowego oprogramowania do projektowania 3D zajęła mi trochę czasu, więc premiera SIH Reader’a się lekko przesunęła w czasie. Obudowa wydrukowana oczywiście w technologii 3D, z drukarki 3D więc wygląda jak na mój gust dobrze. PCB się nie zmieniło pozostaje jak na razie w wersji 1.0, aczkolwiek wymaga pewnych zmian. Moduł E07-900M10S odpowiedzialny za odczyt transmisji licznik – SIH Reader pozostał również bez zmian.

Co to jest SIH Reader?

WMBUS SIH Reader 868 to urządzenie do odczytu danych z liczników działających na częstotliwości 868 MHz, czyli tak zwanych nakładek radiowych na licznik. Zebrane dane trafiają oczywiście do naszego smart domu opartego na Home Assistant. Dzięki WMBUS SIH Reader 868 możemy śledzić bieżące zużycie wody, gazu, a nawet zużycie prądu. Zebrane dane można wykorzystać do różnych celów, np. do śledzenia kosztów (planowanie budżetu domowego), wykrywania wycieków-nieszczelności instalacji dla własnych statystyk oraz ciekawości.

Oprogramowanie

Wgrywanie oprogramowania nie różni się praktycznie niczym po za zmianą na ESP32 i w zdefiniowania pin-ów, więc cały kod oraz instrukcję krok po kroku przedstawiam poniżej. Tym razem przedstawię wgrywanie poprzez przewód USB typu C podłączony bezpośrednio do komputera. Dla tych co chcą wgrać poprzez WiFi odsyłam do artykuły z pierwszej wersji SIH Reader 1.0, oczywiście pamiętając o wgraniu poniższego kodu.

Tworzenie oprogramowania zaczynamy w Home Assistant w dodatku ESPHome (1). Utwórz nowe urządzenie(2). Kontynuuj (3) dodanie nowego urządzenia.

Wprowadź nazwę urządzenia (1) i przejdź do następnego kroku (2)

Wybierz moduł ESP32S-3 (1)

Pomiń (1) instalację nowo utworzonego urządzenia

Przejdź do edycji (1) kodu SIH Reader’a

Usuń cały kod wygenerowany kod i wklej poniższy kod (1).

esphome:
  name: sih-reader
  friendly_name: sih-reader
  platformio_options:
    board_build.flash_mode: dio
  project:
    name: SIH.Reader
    version: "1.5"    

esp32:
  board: esp32-s3-devkitc-1
  # board: lolin_s3_mini
  variant: esp32s3
  framework:
    type: arduino

web_server:
  port: 80
  version: 3

# Enable logging
logger:
  id: component_logger
  level: DEBUG
  baud_rate: 0
  
# Enable Home Assistant API
api:
  encryption:
    key: "Nfa8hFPscKCh6Y2Ypv0gdXjKSZyhm8QxAofMAnNdS2Y="

  # Po nawiązaniu połączenia z Home Assistant, ustaw diodę na zielono
  on_client_connected:
    then:
      - light.turn_on:
          id: esp32s3_rgb_led
          red: 0%
          green: 50%
          blue: 0%
          brightness: 50%

ota:
  - platform: esphome

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  power_save_mode: LIGHT
  fast_connect: true
  reboot_timeout: 10min
  output_power: 10dB

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "SIH Reader 1.5"
    password: "1234567890"

captive_portal:

external_components:
  - source: github://SzczepanLeon/esphome-components@version_3
    components: [ wmbus ]  
    refresh: 0d                  

wmbus:
  mosi_pin: GPIO11
  clk_pin:  GPIO12
  miso_pin: GPIO13
  gdo2_pin: GPIO14
  gdo0_pin: GPIO21
  cs_pin:   GPIO10  
  led_pin:
    number: GPIO18
    inverted: yes
  led_blink_time: "150ms"
  frequency: 868.950

time:
  - platform: sntp
    id: time_sntp

text_sensor: 
    #diagnostic info
  - platform: wifi_info                   
    ip_address:
      name: 'IP Address'
      icon: mdi:wifi
    ssid:
      name: 'Connected SSID'
      icon: mdi:wifi-strength-2

sensor:
    # Reports the WiFi signal strength/RSSI in dB
  - platform: wifi_signal 
    name: "WiFi Signal dB"
    id: wifi_signal_db
    update_interval: 60s
    entity_category: "diagnostic"

binary_sensor:
  - platform: status
    name: "WiFi Status"
    id: wifi_status

light:
  - platform: status_led
    id: status_light
    output: status_output
  - platform: neopixelbus
    id: esp32s3_rgb_led
    name: Status RGB LED
    type: RGB
    variant: 800KBPS
    pin: 47
    num_leds: 1
    icon: mdi:led-outline
    entity_category: config
    restore_mode: ALWAYS_OFF
    method:
      type: esp32_rmt
      channel: 0          

switch:
  - platform: template
    id: status_led_switch
    optimistic: true
    on_turn_on:
      - light.turn_on: 
          id: esp32s3_rgb_led
          red: 100%
          green: 0%
          blue: 0%
          brightness: 30%
          transition_length: 50ms
    on_turn_off:
      - light.turn_off: 
          id: esp32s3_rgb_led
          transition_length: 50ms

output:
  - platform: template
    id: status_output
    type: binary
    write_action:
      - if:
          condition:
             lambda: return state > 0;
          then:
            - if:
                condition:
                  switch.is_off: status_led_switch
                then:
                  switch.turn_on: status_led_switch
          else:
            - if:
                condition:
                  switch.is_on: status_led_switch
                then:
                  switch.turn_off: status_led_switch

Zainstaluj utworzone oprogramowanie (1) wybierając Manual download (2).

Program zacznie się kompilować więc czekamy cierpliwie aż do momentu operacji Sukces (1), następnie wybieramy opcję pobierania Factory format (2). Plik pobierze się na dysk.

Podłącz teraz SIH Reader do portu USB w Twoim komputerze/laptopie. Przejdź pod adres WEB ESPHOME (1), następnie połącz się z SIH Reader (2), wybierz port SIH Reader (3). Oczywiście po zaznaczeniu portu klikamy Połącz (4)

Kliknij na install (1) i wybierz (2) plik który ściągnął Ci się podczas kompilacji programu. Następnie przechodzimy do instalacji (3).

Czekamy cierpliwie aż program wgra się do końca i zamykamy okno informujące o zakończeniu instalacji oprogramowania(1).

Home Assistant powinien wykryć moduł SIH Reader informując Cię o tym w powiadomieniach (1), przejdź do powiadomień a dokładnie do odnośnika Checkt it out (2), następnie Utwórz (3) i Zatwierdź (4). Wskaż obszar (nie musisz) i Zakończ (5) dodawanie urządzenia.

Dodawanie licznika do SIH Reader

Dodawanie licznika nie różni się w tej wersji niczym, co prawda istnieje nowsze oprogramowania SzczepanLeon ale osobiście nie korzystam, więc jeśli ktoś chce korzystać nowej wersji oprogramowania zapraszam do oficjalnej dokumentacji. Poniższy przykład dotyczy dwóch liczników z których korzystam, czyli licznik gazu (UniSmart) oraz licznik wody (izar). Oficjalna dokumentacja autora z której korzystam w wersji 2.3.2 możesz znaleźć tutaj: konfiguracja 2.3.2

Przed znalezieniem Twojego ID licznika warto umieścić moduł WMBUS SIH Reader 868 w jego pobliżu. Aby wyszukać ID Twojego licznika przejdź do ESP Home, znajdź SIH Reader i kliknij na Logi (1), następnie Wirelessly (2).

Teraz musisz się uzbroić w cierpliwość, w zależności o typu licznika i jak został zaprogramowany (godzina, dzień) licznik zwróci ramkę jak poniżej. Warto pamiętać o tym gdyż nie wszystkie licznik, szczególnie te które montuje spółdzielnia lub dana placówka raportują cały czas nie przerwanie przez 24h na dobę. W większości przypadków bywa tak, że ramka z danymi jest wysyłana w godzinach od 7-16, i tylko w dni robocze. W moim przypadku na szczęście dane przychodzą w przypadku licznika wody co 8 sekund. Poniżej przykład ID licznika gazu (1) i wody (2)

Teraz zaznaczone ID danego licznika musimy wpisać do Twojego SIH Reader. Dodaj poniższy kod z Twoim ID licznika. Poniższy przykład dotyczy trzech liczników więc jeśli masz jeden licznik, usuń kod zbędnego licznika.

sensor:
# Licznik Wody Diehl Metering z nakładką IZAR RC 
  - platform: wmbus
    meter_id: 0xXXXXXXX
    type: izar
    add_prefix: false
    rssi:
      name: "Woda Izar RSSI"     
    total_water_m3:
      name: "Izar Główny Licznik Wody"
      icon: "mdi:water"
      device_class: "water"
      accuracy_decimals: 3
    last_month_total_water_m3:
      name: "Miesięczne zużycie wody w metrach"
    current_month_total_water_l:
      name: "Miesięcze zużycie wody w litrach"  
    remaining_battery_life_y:
      name: "Pozostała żywotność baterii"
    current_alarms:
      name: "Bieżace alarmy"
    previous_alarms:
      name: "Poprzednie alarmy"
    transmit_period_s:
      name: "Okres transmisji w sekundach"     

# Licznik Gazu Unismart AT-WMBUS-G-01
  - platform: wmbus
    meter_id: 0x000XXXXX
    type: unismart
    key: "00000000000000000000000000000000"
    add_prefix: false
    rssi:
      name: "SIH Reader Gaz RSSI"     
    total_gas_m3:
      name: "Licznik gazu"
      icon: "mdi:gas-burner"
      device_class: "gas"
      accuracy_decimals: 2

### Licznik Gamma 350 #Dekoder klucza z 16 na 32 https://www.rapidtables.com/convert/number/ascii-to-hex.html
  - platform: wmbus
    meter_id: 0xXXXXXXX
    key: "tu wpisz klucz otrzymany od dostawcy - 32 znaki"
    type: amiplus
    mode: T1
    lqi:
      name: "Gama 350 lqi"
    rssi:
      name: "Gama 350 RSSI"
    total_energy_consumption_kwh:
      name: "Energia pobrana"
    current_power_consumption_kw:
      name: "Aktualny pobór"
    total_energy_production_kwh:
      name: "Energia wysłana"
    current_power_production_kw:
      name: "Aktualna wysyłka"
    voltage_at_phase_1_v:
      name: "Napięcie na fazie 1"
    voltage_at_phase_2_v:
      name: "Napięcie na fazie 2"
    voltage_at_phase_3_v:
      name: "Napięcie na fazie 3" 

Zapisz (1) i zainstaluj (2) swój kod z dodanym licznikiem do SIH Readera za pośrednictwem już sieci WiFi (3).

Teraz pozostaje tylko poczekać aż dane z licznika spłyną do Home Assistant za pośrednictwem SIH Reader.

Ważne

Powtórzę się z poprzedniej wersji SIH Reader, musisz wiedzieć że korzystasz z oprogramowania autorstwa SzczepanLeon, urządzenie do odczytu Twojego licznika (SIH Reader) działa tak na prawdę dzięki niemu. Więc warto postawić mu kawę i zmotywować autora do dalszych prac.
Podsumowując zachęcam do wspierania finansowo SzczepanLeon.

Cena

Cena lekko poszybowała w górę z uwagi na to że komponenty takie jak moduł E07-900M10S oraz S3 Mini v1.0. 0-Lolin pochodzą bezpośrednio od producenta. Starałem się nie oszczędzać 10 zł na module na tak zwanych dobrych zamiennikach. Więc ostatecznie cena za SIH Reader w wersji 1.5 to koszt 175zł z wliczoną wysyłką. Tak jak w wersji 1.0 dostajesz pełne wsparcie podczas instalacji jak i niezbędnych informacji przed zakupowych. Jeśli jesteś zainteresowany zapraszam do kontaktu.

Pytania i odpowiedzi

Posiadam wersję SIH Reader 1.0 czy muszę go wymienić na nowszy?
W żadnym wypadku, jeśli używasz wersji oprogramowania Szczepana 3.2.3 i liczniki działają nie ma takiej potrzeby.

Posiadam wersje SIH Reader 1.0 czy można go zmodyfikować do wersji 1.5?
Tak. Jeśli masz taką potrzebę taka opcja zawsze istnieje. Wiąże się z wymianą modułu na ESP32 oraz wydruk nowej obudowy.

Czy wersja SIH Reader 1.0 jest jeszcze dostępna? zależy mi na zewnętrznej antenie WiFi.
Tak wersja 1.0 jest i będzie dostępna, ale jej czas realizacji może być dłuższy niż w przypadku 1.5.

Tematy które mogą Cię zainteresować:

Subscribe
Powiadom o
guest
4 komentarzy
najstarszy
najnowszy oceniany
Inline Feedbacks
Zobacz wszystkie komentarze
Piotr
Piotr
9 miesięcy temu

Witam,
czy ten moduł będzie działał z ESPHOME 2025.2.2?

Grzegorz
Grzegorz
7 miesięcy temu

Czy SIH Reader będzie współpracował z UniSmart AT-WMBUS-G-01?

Najnowsze Wpisy

Reklama

Najnowsze Recenzje