Commutatore antenna con display Nextion

Ciao Uwe e grazie per la risposta.
Uso un Nano che ha le 8 porte analogiche (A0,A7).
Sono riuscito a far funzionare il tutto dopo una giornata a far fumare il cervello....
Il problema era che prima di mandare alta la porta selezionata dovevo mandare alta la porta del reset dei relè che sono bistabili. Quindi quando seleziono una antenna devo prima resettare tutti i relè di quelle bande. Il tutto per 2 in quanto sono ovviamente divise le bande HF da quelle VHF.
Ora devo "solo" riuscire a far apparire il nome dell'antenna selezionata sul display... poi dovrò far apparire all'avvio l'ultima antenna selezionata prima di spegnere il cui nome si è salvato sulla EEPROM, in modo da sapere quale antenna è collegata senza dover riselezionare per sicurezza.
Allego lo sketch che per ora resetta e commuta a dovere.

#include "NexButton.h"
#include "NexText.h"

NexButton b0 = NexButton(0, 1, "b0");
NexButton b1 = NexButton(0, 2, "b1");
NexButton b2 = NexButton(0, 3, "b2");
NexButton b3 = NexButton(0, 4, "b3");
NexButton b4 = NexButton(0, 5, "b4");
NexButton b5 = NexButton(0, 6, "b5");

char buffer[10] = {0};

NexTouch *nex_Listen_List[] = 
{
    &b0,
    &b1,
    &b2,
    &b3,
    &b4,
    &b5,
    NULL
};


void b0PopCallback(void *ptr)
{
    NexButton *btn = (NexButton *)ptr;
    memset(buffer, 0, sizeof(buffer));
    btn->getText(buffer, sizeof(buffer));
    if (strcmp(buffer,"ON"))
    {
        digitalWrite(8, HIGH);
        delay(200);
        digitalWrite(8,LOW);
        delay(200);
        digitalWrite(2, HIGH);
        strcpy(buffer, "ON");
delay(200);

        digitalWrite(2, LOW);
        strcpy(buffer, "OFF");
    }
}
void b1PopCallback(void *ptr)
{
    NexButton *btn = (NexButton *)ptr;
    memset(buffer, 0, sizeof(buffer));
    btn->getText(buffer, sizeof(buffer));
    if (strcmp(buffer,"ON"))
    {
         digitalWrite(8, HIGH);
         delay(200);
         digitalWrite(8,LOW);
         delay(200);
         digitalWrite(3, HIGH);
         strcpy(buffer, "ON");
delay(200);
        digitalWrite(3, LOW);
        strcpy(buffer, "OFF");
    }
}

void b2PopCallback(void *ptr)
{
    NexButton *btn = (NexButton *)ptr;
    memset(buffer, 0, sizeof(buffer));
    btn->getText(buffer, sizeof(buffer));
    if (strcmp(buffer,"ON"))
    {
        digitalWrite(8, HIGH);
        delay(200);
        digitalWrite(8,LOW);
        delay(200);
        digitalWrite(4, HIGH);
        strcpy(buffer, "ON");
delay(200);
        digitalWrite(4, LOW);
        strcpy(buffer, "OFF");
    }
}

void b3PopCallback(void *ptr)
{
    NexButton *btn = (NexButton *)ptr;
    memset(buffer, 0, sizeof(buffer));
    btn->getText(buffer, sizeof(buffer));
    if (strcmp(buffer,"ON"))
    {
         digitalWrite(9, HIGH);
         delay(200);
         digitalWrite(9,LOW);
         delay(200);
        digitalWrite(5, HIGH);
        strcpy(buffer, "ON");
delay(200);
        digitalWrite(5, LOW);
        strcpy(buffer, "OFF");
    }
}
void b4PopCallback(void *ptr)
{
    NexButton *btn = (NexButton *)ptr;
    memset(buffer, 0, sizeof(buffer));
    btn->getText(buffer, sizeof(buffer));
    if (strcmp(buffer,"ON"))
    {
         digitalWrite(9, HIGH);
         delay(200);
         digitalWrite(9,LOW);
         delay(200);
        digitalWrite(6, HIGH);
        strcpy(buffer, "ON");
delay(200);
        digitalWrite(6, LOW);
        strcpy(buffer, "OFF");
    }
}
void b5PopCallback(void *ptr)
{
    NexButton *btn = (NexButton *)ptr;
    memset(buffer, 0, sizeof(buffer));
    btn->getText(buffer, sizeof(buffer));
    if (strcmp(buffer,"ON"))
    {
         digitalWrite(9, HIGH);
         delay(200);
         digitalWrite(9,LOW);
         delay(200);
        digitalWrite(7, HIGH);
        strcpy(buffer, "ON");
delay(200);
        digitalWrite(7, LOW);
        strcpy(buffer, "OFF");
    }
}
void setup(void)
{
    nexInit();
    b0.attachPop(b0PopCallback, &b0);
    b1.attachPop(b1PopCallback, &b1);
    b2.attachPop(b2PopCallback, &b2);
    b3.attachPop(b3PopCallback, &b3);
    b4.attachPop(b4PopCallback, &b4);
    b5.attachPop(b5PopCallback, &b5);
//setting port OUTPUT
    pinMode(2, OUTPUT);// Deltaloop
    pinMode(3, OUTPUT);// Dipolo 40mt
    pinMode(4, OUTPUT);// Libero
    pinMode(5, OUTPUT);// YagiU/Vhf
    pinMode(6, OUTPUT);// Libero
    pinMode(7, OUTPUT);// Libero
    pinMode(8, OUTPUT);//azzeramento HF
    pinMode(9, OUTPUT);//azzeramentoU/Vhf
//initializing  port 
    digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);
    digitalWrite(6, LOW);
    digitalWrite(7, LOW);
    digitalWrite(8, LOW);
    digitalWrite(9, LOW);
}

void loop(void)
{
    nexLoop(nex_Listen_List);
}