ESP8266 MODBUS RTU to Sunsynk (Deye) Inverter

Ok, re your code at post #12, move the printing of PVresult outside the if statement so we can see what result code is being returned by the modbus library. (See post #5 as it was suggested there, and again in post #16)

I'm guessing slightly here, but if you were to do a:

PVresult = node.readHoldingRegisters( 79, 1);

then what is the value of PVresult? Is it 0 (= success)? If it is, then what value is returned by getResponseBuffer(0)?

I'm not familiar with your ESP8266, but is the serial port that is connected to the TX and RX pins also the serial port that is connected to the USB serial interface? If it is, then it is very likely that those squares are the binary modbus data bytes that are being sent to the RS485 module. What you describe is also seen on an Arduino UNO when the TX and RX pins are used for modbus comms, as the single hardware serial port is being used for both modbus comms and debug printing.