Hi,
I’m really new at all this so bear with me. In a nutshell, I need to control a motor in a timed fashion. I started out using millis() on the Arduino to create a timer --rather than using delay().
But now that I’ve got a Nextion display, with its built in timers, I’d like to use them instead.
So now I’ve got a nice GUI interface on the screen with a slider that sets the timer from 1-60 seconds and once enabled with a button, you see the slider position stepping down towards 0 every second.
It’s beautiful. What is NOT beautiful is the fact that I can’t figure out how to get the current value of the timer into the arduino sketch. Nor do I know how to send data from the Arduino to any of the controls on the Nextion.
I understand that this is basic stuff, but I’ve yet to find anything that has worked. Probably because I don’t understand the fundamentals of read/writing to a Nextion. Any help would be most welcome. Keep it as simple as possible.
Do you want to send to the arduino what you set the nextion timer to, or send a signal when the nextion timer reaches zero?
Wouldn’t advise sending every second from the nextion to arduino
No I’m not looking to send FROM the Nextion TO the Arduino but I am planning on reading the value of the timer, every time through loop(). But if you also don’t think that that’s a good idea, how would I get the timer to tell the Arduino when it’s hit “0”? That seems like a much more efficient way to do it.
Thanks for your help.
Have put together sample nextion and arduino code which has been tested.
From the code you should be able to adapt for your project
Nextion
start a new project.
create button (named b0), text box (named t0), String variable (named sendmess), Timer (named tm0)
in ‘timer attribute’ ensure ‘en’ = 0 not 1 otherwise the timer will auto start when powered up.
in b0 touchPressEvent put following from between the rows of dots
…
tm0.en=1 // starts the timer
t0.txt=“Timer started” //updates text box
sendmess.txt=“TIMER1” // changes sendmess variable
get sendmess.txt //sends the variable to Arduino (start of timer)
…
in tm0 Event put following from between the rows of dots
…
t0.txt=“Timer stopped” // updates text box
tm0.en=0 // stops the timer
sendmess.txt=“TIMER0” // changes sendmess variable
get sendmess.txt //sends the variable to Arduino (end of timer)
…
You can now test this - click Debug (top of nextion editor)
Click button and look at ‘Simulator Return’ box at the bottom. Suggest you also click the ‘S’ on that box header for String not Hex
You should see this each time you press the button (with a 3 second delay):
pTIMER1ÿÿÿ
pTIMER0ÿÿÿ
Every message always starts with a single character - then your text - then ends with ÿÿÿ (hex 0xFF 0xFF 0xFF)
Arduino
Tested on Arduino UNO
copy paste this code between rows of dots into new sketch then look at serial monitor once uploaded.
…
#include <SoftwareSerial.h>
SoftwareSerial nex(A0, A1); // RX | TX
String getNex, preNex, nextionData;
void setup() {
Serial.begin(115200);Serial.println();
nex.begin(9600); //start nextion comms
}
void loop() {
checkNex(); //are there any messages from nextion
if(getNex!="") {// message received
preNex=getNex.substring(0,5);
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
Serial.print(LINE);Serial.print(" > “);Serial.println(“Nextion: ended\n”);
}
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
}
}
delay(500);
}
void checkNex() { //receive data from nextion
getNex="";
if(nex.available()) {
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
getNex=getNex.substring(1,100);// throw away 1st character
}
}
…
Hope this helps
Thanks for all your hard work Bobj.
I’m getting a bunch of errors and don’t know what they mean. Am I doing something wrong?
When/if you have a chance, take a look. It’ll probably be obvious to someone who has a clue ; )
–John
Arduino: 1.8.18 (Windows 8.1), Board: “Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)”
C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\John new\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\John new\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\John new\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=2341_0042 -ide-version=10818 -build-path C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991 -warnings=default -build-cache C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_cache_428028 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17 -prefs=runtime.tools.avrdude-6.3.0-arduino17.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17 -prefs=runtime.tools.avr-gcc.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.avr-gcc-7.3.0-atmel3.6.1-arduino7.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.arduinoOTA.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.3.0 -prefs=runtime.tools.arduinoOTA-1.3.0.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.3.0 -verbose C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\John new\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\John new\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\John new\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=2341_0042 -ide-version=10818 -build-path C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991 -warnings=default -build-cache C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_cache_428028 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17 -prefs=runtime.tools.avrdude-6.3.0-arduino17.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17 -prefs=runtime.tools.avr-gcc.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.avr-gcc-7.3.0-atmel3.6.1-arduino7.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.arduinoOTA.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.3.0 -prefs=runtime.tools.arduinoOTA-1.3.0.path=C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.3.0 -verbose C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino
Using board ‘mega’ from platform in folder: C:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4
Using core ‘arduino’ from platform in folder: C:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4
Detecting libraries used…
“C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10818 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\cores\arduino” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\variants\mega” “C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\sketch\sketch_jan25a_1-25-22–937a.ino.cpp” -o nul
Alternatives for SoftwareSerial.h: [SoftwareSerial@1.0]
ResolveLibrary(SoftwareSerial.h)
→ candidates: [SoftwareSerial@1.0]
“C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10818 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\cores\arduino” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\variants\mega” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\SoftwareSerial\src” “C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\sketch\sketch_jan25a_1-25-22–937a.ino.cpp” -o nul
“C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10818 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\cores\arduino” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\variants\mega” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\SoftwareSerial\src” “C:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\SoftwareSerial\src\SoftwareSerial.cpp” -o nul
Generating function prototypes…
“C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10818 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\cores\arduino” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\variants\mega” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\SoftwareSerial\src” “C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\sketch\sketch_jan25a_1-25-22–937a.ino.cpp” -o “C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\preproc\ctags_target_for_gcc_minus_e.cpp”
“C:\Program Files (x86)\Arduino\tools-builder\ctags\5.8-arduino11/ctags” -u --language-force=c++ -f - --c+±kinds=svpf --fields=KSTtzns --line-directives “C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\preproc\ctags_target_for_gcc_minus_e.cpp”
Compiling sketch…
“C:\Users\John new\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++” -c -g -Os -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10818 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\cores\arduino” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\variants\mega” “-IC:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\SoftwareSerial\src” “C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\sketch\sketch_jan25a_1-25-22–937a.ino.cpp” -o “C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\sketch\sketch_jan25a_1-25-22–937a.ino.cpp.o”
sketch_jan25a_1-25-22–937a:14:12: error: stray ‘\342’ in program
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^
sketch_jan25a_1-25-22–937a:14:13: error: stray ‘\200’ in program
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^
sketch_jan25a_1-25-22–937a:14:14: error: stray ‘\234’ in program
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^
sketch_jan25a_1-25-22–937a:14:20: error: stray ‘\342’ in program
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^
sketch_jan25a_1-25-22–937a:14:21: error: stray ‘\200’ in program
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^
sketch_jan25a_1-25-22–937a:14:22: error: stray ‘\235’ in program
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^
sketch_jan25a_1-25-22–937a:15:12: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:13: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:14: error: stray ‘\234’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:20: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:21: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:22: error: stray ‘\235’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:40: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:41: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:42: error: stray ‘\234’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:44: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:45: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
sketch_jan25a_1-25-22–937a:15:46: error: stray ‘\235’ in program
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:16:33: warning: missing terminating " character
Serial.print(LINE);Serial.print(" > “);Serial.println(“Nextion: ended\n”);
^
sketch_jan25a_1-25-22–937a:16:33: error: missing terminating " character
Serial.print(LINE);Serial.print(" > “);Serial.println(“Nextion: ended\n”);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sketch_jan25a_1-25-22–937a:18:12: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:13: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:14: error: stray ‘\234’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:20: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:21: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:22: error: stray ‘\235’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:40: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:41: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:42: error: stray ‘\234’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:44: error: stray ‘\342’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:45: error: stray ‘\200’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:18:46: error: stray ‘\235’ in program
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
sketch_jan25a_1-25-22–937a:19:33: error: stray ‘\342’ in program
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^
sketch_jan25a_1-25-22–937a:19:34: error: stray ‘\200’ in program
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^
sketch_jan25a_1-25-22–937a:19:35: error: stray ‘\235’ in program
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:19:39: warning: missing terminating " character
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^
sketch_jan25a_1-25-22–937a:19:39: error: missing terminating " character
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sketch_jan25a_1-25-22–937a:28:30: error: stray ‘\342’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:31: error: stray ‘\200’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:32: error: stray ‘\231’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:33: error: stray ‘’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:37: error: stray ‘’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:41: error: stray ‘’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:45: error: stray ‘\342’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:46: error: stray ‘\200’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
sketch_jan25a_1-25-22–937a:28:47: error: stray ‘\231’ in program
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino: In function ‘void loop()’:
sketch_jan25a_1-25-22–937a:14:15: error: ‘TIMER’ was not declared in this scope
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^~~~~
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:14:15: note: suggested alternative: ‘TIMER2’
if(preNex==“TIMER”) nextionData=getNex.substring(5,6);
^~~~~
TIMER2
sketch_jan25a_1-25-22–937a:15:15: error: ‘TIMER’ was not declared in this scope
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^~~~~
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:15:15: note: suggested alternative: ‘TIMER2’
if(preNex==“TIMER” && nextionData==“0”) { // timer ended
^~~~~
TIMER2
sketch_jan25a_1-25-22–937a:16:14: error: ‘LINE’ was not declared in this scope
Serial.print(LINE);Serial.print(" > “);Serial.println(“Nextion: ended\n”);
^~~~
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:16:14: note: suggested alternative: ‘PINE’
Serial.print(LINE);Serial.print(" > “);Serial.println(“Nextion: ended\n”);
^~~~
PINE
sketch_jan25a_1-25-22–937a:17:1: error: expected primary-expression before ‘}’ token
}
^
sketch_jan25a_1-25-22–937a:18:15: error: ‘TIMER’ was not declared in this scope
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^~~~~
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:18:15: note: suggested alternative: ‘TIMER2’
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^~~~~
TIMER2
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:18:43: warning: invalid conversion from ‘int’ to ‘const char*’ [-fpermissive]
if(preNex==“TIMER” && nextionData==“1”) { // timer ended
^
In file included from C:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\cores\arduino/Arduino.h:232:0,
from C:\Users\JOHNNE~1\AppData\Local\Temp\arduino_build_699991\sketch\sketch_jan25a_1-25-22--937a.ino.cpp:1:
C:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\cores\arduino/WString.h:143:16: note: initializing argument 1 of ‘unsigned char String::operator==(const char*) const’
unsigned char operator == (const char *cstr) const {return equals(cstr);}
^~~~~~~~
sketch_jan25a_1-25-22–937a:19:14: error: ‘LINE’ was not declared in this scope
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^~~~
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino:19:14: note: suggested alternative: ‘PINE’
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^~~~
PINE
sketch_jan25a_1-25-22–937a:19:37: error: expected primary-expression before ‘>’ token
Serial.print(LINE);Serial.print(” > ");Serial.println(“Nextion: started”);
^
sketch_jan25a_1-25-22–937a:20:1: error: expected primary-expression before ‘}’ token
}
^
C:\Users\John new\Documents\Arduino\sketch_jan25a_1-25-22–937a\sketch_jan25a_1-25-22–937a.ino: In function ‘void checkNex()’:
sketch_jan25a_1-25-22–937a:28:34: error: ‘xFF’ was not declared in this scope
getNex = nex.readStringUntil(’\xFF\xFF\xFF’);
^~~
Using library SoftwareSerial at version 1.0 in folder: C:\Users\John new\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\SoftwareSerial
exit status 1
stray ‘\342’ in program
OK - so you have a mega - that is easier as it has more serial ports.
It seems that embedded code cannot be copy/pasted to ino. I had same errors .
Will send you sketch
email me at bob.bj43 AT gmail.com
Problem is with forum software, browser language settings and copy/paste. Arduino does not like typographic double quotes in Unicode. Replace these with standard ASCII double quotes as indicated in the compile/build verbose and the error will be gone.