RS485 hardware connection issues.

Thread Starter

Vihaan@123

Joined Oct 7, 2025
264
I have a problem with a hardware board where i do not receive the uart data but the board can transmit. The transceiver is SN65HVD08D, i have given 3.3V as supply to the transceiver, but the micro controller is 5V so the DE, UART Rx and Tx are all 5V from the microcontroller. i am testing using USB to RS485 converter connected to the PC. USB to RS485 Converter Module - leetechbd
1782880031717.png
 

Irving

Joined Jan 30, 2016
5,165
That's maybe because for most MCU a logic 1 is 0.7Vdd = 3.5v @ 5v, and your UART Rx output is not high enough. Try running the UART on 5v, or a 10k pullup resistor to 5v on the Rx pin might work.
 

Thread Starter

Vihaan@123

Joined Oct 7, 2025
264
That's maybe because for most MCU a logic 1 is 0.7Vdd = 3.5v @ 5v, and your UART Rx output is not high enough. Try running the UART on 5v, or a 10k pullup resistor to 5v on the Rx pin might work.
Changing the VCC from 3.3V to 5V on the RS485 transceiver SN65HVD08D is what you are recommending, am i correct?
 

Thread Starter

Vihaan@123

Joined Oct 7, 2025
264
I have changed from 3.3V to 5V i find some improvement in that the receive interrupt is triggered but data is always 0 even if i send any value from coolterm software. Below are the observations

1. The waveforms when i send the data from coolterm is as below from A to Ground, the waveform does not look good.
1782915713293.png

The waveform when i transmit from board to cool term is as below when i send 'A' continuously and received properly
1782915840135.png

Observation2: When i tried to send a character i also receive data at the same time
1782916005344.png
61 is what i send the letter a but at the same time i also receive 4F, if i send different characters, i receive different characters. i am flashing only the receive program with D set as 0.
1782916114101.png when i click something TX and RX glow at same time.
Observation: There is a blue led indicating RXD which always glows with full brightness, but TXD for transmission blinks when transmitted.
1782916412055.png
 

Irving

Joined Jan 30, 2016
5,165
That doesn't match the product datasheet.

To test & validate, Put a 10k pullup on Rx, and 10k pulldown on DE/REN. Remove R7/R8/C8/R4, and add 120ohm between A & B. R7/R8 just define bus state when all nodes are idling on larger systems, they aren't needed for testing. C8 is going to have an impact on received data - I've never seen that actually used on a RS485 bus, but if used (and not needed here) the capacitor is measured in pF not uF:

"AC Termination

AC termination is used to reduce the power consumption of idle links as well as to reduce ringing voltages. The negative effect though is a reduction in cable length and bit rate. A resistor and capacitor can be placed in series across the bus (between A and B) as shown in Figure 5. The Capacitor CT is selected by using the following formula:"
1782928496485.png
 

Irving

Joined Jan 30, 2016
5,165
Oh, when looking at differential signalling, measuring to ground is meaningless - use two probes on A & B then use 'scope math function to do A - B. to see actual bus voltage. To measure common mode voltage, split the termination resistor and measure from there to ground.
 
Top