DWIN Display Tutorials #1 - Transmitting text between the display and PC or Arduino

Поделиться
HTML-код
  • Опубликовано: 6 окт 2024

Комментарии • 120

  • @lagossmartmeterhackathonte8928
    @lagossmartmeterhackathonte8928 Год назад +2

    Great tutorial the curious scientist

  • @MarioFulvioCaramanico
    @MarioFulvioCaramanico 3 месяца назад +1

    Useful video. Thank you

  • @jasonnaude8951
    @jasonnaude8951 Год назад +2

    Extremely useful video. Have you found a way to turn off the response from the display when you send data to it?

    • @CuriousScientist
      @CuriousScientist  Год назад

      Thanks! I don't mind getting a response as I can neglect it, so I haven't searched for it. Read the manual of the display, and it will be described there if it is possible to turn it off.

  • @darkman19693
    @darkman19693 Год назад +1

    After using the DWIN software for a while i feel it is a long way from a complete package. The software needs a few for functions to become ready for mainstream use.
    It needs at least the ability to simply define a background color for each screen and control. Using a dedicated image for each background and control should be an option. It would be nice if there was an option to specify a color gradient for things like a slide bar. It should not be a big issue even if the color is converted into the required format in background.

    • @CuriousScientist
      @CuriousScientist  Год назад

      Hi! I think it is rather complete, but some functions are just really cumbersome. But I guess this is due to the fact that they based the whole logic on changing and manipulating values under SP/VP addresses. Also, most of the dynamically added things' colours can be changed by manipulating the values under the SP address of the control, if I remember correctly. However, I never came across a color gradient for a slide bar. I don't know if it is possible, but maybe there's a workaround for it.

  • @gomulusistemlerakademisi
    @gomulusistemlerakademisi 4 месяца назад +1

    Hi, I watch the video and I'd like to say things which I tried to understand.
    In the menu part, we give key value for all button but the problem is Enter button. When I choose enter for the enter button, it didn't send the values to serial terminal, but when I changed enter to return, it fixed the problem. Did you do the same things or did I miss some part?

    • @CuriousScientist
      @CuriousScientist  3 месяца назад

      Hi! I think you missed something. The enter button has to be assigned with the "return" because otherwise it will just add a line break.

  • @rameshr9110
    @rameshr9110 2 месяца назад

    Thank you sir

  • @fertakusM
    @fertakusM 28 дней назад

    Nice tutorial Mr. Scientist!
    Now a question, if you have an opinion with that.
    Looks like a litle bit complex to share info between the Arduino PLC and the hmi Screen....
    If we choose a Raspberry for our projects (Linux) with Python, for example, or even pure javaScript we can share and control data from plc - screen superEsay way...
    Then.. What am I missing? Why is that hard with arduino and what's the benefit ? fast proces? cheap systems?
    Ok.. Arduino don't need any OS to operate...
    yes BUT!
    thanks anyway for the super-interesant video!
    Im gona use it on my next project.

    • @CuriousScientist
      @CuriousScientist  28 дней назад +1

      Hi and thanks!
      I respectfully disagree, they are not complex to use at all. It is just sending ASCII characters back and forth. Once you understand the logic, it is very simple in my opinion.

  • @SunriseSearcher
    @SunriseSearcher Год назад +1

    Great stuff. Can you do a video about sending images dynamically with icon overlay? We are stuck with "static" images. It would be cool to send a hex image string like profile picture etc. to the display.

    • @CuriousScientist
      @CuriousScientist  Год назад +1

      Hi! I follow my own pace with this video series and such topic is not yet on my list. But I wrote it down and when I arrive to that area, I will try to work on it. But I cannot promise any date and time.

    • @SunriseSearcher
      @SunriseSearcher Год назад +1

      @@CuriousScientist no worries. They don't have a video tutorial about it and though it would be cool. Thanks for even considering though! Keep it up!

    • @varminpanchal4162
      @varminpanchal4162 Год назад

      Can you send code and display file

    • @CuriousScientist
      @CuriousScientist  Год назад

      The Arduino code is available on my Patreon. The "display file" is not available because it is display specific. However, you can follow the video and create the same files.

    • @varminpanchal4162
      @varminpanchal4162 Год назад

      Please send link of petron

  • @sridevipindi1547
    @sridevipindi1547 Год назад +1

    hi! when i press ENTER , first page is not getting displayed. for ENTER i selected basic touch module under Touch control, checked the Full QWER keyboard, clicked on set button and clicked on Enter under keycode....is it correct?could u guide me

    • @CuriousScientist
      @CuriousScientist  Год назад

      There are 2 types of "enter" if I remember correctly. One is for confirming (acts as "OK") and another is for line break. Check if you use the proper one.

  • @snehawagh3729
    @snehawagh3729 3 месяца назад

    How to print string[text message]from Arduino controller to dwin display?....like in my code i am sending ascii values if i changed to char values it is taking the ascii values but i need text message how to do this

    • @CuriousScientist
      @CuriousScientist  3 месяца назад

      Hi! It is clearly explained in the video and the corresponding article on my webpage.

  • @AbhishyanthVailaya
    @AbhishyanthVailaya 3 дня назад

    I am recieving A9 CB F9 54 FD FF FD 00 data from dwin not recieving the data with 5A A5 header . Am i doing something wrong . Any thoughts on this problem . Thank you.

    • @CuriousScientist
      @CuriousScientist  3 дня назад

      Hi! Did you do the exact same things as I did in the video?

    • @AbhishyanthVailaya
      @AbhishyanthVailaya 3 дня назад +1

      I figured it out . I had to solder TTL pins in the board .

  • @nevzatenesiridemir6812
    @nevzatenesiridemir6812 9 месяцев назад

    I'm using the DMG24240C013 screen, and I applied the same steps as you described. After changing the Touch-sensitive Variable Changes Update setting to Auto and loading the CFG file I created onto my screen, the backlight went off, and I can't see anything. Even if I try to load a different project, the issue remains unchanged.

    • @CuriousScientist
      @CuriousScientist  9 месяцев назад

      Hi! If you don't use the same display as I do, you should always refer to the datasheet of your display. Maybe there are some display-specific settings that you need you apply.

  • @uniquetechgadgets5006
    @uniquetechgadgets5006 3 месяца назад

    Hi bro can we get another video to read a data from dwin while interacting touching or pressing the button in the dwin display to get data in Arduino Serial monitor

    • @CuriousScientist
      @CuriousScientist  3 месяца назад

      Hi! I am not your "bro", and I don't do videos on requests unless you pay for it. But check my other Dwin videos. You might find something useful.

  • @cristhian98651
    @cristhian98651 3 месяца назад

    Hello, when you send the data to the screen it does not return a verification frame, how do you handle that frame?

    • @CuriousScientist
      @CuriousScientist  3 месяца назад

      Hi! I don't understand what you mean. Why would you need a verification frame?

    • @cristhian98651
      @cristhian98651 3 месяца назад

      @@CuriousScientist nop when i send a frame ,the screen return ok frame

  • @zokrita830
    @zokrita830 10 месяцев назад

    hi dear, excelente video, how send string from esp32 to diwn display?

    • @CuriousScientist
      @CuriousScientist  10 месяцев назад

      Hi! Exact same way.

    • @zokrita830
      @zokrita830 10 месяцев назад

      I have a problem with my code, i can't send string

    • @CuriousScientist
      @CuriousScientist  10 месяцев назад

      Okay. What should I do about it?

  • @anandhukrishna3456
    @anandhukrishna3456 5 месяцев назад

    I only have to send data from serial monitor to the display, so should I follow the full process or just the receiving text part in the software and the sendtext function in the code, when I try this I was not getting any data to the display from the serial monitor

    • @CuriousScientist
      @CuriousScientist  5 месяцев назад

      Follow everything if you want to achieve the same thing.

    • @anandhukrishna3456
      @anandhukrishna3456 5 месяцев назад +1

      @@CuriousScientist OK thank u

    • @anandhukrishna3456
      @anandhukrishna3456 4 месяца назад

      In my software when i select the text box were the text must be displayed from keybord there is not a option such as keyboard output at the bottom, but in your software its showing a keyboard output option, do you know the reason for it, i have given the same vp address on both but no data is printing on the text box, can you please help

    • @CuriousScientist
      @CuriousScientist  4 месяца назад

      @@anandhukrishna3456 Probably you don't do exactly the same as I do. Follow my tutorial in the exact same way and then carefully modify it, one step at a time.

  • @Megahd_
    @Megahd_ 5 месяцев назад

    is there a way to create new page or display JPG image directly from the microcontroller

    • @CuriousScientist
      @CuriousScientist  5 месяцев назад

      Hi! No, the images should be uploaded to the display when you upload the code. The images have to be packed in a custom format used by the DWIN display. I explain this in all the tutorials basically when I show how to pack the pages in DGUS.

    • @Megahd_
      @Megahd_ 5 месяцев назад

      @@CuriousScientist ok thanks how then to represent image 01 using commands

    • @CuriousScientist
      @CuriousScientist  5 месяцев назад

      It is written in the documentation of the DGUS software. They have nice examples in it.

    • @Megahd_
      @Megahd_ 5 месяцев назад +1

      @@CuriousScientist ok thanks

  • @sridevipindi1547
    @sridevipindi1547 Год назад

    i have set screen resolution as 320*240. i have entered 1to 9 and q,w,e,r ...first line is full....when we still enter the letters automatically cursor has to go to second line and entered letters should displayed but it is not happening ....@20:01 time...could u guide me

    • @CuriousScientist
      @CuriousScientist  Год назад

      The text should be wrapped automatically. Check the handbook of the display for more details. Also, play around with the length-related parameters. Maybe you just simply run out of the memory, so there's no second line.

  • @danielungureanu430
    @danielungureanu430 11 месяцев назад

    Hi! I tried to make a very similar procjet using a DMG12480C068_03WTC. It is very strange that when I input the text on VP 0x1000
    - the text is shown above the keyboard
    - the text is shown on the main page
    - but the message sent over the RS232 is not corerent. Even for the same text, the message is different. For exemple, I receive 1A 41 01 20 20 24 24 AE BF BF for text "ttt"
    - same time, if I send 0x83 command to read VP 0x1000, the answer is correct 5A A5 10 83 10 00 06 74 74 74 FF FF
    Is it anything that I missed?
    Thank you!

    • @CuriousScientist
      @CuriousScientist  11 месяцев назад

      Hi! First, instead of trying to make a "very similar" project, copy exactly what I did to understand how everything works. As you see it in the demo, things work properly. Then, try to modify it one step at a time to make it suitable for your requirements. Without seeing what you have done I cannot tell what you could have potentially missed, sorry.

  • @sridevipindi1547
    @sridevipindi1547 Год назад

    i have 123 Data Variable Display and Text Display Tool under Text Show menu
    Do i have to select Text Display which is under Text Show?
    will it show whatever i have entered ....i mean ASCII text

  • @murugesh9338
    @murugesh9338 6 месяцев назад

    nicely explained bro!
    while you sending the data from arduino serial monior to dwin display, you are getting each HEX char value of the string and redirecting it to dwin display.
    but we can't send data of user string from arduino to dwin display without converting the string into hex bytes isn't it?
    I feel it is difficult to convert so. can you please help me on how to do it?
    example,
    I wana send string "27/03/2024" to show in dwin.
    As i worked with hterm, display need the data of that string as,
    5A A5 11 82 10 60 32 37 2F 30 33 2F 32 30 32 34 FF FF
    but im stuck in the string conversion to HEX bytes can you please help on it?

    • @CuriousScientist
      @CuriousScientist  6 месяцев назад

      Hi! No, you need to send the string byte by byte in HEX format. I show it in my tutorials how to do that. It is carefully explained on my website as well.

    • @murugesh9338
      @murugesh9338 6 месяцев назад

      if you don't mind, can you please share the link of that video / site ? because, im scrolling random videos of your's still couldn't catch it...@@CuriousScientist

    • @CuriousScientist
      @CuriousScientist  6 месяцев назад

      curiousscientist.tech/blog/dwin-displays-sending-and-receiving-text-with-arduino?rq=Dwin

    • @murugesh9338
      @murugesh9338 6 месяцев назад

      yeah i gone through your link. there you explained everything same as in the video,
      but my doubt is in string conversion to char hex.
      ex, i achieved the functionality for float display with below commands.
      //using below command to send variable float value to display - "tolerance" is a float value from MC
      sendFloatTolerance(tolerance); // to call the sender bellow.
      //-----------------------------------------------------------FloatToHex-----------------------------------------------------------------------------
      void FloatToHex(float f, byte* hex) {
      byte* f_byte = reinterpret_cast(&f);
      memcpy(hex, f_byte, 4);
      }
      //---------------------------------------------------------sendFloatTolerance-----------------------------------------------------------------------------
      void sendFloatTolerance(float floatValue) {
      dwinSerial.write(0x5A);
      dwinSerial.write(0xA5);
      dwinSerial.write(0x07);
      dwinSerial.write(0x82);
      dwinSerial.write(0x10);
      dwinSerial.write((byte)0x50); // Write address
      byte hex[4] = { 0 }; // create a hex array for the 4 bytes
      FloatToHex(floatValue, hex); // convert the float to hex array
      dwinSerial.write(hex[3]); // The order is flipped (endiannes)
      dwinSerial.write(hex[2]);
      dwinSerial.write(hex[1]);
      dwinSerial.write(hex[0]);
      }
      Im converting FloatToHex, similarly want to convert the string values to hex but i couldn't and stucked...
      @@CuriousScientist

    • @CuriousScientist
      @CuriousScientist  6 месяцев назад

      @murugesh9338 I am pretty sure that I explained in my video how to get her from string.

  • @jeyaprakashrajaiah32
    @jeyaprakashrajaiah32 8 месяцев назад

    how to get the c codes for this video please tell me

    • @CuriousScientist
      @CuriousScientist  8 месяцев назад

      It is on my Patreon page. Just read the description...

  • @zerotoinfinity3189
    @zerotoinfinity3189 8 месяцев назад

    what setting have you done for enter button? when i press enter button cursor goes at the end of text input area and nothing happens i have turn on page switching its working in software preview but not in hardware

    • @CuriousScientist
      @CuriousScientist  8 месяцев назад

      All settings are shown in the video, and in my article, please check it.

    • @zerotoinfinity3189
      @zerotoinfinity3189 8 месяцев назад

      @@CuriousScientist i am getting different hex data each time i enter same text how to debug this and how to convert that hex data in c characters please help very confuse here

    • @CuriousScientist
      @CuriousScientist  8 месяцев назад

      Follow my video exactly the way I show the things. It sounds like that some steps may be skipped.

  • @zerotoinfinity3189
    @zerotoinfinity3189 6 месяцев назад

    can you help please if we disable auto uploading for acsii text input but want to read using uart command how we can do that what is that command structure?

    • @CuriousScientist
      @CuriousScientist  6 месяцев назад

      Hi! As far as I remember, you just read the bytes from the corresponding VP address.

    • @zerotoinfinity3189
      @zerotoinfinity3189 6 месяцев назад

      I couldn’t find the correct command structure to send via uart using microcontroller to get data ap specific vp addresses

    • @CuriousScientist
      @CuriousScientist  6 месяцев назад

      It is in my video or in the well-written documentation of the display.

    • @zerotoinfinity3189
      @zerotoinfinity3189 6 месяцев назад

      @@CuriousScientist i figure it out its 0x5A 0xA5 (number of byte to send usually 3 one for 0x83 for read and two for vp address ) 0x83 0x20 0x00

    • @zerotoinfinity3189
      @zerotoinfinity3189 6 месяцев назад

      @@CuriousScientist Need your help on another topic if we have like a column where we want to show data from multiple sensors can we show data in scrolling manner user can scroll up and see data coming from microcontroller

  • @RameshYadav-zl7hh
    @RameshYadav-zl7hh 9 месяцев назад

    I have used same vp address in text display and ascii text input but after writing something data is not getting displayed on text display

    • @CuriousScientist
      @CuriousScientist  9 месяцев назад

      Did you also do the rest of the things exactly the same way?

    • @RameshYadav-zl7hh
      @RameshYadav-zl7hh 9 месяцев назад

      @@CuriousScientist yes It is working now, actually it was not showing on emulator but on display I am getting that text!!!!! Thank you 😊

    • @CuriousScientist
      @CuriousScientist  9 месяцев назад +1

      So you actually did not do the same as you never went past the emulator... the emulator is often full of bugs. But it's good to hear that the display finally works.

    • @RameshYadav-zl7hh
      @RameshYadav-zl7hh 9 месяцев назад

      @@CuriousScientist Yep Thankyou for the help!!!!

    • @CuriousScientist
      @CuriousScientist  9 месяцев назад

      My pleasure!

  • @surbhikathane
    @surbhikathane 4 месяца назад

    I am not able to recev the string as you do .
    i want to recv in esp32

    • @CuriousScientist
      @CuriousScientist  4 месяца назад

      Then you're doing something wrong.

    • @surbhikathane
      @surbhikathane 4 месяца назад

      @@CuriousScientist I have give OK button 00F1. and vp address for both ascii and text is 0x1000
      void read_from_vp1(unsigned int vp_addr, unsigned char data_len)
      {
      // Send read request command to LCD
      unsigned char send_data[7] = {0x5A, 0xA5, (data_len + 3), 0x83, ((vp_addr & 0xFF00) >> 8), (vp_addr & 0x00FF), (data_len)};
      uart_write_bytes(UART_PORT, (const char *)send_data, sizeof(send_data));
      // Wait for response
      uint8_t rx_buffer[128];
      int rx_length = uart_read_bytes(UART_PORT, rx_buffer, sizeof(rx_buffer), 100 / portTICK_PERIOD_MS); // Adjust timeout as needed

      if (rx_length >= 5 && rx_buffer[0] == 0x5A && rx_buffer[1] == 0xA5 && rx_buffer[3] == 0x83)
      {
      // Assuming the received data format is correct
      // You may need to adjust this based on the actual protocol
      unsigned char data_len = rx_buffer[2] - 3;
      unsigned char received_data[128];
      strncpy((char *)received_data, (char *)&rx_buffer[4], data_len);
      received_data[data_len] = '\0'; // Null-terminate the received data
      printf("Received data from VP 0x%x: %s
      ", vp_addr, received_data);
      }
      else
      {
      // Print debug information
      printf("Error: Invalid response
      ");
      printf("Received response length: %d
      ", rx_length);
      printf("Received response: ");
      for (int i = 0; i < rx_length; i++)
      {
      printf("%02x ", rx_buffer[i]);
      }
      printf("
      ");
      }
      }

    • @CuriousScientist
      @CuriousScientist  4 месяца назад

      And what do you expect me to do with this information?

    • @surbhikathane
      @surbhikathane 4 месяца назад

      i just want to know how to recv string data from display as u r recv the data .

    • @CuriousScientist
      @CuriousScientist  4 месяца назад

      It is literally in the video.

  • @dopichannel2646
    @dopichannel2646 11 месяцев назад

    invalid conversion from 'unsigned char*' to 'const char*' [-fpermissive]
    how to fix it?

    • @CuriousScientist
      @CuriousScientist  11 месяцев назад

      I don't know because you didn't tell which line throws the error. If you exactly copied my code, then this should not happen.

    • @dopichannel2646
      @dopichannel2646 11 месяцев назад

      @@CuriousScientist the code is error for line 88 and 93 " dwinSerial.write(strlen(textString) +4);
      dwinSerial.write(textString,strlen(textString));
      what should i do?

    • @CuriousScientist
      @CuriousScientist  11 месяцев назад

      You probably missed something from the code because those lines do not belong to those row numbers. I just double-checked it and was able to compile it without errors.

  • @RiddheshVeling03
    @RiddheshVeling03 12 дней назад

    Can you please make a tutorial for a password login interface. Entered password will be checked with existing password and if correct, user would be directed to new page else, a pop-up for 'invalid password'. Also add a functionality for changing the existing password.

  • @nelsongomez8547
    @nelsongomez8547 11 месяцев назад

    Hello fríend congrats for your videos, are very useful. Thanks
    Friend I've followed this video. When I'm testing the serial port sending a some charácter, I receive this value.
    2D 3E 55 FD FF FD 00
    This value is different with respect to your values.
    Are those values correct?
    My display model is DMG10600T101_A5WTC
    Can you help me?

    • @CuriousScientist
      @CuriousScientist  11 месяцев назад

      Hi! I don't know if your values are correct because I don't know what you did exactly. Just follow the video and first replicate what I did. If you get the same, then you successfully copied my demonstration.

    • @nelsongomez8547
      @nelsongomez8547 11 месяцев назад

      @@CuriousScientist Hello friend thanks for your quick response
      Friend I've followed your video again. Your demo work for me in the Dgus Software (Previews from first page) and also, I've transfered the DWIN_SET folder to screen and this works :)
      However, when I try to test the data through the serial port I don't receive any information.
      My display model is DMG10600T101_A5WTC.
      I think the problem are the wire connection, but I don't know exactly. If you can, I can send you some images
      Please, help me friend, I haven't been able to move forward

    • @CuriousScientist
      @CuriousScientist  11 месяцев назад

      I can not troubleshoot this without seeing the system. There are thousands of things that could be wrong. TX and RX are mixed up, wrong COM port, wrong command...etc. Check my other demos, maybe you'll find the solution. Also, read the manual of the display.

    • @nelsongomez8547
      @nelsongomez8547 11 месяцев назад

      ​@@CuriousScientist friend thanks, I understood, and you're right.
      Please can you share me a link, according to my problem?

    • @CuriousScientist
      @CuriousScientist  11 месяцев назад

      Just check my DWIN playlist.

  • @erikpratama7685
    @erikpratama7685 Год назад

    Can you share code arduino?

    • @CuriousScientist
      @CuriousScientist  Год назад +1

      It is available on my Patreon. Or if you don't want to support my efforts, just follow the video and copy the code line by line. It is freely available from the video.

    • @edgasszair
      @edgasszair Год назад +1

      The memset fonction is not shown

    • @CuriousScientist
      @CuriousScientist  Год назад +1

      Could you please tell the time code so I can see if it is necessary to have it?

    • @mohdusman9531
      @mohdusman9531 Год назад

      Marvelous video! My Dwin display is not transmitting data. I have checked using Coolterm software and other. Although, it is receiving data. Can you please help to confirm that my display is faulty?