 	}
 }
 
+Record* nodes;
+
+bool nodeConfigured(uint16_t address)
+{
+	for (Record * r = nodes; ; ++r) {
+		if (r->address == address)
+			return true;
+	}
+	return false;
+}
 
 
 /* *** /EEPROM config *** }}} */

  And maybe add SD logging, for Relay Nodes (with no or minimal on-board
  sensors).

TODO: on announce store node_id, reserve 5 bytes per node.
That should allow almost 200 nodes. Load ids into array on start-up.

TODO: map alphachar node_id prefix to sketch payload struct.



/* *** Run-time handlers *** {{{ */

void loadNodeAddresses(void)
{
	Record record;
	unsigned int x;
	unsigned int y = sizeof(config);
	unsigned int w = sizeof(record);
	nodes = (Record*) malloc(config.nodes * w);
	for (unsigned int i=0; i<config.nodes; i++) {
		x = i * w;
		for (unsigned int t=0; t<w; t++)
		{
			*((char*)&record + t) = EEPROM.read(CONFIG_EEPROM_START + y + x + t);
			nodes[i] = record;
		}
	}
}

void doReset(void)
{
	doConfig();

	loadNodeAddresses();

#ifdef _DBG_LED
	pinMode(_DBG_LED, OUTPUT);
