Return a boolean to indiciate if a packet was sent to the radio successfully

This commit is contained in:
2024-01-02 21:05:19 +11:00
parent c6b6ec65c9
commit d1adfa54ef
2 changed files with 6 additions and 3 deletions

View File

@@ -24,7 +24,7 @@ public:
void loop();
void setPacketCallback(std::function<void(const Packet*)> callback);
void sendPacket(const Packet* packet);
bool sendPacket(const Packet* packet);
private:
RF24 radio;

View File

@@ -4,7 +4,7 @@
RFPowerView::RFPowerView(uint8_t cePin, uint8_t csPin, uint8_t irqPin, uint16_t rfID) :
radio(cePin, csPin),
packetReceiver(&radio),
bufferFiller(0x00, 0x00, 0x05),
bufferFiller(0x3D, 0x96, 0x05),
irqPin(irqPin),
rfID{static_cast<uint8_t>(rfID & 0xFF), static_cast<uint8_t>(rfID >> 8)},
packetCallback(nullptr) {}
@@ -77,7 +77,7 @@ void RFPowerView::setPacketCallback(std::function<void(const Packet*)> callback)
packetCallback = callback;
}
void RFPowerView::sendPacket(const Packet* packet) {
bool RFPowerView::sendPacket(const Packet* packet) {
if (bufferFiller.fill(sendBuffer, packet)) {
startTransmitting();
@@ -93,5 +93,8 @@ void RFPowerView::sendPacket(const Packet* packet) {
}
startListening();
return true;
}
return false;
}