Thermal Printer not printing text in english

Hi, I am using thermal printer model: QR204 with arduino uno.
When I send print command to print some text in english. the printed output is in Chinese.
I have attached the code and the printed paper.

#include <SoftwareSerial.h>

#define TX_PIN 5
#define RX_PIN 6

SoftwareSerial mySerial(RX_PIN, TX_PIN);

void setup() {
  mySerial.begin(9600);  
void loop() {
  // Test English printing
  mySerial.println("Hello, World! This should print in English.");
  delay(2000); // Wait before printing again
}


read manual, change code page.

1 Like

There was no manual in the package

There is a chance that it works like other thermal printers from better suppliers:

1 Like

I tried this manual however the result is the same.
Please can you suggest a better thermal printer which can be connected to arduino and write english characters

well google is your friend

https://www.google.com/search?as_q=thermal+printer+change+characterset+from+chinese+to+latin+characters

you can try Cancel chinese mode 0x1C + 0x2E Some cheap aliexpress BT printers are default in Chinese mode, characters > 127

connecting to arduino can be done with all printers that have a serial interface.
If the electrical specification is RS232 or RS422 or RS485 you just insert a interface.

You should not buy from Aliexpress or banggood or amazon
because these shops do not aalways support with a datasheet and a usermanual.

So whatever shop you find check if the shop or the manufacturer provides the user-manual really download the user-manual and read it before buying.

1 Like

Hi, I wans trying to write the new code but just cant figur out how to write it.Please if you can send the edited snipt of the code.
thank you in advance

Why did you pick "great programmer" for your username?

3 Likes

You are asking for something that requires having a user-manual
but you wrote

If you don't have a user-manual for your printer.
You could give the code of a different printer a try it it might work with your printer

You have already been given a link to such another code.

So you yourself should take the effort to test this code with your printer.
The main thing how this forum works is:
user males an own attempt and asks questions.

This own attempt must go beyond simply writing

You should post your complete sketch as a code-section and post a description of what your code is doing and what reactions you get from your thermal printer.

1 Like

Hi, hope you all are doing well. I found the solution which is theat the thermal printer is connected inversly ( pritner RX to Arduino TX , and Printer TX to arduino RX). The wring was correct however in the code it was not mentioned.According to SoftwareSerial Liberary when the connection is invers the pin defination should be as follows
SoftwareSerial mySerial(RX_PIN, TX_PIN, true);

insted of

SoftwareSerial mySerial(RX_PIN, TX_PIN);

here is the final solution.

thank you for your support
Best Regards,
Waleed Tariq

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.