RF24Mesh icon indicating copy to clipboard operation
RF24Mesh copied to clipboard

add releaseAddress() overload for use on master nodes

Open 2bndy5 opened this issue 3 years ago • 0 comments

This idea is born from #218 discussion in which I thought it would be easier on users' code to provide a local way of releasing an assigned address in the master node's addrList. The main benefits are

  1. keep bounds checking on addrList internally implemented
  2. ensure the proper value (0) is assigned to the reserved addresses upon release.

Proposal

Basically I want to

#ifndef MESH_NO_MASTER
inline void RF24Mesh::releaseAddress(uint16_t address)
{
    for (uint8_t i = 0; i < addrListTop; ++i) { 
         if (addrList[i].address == address) { 
             addrList[i].address = 0; 
             break; // avoid further non-op iterations
         } 
     } 
}
#endif

PS - I opened this issue as a reminder.

2bndy5 avatar Feb 16 '23 17:02 2bndy5