Mini V3 & Meater Block - Thermometer werden nur als inaktiv angezeigt

s.ochs

BOFH
Teammitglied
Admin
Hi Thomas,
wir bauen die Firmware des nRF derzeit in Zephyr RTOS nach. Verbindungstests zu beiden Firmwareversionen des Meater waren hiermit positiv. Zephyr ist neu für uns und die Firmware des nRF umfasst in Summe ja mehr als nur den Meater, daher kann ich nicht genau abschätzen, wie lange die komplette Umstellung dauern wird.

Ansonsten kann ich nur wiederholen was ich bereits angeboten habe: wenn für die Zwischenzeit ein funktionierender Meater benötigt wird, kann ich dir da gerne etwas zur Verfügung stellen.

Gruß
Steffen
 

basirapi

Code-Flüsterer
Wenn noch jemand eine Idee hat, gerne kundtun.
Ich hätte noch eine Idee, jedoch keine Ahnung ob Ihr noch sucht oder die schon kennt......

Habt Ihr schon mal probiert, dass das "notify" mit einem "write w/ response" geschrieben wird?

BLEClientCharacteristic.cpp

C++:
bool BLEClientCharacteristic::writeCCCD(uint16_t value)
{
  const uint16_t conn_handle = _service->connHandle();

  ble_gattc_write_params_t param =
  {
      // .write_op = BLE_GATT_OP_WRITE_CMD
      .write_op = BLE_GATT_OP_WRITE_REQ,     
      .flags    = BLE_GATT_EXEC_WRITE_FLAG_PREPARED_WRITE,
      .handle   = _cccd_handle,
      .offset   = 0,
      .len      = 2,
      .p_value  = (uint8_t*) &value
  };

Ich denke das sollte bei "bluefruit" dann so aussehen. Benutze aber "bluefruit" nicht so oft.

Ich habe es bei mir mit einem POC auf Basis einer "adafruit_feather_nrf52840" und der FW von Github probiert. Bei mir scheint es zu funktionieren.
 

s.ochs

BOFH
Teammitglied
Admin
Habt Ihr schon mal probiert, dass das "notify" mit einem "write w/ response" geschrieben wird?
Wenn ich mich nicht irre, dann ist das doch eh der Fall. Ich sehe es mir aber auf jeden Fall nochmal an. Vielen Dank für die Idee!

Das Problem steckt auf jeden Fall in der bluefruit Implementierung für den nRF528xx. Beim ESP32 + Bluefruit funktioniert es und auch mit einer zephyr Programmierung am nRF funktioniert es.
 

basirapi

Code-Flüsterer
Was benutzt du anstelle?
Ich benutze NimBLE von H2Zero. Da kann man auch beim "Notify setzen" entscheiden ob mit oder ohne response. Mit response funktioniert die Kommunikation, ohne nicht. Ich denke der neue alte Meater hält sich näher an die BLE Spezifikation.
dann ist das doch eh der Fall
Ich denke nicht bei Bluefruit, aber ich weiß es nicht zu 100%.
 
Oben Unten