Aggiunta peer ESP-NOW

Salve a tutti,
Ho un problema che a me sembra fin troppo banale, ma non ne sto saltando fuori se non evitando di incappare nel problema stesso.
Sto lavorando, come da titolo, con ESP-NOW su ESP-32; per leggibilità del codice ho fatto delle funzioni che manipolino appunto questa "interfaccia" in due file (main.h e main.cpp) quindi una funzione di inizializzazione e di aggiunta della peer, il problema è che se chiamo la funzione essa non è in grado di aggiungere la peer mentre con lo stesso codice messo nel setup funziona!

Allego i codici di seguito:

bool initESP_NOW(){ //dichiarata nel *.h e implementata nel *.cpp ma se lo faccio nel *.ino non cambia
  //Set device as a Wi-Fi Station
  WiFi.mode(WIFI_AP_STA);
  esp_wifi_set_ps(WIFI_PS_NONE);
  
  //Setto il canale 
  //Configurazione canale WiFi
  int32_t channel = 1;//getWiFiChannel(WIFI_SSID);
  esp_wifi_set_promiscuous(true);
  esp_wifi_set_channel(channel, WIFI_SECOND_CHAN_NONE);
  esp_wifi_set_promiscuous(false);
  
  // Init ESP-NOW
  if (esp_now_init() != ESP_OK) {
    Serial.println("Error initializing ESP-NOW");
    return false;
  }
  esp_now_register_send_cb(OnDataSent);
  esp_now_peer_info_t peerInfo;
  memcpy(peerInfo.peer_addr, broadcastAddress, 6);
  peerInfo.channel = 0;  
  peerInfo.encrypt = false;
  if (esp_now_add_peer(&peerInfo) != ESP_OK){
    Serial.println("Failed to add peer");
    return false;
  }
  //esp_now_register_recv_cb(OnDataRecv);
  return true;
}

void setup() {
  // Init Serial Monitor
  initSerial(__FILE__);
  initESP_NOW();
}

Grazie a chi mi potrà aiutare

Alan Masutti

Alla fine era un problema di dichiarazione di una variabile

Alan

Scusate se riapro il topic

Rettifico, è una cosa stranissima... in un "progetto" va tutto senza problemi, in una successiva modifica non va nulla di nuovo, io sto uscendo di testa... non capisco proprio, se l'aggiunta della peer viene fatta nel setup zero problemi, come la sposti in una funzione aiutooo...

Qualcuno che sappia il motivo?

Alan

Aggiornamento,
per dare l'idea di quanto stranamente si comporti questa cosa, ora stavo cercando di documentarmi altrove per capire il problema e pufff.... è partito da solo senza ne modifiche ne nulla... ovviamente me ne accorgo dai led di avvenuta comunicazione...

Io contento, ricarico il codice e di nuovo non va più nulla...

Veramente non so più cosa pensare....

Alan

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.