mirror of
https://github.com/meshcore-dev/MeshCore.git
synced 2026-04-20 22:13:47 +00:00
* startSendRaw() now returns false if fail
This commit is contained in:
parent
dd16197eae
commit
b08436eba7
6 changed files with 27 additions and 13 deletions
|
|
@ -77,13 +77,16 @@ uint32_t RadioLibWrapper::getEstAirtimeFor(int len_bytes) {
|
|||
return _radio->getTimeOnAir(len_bytes) / 1000;
|
||||
}
|
||||
|
||||
void RadioLibWrapper::startSendRaw(const uint8_t* bytes, int len) {
|
||||
state = STATE_TX_WAIT;
|
||||
bool RadioLibWrapper::startSendRaw(const uint8_t* bytes, int len) {
|
||||
_board->onBeforeTransmit();
|
||||
int err = _radio->startTransmit((uint8_t *) bytes, len);
|
||||
if (err != RADIOLIB_ERR_NONE) {
|
||||
MESH_DEBUG_PRINTLN("RadioLibWrapper: error: startTransmit(%d)", err);
|
||||
if (err == RADIOLIB_ERR_NONE) {
|
||||
state = STATE_TX_WAIT;
|
||||
return true;
|
||||
}
|
||||
MESH_DEBUG_PRINTLN("RadioLibWrapper: error: startTransmit(%d)", err);
|
||||
idle(); // trigger another startRecv()
|
||||
return false;
|
||||
}
|
||||
|
||||
bool RadioLibWrapper::isSendComplete() {
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ public:
|
|||
void begin() override;
|
||||
int recvRaw(uint8_t* bytes, int sz) override;
|
||||
uint32_t getEstAirtimeFor(int len_bytes) override;
|
||||
void startSendRaw(const uint8_t* bytes, int len) override;
|
||||
bool startSendRaw(const uint8_t* bytes, int len) override;
|
||||
bool isSendComplete() override;
|
||||
void onSendFinished() override;
|
||||
|
||||
|
|
|
|||
|
|
@ -67,18 +67,19 @@ uint32_t ESPNOWRadio::intID() {
|
|||
return n + m;
|
||||
}
|
||||
|
||||
void ESPNOWRadio::startSendRaw(const uint8_t* bytes, int len) {
|
||||
bool ESPNOWRadio::startSendRaw(const uint8_t* bytes, int len) {
|
||||
// Send message via ESP-NOW
|
||||
is_send_complete = false;
|
||||
esp_err_t result = esp_now_send(broadcastAddress, bytes, len);
|
||||
if (result == ESP_OK) {
|
||||
n_sent++;
|
||||
ESPNOW_DEBUG_PRINTLN("Send success");
|
||||
} else {
|
||||
last_send_result = result;
|
||||
is_send_complete = true;
|
||||
ESPNOW_DEBUG_PRINTLN("Send failed: %d", result);
|
||||
return true;
|
||||
}
|
||||
last_send_result = result;
|
||||
is_send_complete = true;
|
||||
ESPNOW_DEBUG_PRINTLN("Send failed: %d", result);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool ESPNOWRadio::isSendComplete() {
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ public:
|
|||
void init();
|
||||
int recvRaw(uint8_t* bytes, int sz) override;
|
||||
uint32_t getEstAirtimeFor(int len_bytes) override;
|
||||
void startSendRaw(const uint8_t* bytes, int len) override;
|
||||
bool startSendRaw(const uint8_t* bytes, int len) override;
|
||||
bool isSendComplete() override;
|
||||
void onSendFinished() override;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue