const o #define

Qualcuno ci ha studiato sopra?

#define in pre-compilazione rimpiazza proprio il nome della define con il valore e quindi sicuramente non occupa ne' spazio di programma ne' tanto meno spazio in memoria

const invece?

No xkè nel reference c'è scritto che "const è preferred"...però non voglio consumare spazio in memoria...cioè ho necessità di capire se const alloca la variabile in memoria (pure che dopo non è modificabile)...

E' indifferente per il compilatore.
La direttiva #define rimpiazza, è vero, nel sorgente il valore incontrato con quello dichiarato ma poi tale dato viene sempre creato in ram a runtime. Fai una prova.

Compila il seguente codice:

#define LED 13
//const byte LED=13;

void setup() {
    pinMode(LED, OUTPUT);
    digitalWrite(LED, HIGH);
}

void loop() {
}

Alterna i commenti alle prime 2 righe e leggi la dimensione dello sketch. Non varia.
Anche con avr-size vedrai che i byte di ram impiegati saranno sempre uguali.