   brokers.ParseMDnsAnswer(answer);
 }
 mdns::MDns my_mdns(NULL, NULL, answerCallback);
-
-
 
 
 // MQTT


String mac_address;
const int led = 12;
const int led2 = 13;


// Configuration
void SetHostname(const char* new_hostname) {
  strncpy(config.hostname, new_hostname, NAME_LEN);
}

void SetDevice(const unsigned int index, struct Connected_device device) {
  if (index < MAX_DEVICES) {
    memcpy(&(config.devices[index]), &device, sizeof(device));
  }
}


// mDNS
Brokers brokers(QUESTION_SERVICE);

// Length of name strings. (hostname, room names, lamp names, etc.)
#define NAME_LEN 32

// Each device has an address in the form 'role/location1/location2/etc'
// eg: 'lighting/kitchen/worktop/left'.
#define ADDRESS_SEGMENTS 6
#define ADDRESS_SEGMENT_LEN 32


enum Io_Type {
  test,
