MCPcopy Create free account
hub / github.com/LowPowerLab/RFM69 / HandleHandshakeACK

Function HandleHandshakeACK

RFM69_OTA.cpp:79–100  ·  view source on GitHub ↗

=================================================================================================================== HandleHandshakeACK() - checks there is a FLASH chip and sends an ACK for the OTA request handshake ===================================================================================================================

Source from the content-addressed store, hash-verified

77// HandleHandshakeACK() - checks there is a FLASH chip and sends an ACK for the OTA request handshake
78//===================================================================================================================
79uint8_t HandleHandshakeACK(RFM69& radio, SPIFlash& flash, uint8_t flashCheck) {
80 if (flashCheck)
81 {
82 uint16_t deviceID=0;
83 flash.wakeup(); //if flash.sleep() was previously called, flash.wakeup() is required or it's non responsive
84 for (uint8_t i=0;i<10;i++) {
85 uint16_t idNow = flash.readDeviceId();
86 if (idNow==0 || idNow==0xffff || (i>0 && idNow != deviceID)) {
87 deviceID=0;
88 break;
89 }
90 deviceID=idNow;
91 }
92 if (deviceID==0) {
93 radio.sendACK("FLX?NOK:NOFLASH",15); //NO FLASH CHIP FOUND, ABORTING
94 Serial.println(F("FAIL:NO FLASH MEM"));
95 return false;
96 }
97 }
98 radio.sendACK("FLX?OK",6); //ACK the HANDSHAKE
99 return true;
100}
101
102
103//===================================================================================================================

Callers 2

HandleWirelessHEXDataFunction · 0.85

Calls 1

sendACKMethod · 0.45

Tested by

no test coverage detected