Digole 2.6" Serial LCD

@skradaroman, did you set the baud to 115200? What are you “printing” on the screen? There is a command that disables “live” display refresh so you can send all the draw commands and then refresh the screen. I have not yet tested this but it should speed up display time substantially.

Using I2C and SPI will help a bit but in my own experience, it comes down to the drawing operations on the onboard PIC. By carefully planning how you draw to the screen, it can be quite fast. If you share your code, I can give you some pointers. :wink:

@peekay123, yes the baud rate is set to 115200. I’m only printing a few lines of text but I think it happens line by line “live” just like you mentioned so it looks very slow. I’m guessing this way of printing text is all wrong :confused: Thanks for help.

  digole.setFont(51);
  digole.drawStr(0, 0, "");  //First line of text is cut off by the top edge of the screen without this. Why?
  digole.setColor(VGA_GREEN);
  digole.println("Indoor conditions:");
  digole.setColor(VGA_YELLOW);
  digole.drawStr(0, 1, "");digole.print("Temperature:");digole.print(tempF); digole.println("F");
  digole.drawStr(0, 2, "");digole.print("Humidity:");digole.print(humid_in);digole.println("%");
  digole.setColor(VGA_GREEN);
  digole.drawStr(0, 4, "");
  digole.println("Outdoor conditions:");
  digole.setColor(VGA_YELLOW);
  digole.drawStr(0, 5, "");digole.print("Temperature:");digole.print(temp_data);digole.println("F");
  digole.drawStr(0, 6, "");digole.print("Humidity:");digole.println(humidity);
  digole.setColor(VGA_GREEN);
  digole.drawStr(0, 7, "");digole.println(condition);
  digole.setColor(VGA_RED);
  digole.drawStr(0, 9, "");digole.println(message);

@skradaroman, I’m not sure why you are using digole.drawStr(0, 0, ""); type commands. Is this to set the cursor position? Your first line of text may be cut off because of this. To set the text cursor position, which takes the font size into account, you should use setPrintPos(x,y);.

Understanding the different commands and how they work can help minimize the number of commands sent to the display. For example, you can use drawStr(x,y, string) coupled with sprintf() to create a complete line of text/variables in the exact format you want and send it to the display in a single command. :wink:

1 Like