#92 Nextion Display - pop up keyboard with the Arduino - no nextion.h library tutorial
Vložit
- čas přidán 5. 09. 2024
- This video explains how to send input data from the Nextion pop-up keyboard and then send it to the Arduino without using the Nextion.h library. I go over how to use buttons on the display to initiate the transfer to the Arduino. Then I go over how to have it transfer when the keypad is closed automatically.
If you enjoy the content considering donating a cup of coffee at ko-fi.com/chea...
You can sort and find videos better on at www.cheapcontrols.com
I have started a group on Facebook to make it easier to interact with user-requested videos. Consider looking it up. www.facebook.c...
Thank you, advanced tutorial for me and i enjoyed learning new things.
I also like to learn new things I am glad my video helped.
@@CheapControls Thanks again. I can not send data to arduino from nextion. I read temperature from a sensor, print it on nextion. User can set a temperature value from nextion, when temperature value reaches the sensor value, heater stops. I was asking myself "how can i send user set value from nextion to arduino and compare it with the sensor value?" The answer to my question is your video, after 3 weeks of suffering and watching ypur video again. Now i understand :) Thank you, all the best.
Hi
Thanks for some great videos on using Nextion displays without a library, which I have been very pleased with.
Thank you
with best regards
Tommy
You are Welcome, Thank you for the kind words.
Very Well ❤🤍💚
Thanks for watching and taking the time to comment
Can post a quick schematic of how everything is hooked up such that the debug window for the Nextion display interacts with the Arduino serial monitor in real time (starting around 9:10)? If this is covered in a previous video, just a quick link will be more than enough help. Thanks in advance.
check this video out, If it does not answer your question I will try draw something up. czcams.com/video/Zh1kHsidlWE/video.html I thought about putting full schematics in these but I have not had that many requests. I am currently doing a major upgrade to the cheap controls website that should make it easier to located information. Former art student? I am a tech guy that would love to be a former tech guy and current art student. Unfortunately I am not very artistic.
That was very helpful, thank you. I was trying to troubleshoot why my Nextion wasn't talking to my Uno. I was able to use Terra Term to confirm that my Nextion was sending the expected commands. And I was able to use the Nextion debugger to confirm that the Uno was giving the expected responses. However, what's being weird is when I take my PC out of the mix entirely and plug the Nextion directly into the Uno. I made sure the Tx and Rx pins were hooked up correctly; made sure the grounds were connected. But, I'm still getting nothing. I haven't quite chased it down, but it may be that female header pins on the Uno are a little wonky. When I push the jumpers in, they don't feel terribly solid. I'll poke around some more tonight, but I'm definitely further along than I was last night.
Thank you for your help!
@@CheapControls Ok, *now* it's working. I used some different jumper wires. Thanks again!
Also, how do you not have, like, a bajillion subscribers? Your videos are FANTASTIC and very helpful. I've been messing with these displays for years now and your videos are head and shoulders above the others here on youtube.
I really appreciate the kind words. I am amazed at the number of views I currently have. When I started this is was more to document the videos for my own reference.
sir how you make pop up keypads on your screen
please sir help me
That is a very involved question. You will have to submit a request at www.cheapcontrols.com for help.
I am trying to convert the string sent to the Arduino into an int. Any suggestions? For example, I want to change a predefined integer that I am using for a delay to the value that you have correlated with one of the numbers. Like if temp value sent is 86, I want to change the int value in Arduino to 86
a string "86" is converted with toInt() example int x = someString.toInt(); That might not be exact the syntax but it should be close.
use the atoi function... it's designed to convert a char array to an int. here is a snippet of code from 1 of my working applications
memset(buffer, '\0', sizeof(buffer));
tHolder.getText(buffer, sizeof(buffer)); // reading the value from the Nextion variable set when the value is selected
preSetNum = atoi(buffer);
if (preSetNum > 0)
Good Day Cheap Controls!
I am amazed on your tutorials regarding nextion display without library so I tried your sample hmi and arduino codes. unluckily when i try to open the hmi file of this tutorial it says the resource file is damaged... please help I really want to learn ...Thank you!
Did you try to download again? I will check on my end and if needed I will upload a new file. Thank you for watching
I downloaded the file and it is working. I am using editor version 1.60.2
Is there any ways to show sensor values from arduino in one textbox while in the other textbox we can show numeric keypad? Because it is always refresh the page if arduino send the data and the numeric keypad is also refreshed ? Thanks
Are you saying that the Nextion page is refreshed when you send data from the Arduino? Or only when you hit enter on the Numeric keypad. You could make the text box global then it should hold during a page refresh. You can also write information to eeprom and read it back in on page load. I hope this helps and thanks for watching.
how to lock the keyboard parameter setting , such that we can enter a number between max99 and min 10?
When you exit the keypad the page you are on is refreshed. You can have the number field checked on load and if the field is greater than 99 set it too 99 and if it is less than 10 you can set it to 10. I have a few videos coming out but they are taking me a long time to setup. I will try to a short video on this while I am working on some longer ones.
How do I read string commands from nextion. I am not able to read commands like temp*** ,the 3 star may have number from 0-100 so i want to read the first 4 letter and substring remaining 3. What's the ending character from nextion . I am reading char by char and appending until /n is received but this doesn't work . Also tried 0xFF but that also didn't work. Any suggestions
Are you using the library. I do not make videos that use the library. Have you watched this video czcams.com/video/b9j7fX45qDo/video.html
@@CheapControls no sir I don't use library i have been following your videos. Programmer the whole display but got issue there. So what is the termination charater? Like i use while (serial available)
Char c = read one byte if that byte is
than end command. But don't know why that is not working.
Ok sir sure i will go though this video
Thankyou for your help and you have done a really amazing work by creating these super simple tutorials.
I use a ? as an ending delimiter. The Nextion does not add a
. If you use the "prints" command it will only send what you tell it too.
@@CheapControls ok sir got you. Will try something similar. Thankyou.
Very nice!!
how to send numerical value to arduino? its possible?
Does nextion only send text to arduino? (strings)
if i send a string can i convert to numbers on arduino?
tks
If you send "123" you can use toInt on the Arduino to convert it to an Integer. You can send numbers from the nextion. I know I have a video on it but I can't remember which one. I will see if I can find one and if so I will post it in an another reply to this comment.
@@CheapControls Tks !! I'll look for it too. You have many videos !!
Check out this one and see if it helps. czcams.com/video/Fr34EQnlJwY/video.html About a year ago I put up a video on using the Nextion with the Arduino but without the Nextion Library. I have made some changes in how I do this, so I have been thinking of remaking the video in a short series. As I plan this out I will make sure I have a video in the series on the difference between values and strings. Thank you for watching.
Thanks for the videos. They are of a practical use. But I think the link to the files for this video go to the wrong project. DOH!
Thanks I will look into it. I posted this last night. It takes me a bit to get everything up on the website. It should be tonight. Reply if you want me to comment here when I have them up.
@@CheapControls
Yes, please. Thanks.
@@search4truth616 I thought I had replied but I can't find it. The link is up and should be working. The downloads should be there.
@@CheapControls
Would you indulge me one question? Can a simple fraction multiplication or division equation be performed on a Nextion?
For instance, 12*.05 . I'm trying to compute wattage. That is 12 volts times 50 miliamps. Or dividing 1 by an integer? I'm trying to calculate Mhos (conductivity) from Ohms (resistance).
Thanks, S4T.
@@search4truth616 The Nextion only works with integers. No floating-point. The simple answer is no. But you can do something like 15 * 5 = 75 then display it as a string and add a decimal point to the front. You just have to remember as you work through the math that it 100 times the actual value. If you are familiar with modulus then you can do some manipulation. Check this video out and see if it helps. czcams.com/video/qYIvy9RbSOc/video.html If not I could look into creating a video to go over how to fake floating-point on a Nextion.
how to automatically clear the display of the keypad without using the delete button every time i input a new value
Watch this video at about the 9 minute mark czcams.com/video/XSSVtR4-ceU/video.html
how to send text using qwerty? thanks
Can you explain your project a little bit more. I am not sure if you mean directly or have the qwerty pop up keyboard tied to a text box and after you are don typing send the data or do you want to send the data while typing?
very good but how to put a point
If you mean decimal point. Nextion does not understand floating point numbers. Thanks for watching.
Code like please Sri
Thanks for watching.
I want to write a text, and save that text, such as Name: jsuendjdj
I want to save what I put in Name
Hi! Nice video as always ... But ... where can I find the files? I tried to enlarge the page and copy ...
If you want you can send them to vincadts@gmail.com!
Thanks Vincenzo !!!
Found!!!! It did not send me to the correct site page !!!
I will look into the link. Thanks for pointing it out and happy to see someone using the files.
@@VincenzoMavica Thank you for point the link issue out. I believe I have it corrected.
it doesn't work for me... when i send the text it never goes to the conditions if(data_ecran.substring(0,9) == "catalogue") and if(data_ecran.substring(0,5) == "serie") heres my code : void loop()
{
if (Serial.available())
{
delay(30);
while(Serial.available())
{
data_ecran += char(Serial.read());
}
digitalWrite(valve_air,LOW);
}
if(data_ecran.substring(0,9) == "catalogue") // appui sur le bouton envoi
{
digitalWrite(valve_occl_distal,LOW);
// numero_catalogue = String(data_ecran.substring(4));
send_String_txt(String(data_ecran.substring(9)), "tresult1.txt=\"");
}
if(data_ecran.substring(0,5) == "serie") // appui sur le bouton envoi
{
digitalWrite(valve_occl_proxy,LOW);
// numero_serie = String(data_ecran.substring(4));
send_String_txt(String(data_ecran.substring(5)), "tresult2.txt=\"");
}
digitalWrite(valve_air,HIGH);
}
I would add a line to print out the data_ecran value so you can make sure you are receiving the correct string. I am about 3 hours from leaving the country for a week. If you go to www.cheapcontrols.com and submit a comment I will help you when I get back.