Home › Forum › Le librerie ospitate nel sito › EBYTE E32 dispositivi LoRa UART sx1278/sx1276. › Errore compilazione Web Manager
Taggato: Bug
- Questo topic ha 10 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 2 anni, 9 mesi fa da
Renzo Mischianti.
-
AutorePost
-
-
13 Agosto 2022 alle 13:01 #22281
Buongiorno, sto cercando di compilare lo sketch del web manager per ESP8266 e ottengo questo errore durante la compilazione:
E:\ARDUINO\LoRa\Ebyte LoRa E32\PROGETTO_ITA\LoRa_E32\examples\esp8266_e32_web_manager_gateway\esp8266_e32_web_manager_gateway.ino: In function ‘void webSocketEvent(uint8_t, WStype_t, uint8_t*, size_t)’:
esp8266_e32_web_manager_gateway:869:138: error: cannot bind non-const lvalue reference of type ‘String&’ to an rvalue of type ‘String’
869 | webSocket.sendTXT(num, “{\”type\”:\”connection\”, \”connection\”: true, \”simpleMessage\”: “+String(readSingleMessage?”true”:”false”)+”}”);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
In file included from E:\ARDUINO\LoRa\Ebyte LoRa E32\PROGETTO_ITA\LoRa_E32\examples\esp8266_e32_web_manager_gateway\esp8266_e32_web_manager_gateway.ino:24:
C:\Users\User\Documents\Arduino\libraries\arduinoWebSockets-master\src/WebSocketsServer.h:60:40: note: initializing argument 2 of ‘bool WebSocketsServerCore::sendTXT(uint8_t, String&)’
60 | bool sendTXT(uint8_t num, String & payload);
| ~~~~~~~~~^~~~~~~
exit status 1
cannot bind non-const lvalue reference of type ‘String&’ to an rvalue of type ‘String’a cosa può essere dovuto? perdoni ma non ho molta esperienza con Arduino
Grazie, cordiali saluti
-
16 Agosto 2022 alle 09:18 #22291
Ciao Franco,
scusa per la tarda risposta, ma sono in ferie lontano da ogni dispositivo elettronico ;).In effetti l’ultima versione della libreria riporta quel problema, modifica la linea
webSocket.sendTXT(num, "{\"type\":\"connection\", \"connection\": true, \"simpleMessage\": "+String(readSingleMessage?"true":"false")+"}");
in
// send message to client String msg = "{\"type\":\"connection\", \"connection\": true, \"simpleMessage\": "+String(readSingleMessage?"true":"false")+"}"; webSocket.sendTXT(num, msg);
Ciao Renzo
-
18 Agosto 2022 alle 23:58 #22347
Grazie Renzo, la compilazione è andata a buon fine e riesco correttamente a collegarmi tramite Wi-Fi del router. Purtroppo la configurazione che ottengo è errata e mi compare questo messaggio nell’interfaccia web: Le informazioni sul modulo risultano non coerenti, resettare il dispositivo.
Infatti nella configurazione che appare (per. es.) la frequenza è limitata nei limiti dei 400 MhZ e non degli 868 Mhz coerentemente con la tipologia di modulo che è un Ebyte ES32 900T30D.
Posso supporre che la descrizione che utilizzo (di default) nel file .ino sia non congruente con il modulo stesso.
Questa la descrizione:
LoRa_E32 e32ttl(D3, D4, D5, D7, D6); // Arduino RX <– e22 TX, Arduino TX –> e22 RX AUX M0 M1.
Utilizzo le R di pull-up.
Peraltro, se utilizzo il modulo di configurazione originale di Ebyte (tramite FTDI) le informazioni risultano corrette. Cosa ne pensi? Grazie per il tuo lavoro.Franco Corsi
-
19 Agosto 2022 alle 08:08 #22354
Ciao Franco,
ti consiglio di seguire questi steps:
– Esegui uno sketch di esempio con la configurazione che andrai ad utilizzare;
– Mandami un’estrazione del modello del tuo dispositivo, c’è il rischio che non azzecchi le frequenze perché banalmente non l’ho censito;
– Quando sei sicuro della configurazione ricarica lo sketch del Web Manager.ciao fammi sapere Renzo.
-
19 Agosto 2022 alle 14:36 #22360
Ciao, ho visto che negli esempi la descrizione del device è sempre LoRa_E32 e32ttl oppure LoRa_E32 e32ttl100. Immagino (non vorrei dire una castroneria) che il problema possa essere questo, nel senso che ha necessità di parametri diversi nella libreria. Comunque gli sketch di esempio non mi funzionano. Se può essere utile il web manager funziona solo con M0 e M1 collegati rispettivamente a GND e a 3,3V. Collegandoli a D7 e D6 (come da sketch) il monitor seriale non dà segni di vita. Via mail (info@etc) ti giro il datasheet del device.
Grazie
Franco Corsi
-
19 Agosto 2022 alle 14:58 #22361
Ciao Franco,
gli sketch di esempio devono funzionare, altrimenti c’è un problema.Che errore ti da?
Per il tipo di device mi serve l’output del
getMpoduleInfo
.
Ciao Renzo -
19 Agosto 2022 alle 16:34 #22373
Ciao, si hai ragione. Dettaglio di come ho proceduto:
Lo sketch di esempio che ho usato è: sendReceiveTransparentTransmissionE32_TTL_1W
in quanto si confaceva alle proprietà del mio modulo (1W)
nel file .ino ho variato il nome dei pin (D3, etc) ed ottengo questo risultato nella seriale:16:24:19.234 -> HEAD : 11000000 192 C0
16:24:19.234 ->
16:24:19.234 -> AddH : 0
16:24:19.267 -> AddL : 3
16:24:19.267 -> Chan : 4 -> 414MHz
16:24:19.301 ->
16:24:19.301 -> SpeedParityBit : 0 -> 8N1 (Default)
16:24:19.335 -> SpeedUARTDatte : 11 -> 9600bps (default)
16:24:19.369 -> SpeedAirDataRate : 10 -> 2.4kbps (default)
16:24:19.438 -> OptionTrans : 0 -> Transparent transmission (default)
16:24:19.505 -> OptionPullup : 1 -> TXD, RXD, AUX are push-pulls/pull-ups
16:24:19.574 -> OptionWakeup : 0 -> 250ms (default)
16:24:19.608 -> OptionFEC : 1 -> Turn on Forward Error Correction Switch (Default)
16:24:19.678 -> OptionPower : 0 -> 30dBm (Default)
16:24:19.711 -> —————————————-
16:24:19.780 -> Hi, I’m going to send message!
16:24:19.814 -> SuccessTutto ciò è congruente con il tipo di modulo. Per quanto riguarda l’output ‘getMpoduleInfo, se ti riferisci alle informazioni fornite dal web manager, ottengo la stringa ‘non è stato possibile recuperare dati’.
Grazie, ciao
-
19 Agosto 2022 alle 16:37 #22374
Mi correggo, è congruente per il livello 30dBm ma non per la frequenza in quanto il mio modulo è a 868 Mhz
-
19 Agosto 2022 alle 18:11 #22376
Carica lo sketch che ti estrae la configuration ed il module info e mandami il dettaglio.
Ciao Renzo -
19 Agosto 2022 alle 19:44 #22377
Ciao, innanzitutto grazie per l’assistenza e per le rapide risposte.
ecco il risultato dello sketch arduinoGetConfiguration
19:40:37.492 -> —————————————-
19:40:37.560 -> HEAD BIN: 11000000 192 C0
19:40:37.594 ->
19:40:37.594 -> AddH BIN: 0
19:40:37.594 -> AddL BIN: 11
19:40:37.594 -> Chan BIN: 4 -> 414MHz
19:40:37.628 ->
19:40:37.628 -> SpeedParityBit BIN : 0 -> 8N1 (Default)
19:40:37.697 -> SpeedUARTDataRate BIN : 11 -> 9600bps (default)
19:40:37.732 -> SpeedAirDataRate BIN : 10 -> 2.4kbps (default)
19:40:37.800 -> OptionTrans BIN : 0 -> Transparent transmission (default)
19:40:37.868 -> OptionPullup BIN : 1 -> TXD, RXD, AUX are push-pulls/pull-ups
19:40:37.936 -> OptionWakeup BIN : 0 -> 250ms (default)
19:40:37.970 -> OptionFEC BIN : 1 -> Turn on Forward Error Correction Switch (Default)
19:40:38.038 -> OptionPower BIN : 0 -> 20dBm (Default)
19:40:38.106 -> —————————————-
19:40:38.584 -> Success
19:40:38.584 -> 1
19:40:38.584 -> —————————————-
19:40:38.652 -> HEAD BIN: 11000011 195 C3
19:40:38.687 -> Freq.: 0
19:40:38.687 -> Version : 45
19:40:38.687 -> Features : 10
19:40:38.721 -> —————————————-ciao Franco
-
20 Agosto 2022 alle 12:05 #22385
Ciao Franco,
il dispositivo è censito.Il messaggio che ti da credo sia più legato a qualche problema di configurazione.
Ciao Renzo
-
-
AutorePost
- Devi essere connesso per rispondere a questo topic.