IZAR Watermeter + Wemos D1 Mini + CC1101

I did some experiments with wmbusmeters, DVT SDR_STICK, NANOCUL and ended up with: Wemos D1 Min + CC1101 (esphome).

d1Mini868Mhz

Wemos D1 Mini + CC1101 (esphome) is the best solution for me because the resource requirement is low.

see:

What I still miss

Only the total_m3 are currently decoded from the telegram. I am still looking for support on how to determine the further information from the telegram:

  • Alarm (current_alarms, previous_alarms)
  • Water last month (last_month_total_m3)
  • Last Month date (last_month_measure_date)
  • Battery (remaining_battery_life_y)
  • Periode (transmit_period_s)

I don’t know how to include the necessary libraries or whether there is a
simple solution for decoding the additional information ?

see:

bool get_value(std::vector<unsigned char> &telegram, float &water_usage) override {
    //====DECRYPT====
    bool ret_val = false;
    uint8_t *decoded = reinterpret_cast<uint8_t*>(telegram.data());
    uint8_t decoded_len = telegram.size();
    uint8_t decrypted[64] = {0};
    if ((this->decrypt(decoded, decoded_len, decrypted)) > 0) {
      water_usage = (this->uintFromBytesLittleEndian(decrypted + 1)) / 1000.0;
      // ??? how to add more here 
      ret_val = true;
    }
    return ret_val;
  };
2 Likes

@petsie, how’s the project going?

I did found some interesting sources:
https://zewaren.net/wmbus-izar-meter.html

I’m also curious about the distance constrains…

do you have a working version with esphome-components 4.0?