I'm using ESP32-C3 as hardware and Arduino IDE as my software core.
I receive a data from MQTT server and want to send it to another board using serial port as a hex number. However, it gets sent over serial port as ASCII characters.
Here is the code
unsigned char messageTemp; //data received from MQTT server
unsigned char cups_qty; //data to be transferred to serial port
cups_qty = messageTemp;
Serial.write(cups_qty);
For example if I receive messageTemp = 2 and send it to variable cups_qty and then send cups_qty to serial via Serial.write(cups_qty);, I receive the equivalent character not number.
For example :
msg from MQTT >>> messageTemp = 2
cups_qty = messageTemp;
send over serial port >>> Serial.write(cups_qty);
What I see on serial RealTerm terminal
(Display As Ascii) >>> 2
(Display As Hex) >>> 32
(Display As int8) >>> 50
What I want to see on the terminal:
(Display As Ascii) >>> something unknown
(Display As Hex) >>> 02
(Display As int8) >>> 2
The confusing part is when I write something like Serial.write(2), it works just as expected.