Galère byte array [Resolu]

Bonjour,
J'ai plusieurs capteurs qui communique avec une base par l'intermédiaire de nrf24l01.
Pour que la base interroge chacun des capteurs, je définis leurs adresses ainsi

const byte numSlaves = 5;
const byte slaveAddress[numSlaves][5] = {"00110", "00111", "00112", "00113", "00114"};

Mon problème est que je ne connais pas le nombre de capteurs à interroger lors de l'initialisation, le programme permet d'ignorer les capteurs "00111" et "00112" par exemple.
Je n'arrive à gérer dynamiquement mon tableau.
J'ai essayé

byte slaveAddress[][5] = {0,};

slaveAddress[1][5] = "00111";

le compilo ne bronche pas mais cela ne fonctionne pas.

Merci de votre aide

byte slaveAddress[][5] = {0,};

slaveAddress[1][5] = "00111";

le compilo ne bronche pas mais cela ne fonctionne pas.

Il devrait hurler. Tu affectes l'adresse d'une chaîne de caractères à un byte.

Avec le compilateur ESP32 :

sketch_feb16a:4: error: invalid conversion from 'const char*' to 'byte {aka unsigned char}' [-fpermissive]
 slaveAddress[1][5] = "00111";

Utilise des pointeurs :

  byte *slaveAddress[5];
  slaveAddress[0] = (byte *)"00111";

Le cast (byte *) sur AVR est superflu mais indispensable sur ESP.

Ça marche nickel
Merci

hbachetti:
Il devrait hurler. Tu affectes l'adresse d'une chaîne de caractères à un byte.

et en plus un cString comme "00110" c'est 6 caractères, pas 5....

Bonjour zjbjbjbz

zjbjbjbz:
le compilo ne bronche pas mais cela ne fonctionne pas.

Merci de votre aide

Pas de warning ?

Avec Uno et les bonnes options j'obtiens (gratuitement) :

C:\Users\PHILIP~1\AppData\Local\Temp\arduino_modified_sketch_340833\sketch_feb16a.ino:7:20: warning: invalid conversion from 'const char*' to 'byte {aka unsigned char}' [-fpermissive]

 slaveAddress[1][5] = "00111";

Cordialement,
bidouilleelec

Tu as donc retiré l'option -fpermissive de platform.txt ?

Bonsoir hbachetti

hbachetti:
Tu as donc retiré l'option -fpermissive de platform.txt ?

Non , je n'ai rien retiré.

Cordialement,
bidouilleelec

Peut être que cette option hérétique a été retirée dans ta version d'IDE.
Dans la 1.8.5 il faut le faire manuellement.

hbachetti:
Peut être que cette option hérétique a été retirée dans ta version d'IDE.
Dans la 1.8.5 il faut le faire manuellement.

Je ne saisis pas bien ce que vous voulez dire.
J'utilise la version 1.8.9 Windows sans modification.

Cordialement,
bidouilleelec