This is a placeholder topic for “TTL UART to RS485 Converter Module” comments.
Going from TTL to RS485 is made simple by this prototyping friendly module. On one side of the board are the TTL IOs, and on the other are the RS485. At the core is a MAX485 which is powered by 5V.Read more
I would like to know a suitable power supply for the TTL UART to RS485 Converter Module
Any 5V supply should work, most commonly these would be powered from your micro-controller.
I hope this helps.
Thanks for the relpy
Could you make a recommendation of component products to power the unit
Anyone manage to dig up a schematic for this breakout board?
Here’s the schematic for you. I’ll add it to the site too. It’s worth noting in the datasheet this is the MAX485 version of this converter.
That’s fantastic, thanks @Bryce. Answers a lot of questions! So many unnecessary pull-ups…
So so many if you can solder on SMD sized components you could remove or replace them, but you’d also be at risk of damaging the board. Have a Merry Christmas!
Somebody thinks they are necessary but I would question the 20k ones. I think that the MAX485 are OPamp inputs and outputs. Pull ups would only be required in an open collector situation. There are none shown on the application notes for this IC. At 20k probably not doing any harm though.
R7 IS required though. Purely to terminate the cabled and prevent reflections. ONLY AT THE ENDS of the cable run. If operating simplex mode fitted at the RECEIVER end. Half Duplex mode both ends. Any intermediate MAX485s (up to a total 32) hanging off the cable remain unterminated.
R7 IS THE MOST PROBLEMATIC. It should either not be there, or should be jumper selectable. Its placement spoils an otherwise very functional MAX485 board. The RS-485 spec says that 120R should terminate the cable run, NOT be on every node attached to the cable run. Its frustrating us DIY/hobbyists are offered such poor hardware options.
Agreed . That circuit does not make it very clear what the function of R7 is. Sort of implies it should be on every unit which is not the case. It is a cable terminating resistor and should have been labeled as such, something like Rterm or similar. The application notes for the MAX485 are a lot clearer.
There are 3 usual scenarios.
One way transmission where the terminator is fitted to the far end of the TX data line.
Half duplex where a terminator is fitted to BOTH ends of the Data cable.
Full duplex where the TX Data and RX data are separated and a terminator is fitted to the far ends of the TX Data line. The master TX is connected to all the slave RXs and the last one terminated and all the slave TXs connected to the master RX and terminated at the master RX point. This is a 6 wire system.
The MAX485 is designed to operate into a 54ºΩ (I think) load minimum comprising 2 off 120Ω terminating resistors and 32 MAX485 chips all in parallel. One can see that if a terminator was fitted to every slave the master (or any slave for that matter) would be severely overloaded and would probably give up.
Agreed it could be a bit inconvenient for the hobbyist to fit this resistor and to move it down the line if a system is added to but it has to be done. It can’t be fitted to a converter in case it is left in circuit if the system is extended.
Most systems I have been involved in have had this converter as part of a dedicated board. 2 connectors are provided, RS485 IN and RS 485 OUT which are simply connected together pin for pin. It becomes a simple operation then to fit a resistor across the data connections to the RS485 OUT connector on the last board. I have not looked but maybe some of these little converter boards floating around have these IN and OUT connectors in which case fitting a terminating resistor should not be too much of a problem.
Just found a couple of clearer views of the converter referred to at the start of this post.
I see what you mean. R7 is fitted what looks like pretty permanently. This to me is a gross error as this unit as it stands should only be used at the Master and far end Slave. The resistor needs to be removed for intermediate slaves. As it stands it is only useful for a 1 master/1 slave system.
To me making a unit like that turns it into a piece of junk unless there is a solder link not visible on the other side of the board to facilitate removal/insertion of this resistor. Perhaps Core can have a physical look at one and advise. If such a link is present please remove the word “junk” above.
Add on to 2 previous posts.
Looking closer at this board could someone tell me what R5 and R6 are for please.
I could think of a couple of reasons not to have them.
Firstly the Gnd and Vcc wires are only needed if there is a requirement to power these boards from a central source (the master position). If the slaves are locally powered they will not be needed. In my previous dealings with this sort of thing boards were locally powered so only a single pair connection needed.
If say you had 20 of these units in a string the effective value would be 1kΩ each as all of them would be in parallel. This would be a pretty low resistance to Gnd and VCC and would put a permanent 5V or a data “0” or “1” on the data pair which I think would be undesirable. The MAX485 chips would have to overcome this to produce any meaningful data which I doubt they could do.
Secondly the Data line is now unbalanced and you may as well just have a ground and signal wire (RS232). The advantages of using a balanced line (much longer cable runs) are lost. Much like unbalanced and balanced audio. There is a very good reason Telstra don’t allow unauthorised DC voltages on their phone lines.
I would like someone in Core or the manufacturers to enlighten the Forum re the reason for these resistors and if R7 is a permanent fixture with no way to easily disconnect it Why.
Maybe it is an experimental unit only and not meant to be in the real world so they make sure the cable is terminated and only meant to be used in a 2 unit system in their current form. I may be missing something but I can’t see any reason for R5 and R6. I think there are more reasons for not having them.
Your extra input is very helpful. I now agree that both R5 and R6 are also completely extraneous and shouldn’t be there as well as R7, particularly if you’re aiming for a multi-node network. Both the official Arduino MKR485 shield and the excellent Waveshare Raspberry Pi 485 shield don’t have those pull-up resistors and make the 120R line termination resistor switchable.
All this board needed to be was a simple MAX485 breakout. Altronics supply the MAX485 IC itself which is the obvious alternative. As you said, this board is only suitable for either a simple point-to-point system, or during development.
It should be said that its not that hard to unsolder surface-mount components, so its fixable to a degree, but of course it shouldn’t require a soldering iron to make a purchased product fit for its own purpose.
I would think that green screw terminal connects to the Data line and would be a convenient point for a terminating resistor without the need for soldering. I am not familiar with Arduino or Pi specific boards and possibly will never have reason to be and agree this would be a very useful board if all 3 resistors were removed. As you say not hard to do.
As you say the board itself without these resistors can be very useful and they are not hard to remove. I hereby remove the word “junk” from above post and replace with “disappointing” as the manufacturers could have easily done better at no or little extra cost.
We know what R7 does and having it fitted or not is probably arguable but hopefully someone at Core may come up with some reasoning behind R5 and R6 inclusion. Exactly what reason completely escapes me at the moment so I await a response from Core Support.
I agree with “disappointing”, however I doubt that Core Electronics can answer our questions re all those pullups since this is such a generic board that is available so widely.
I like your idea of green screw terminals. If this had screw terminals for A and B input at one end, and screw terminals for A and B output at the other end (where you could either attach the next cable segment or a 120R resistor), along with the RO/RE/DE/DI pin headers, and none of the pull-up resistors, this cheap little board would be incredibly versatile.
I only mentioned the Arduino and Raspberry shields because they are particularly well designed; you don’t actually need to use either platform to make use of the shields. The Arduino one is very expensive for what it is, while the WaveShare is very good value for dual industrial-strength 485 drivers and shows how it can be done.
As a general observation, I feel that RS-485 is such an old technology (it was my bread and butter in the 1980’s) that no current manufacturer or retailer cares too much about evolving it, but with the growth of the Internet of Things and home automation and sensor networks, a new generation has rediscovered it. Especially as the crappiness of WiFi becomes self-evident. Hopefully better generic implementations of an RS-485 interface become available in time.
Agree. I am not holding my breath. Nor would I hold Core support team up for criticism re this. There is probably a reason but I don’t think there is much chance of finding it.
Had a quick look at Core’s store and there is another unit using these resistor connections to the RS485 line. It is the Multi Converter SKU:‘TEL0070’. I looked through all the blurb I could find and there seems to be no mention of why they are there or what they are doing. I still think doing this unbalances the line and removes any advantages you have by using a balanced system. MAX485 application notes have no mention of this.
An interesting device would be an Industrial USB - RS485 Converter ‘SKU: CEO7325’. RS485 transmission distance quoted as 1200 metres with a max drop nodes as the usual 32. No mention of terminations but if they are quoting 32 nodes they must be external or switchable surely. Might be in included paper work if there is any. Could be handy if a situation arose where a USB connection is required at the other side of the house or shed etc.
So, if I want to use this board to connect an Arduino to a RS485 to Ethernet converter, what is the baud rate I need to chose to talk to this board?
Since this board is only taking a TTL signal and shifting it to RS485 levels, the baud rate is decided entirely by the device at the end. Is it a passive or active RS485 to Ethernet converter? i.e. is it just connecting RS485 to the twisted pairs in a CAT5/6 cable, or is it actually sending info over TCP or something? If it’s the former, then you want the baudrate of the device at the other end of the CAT5/6 cable. If it’s the latter, then the RS485 to Ethernet converter will likely have a set of baud rates it prefers.
Out of interest, what’s the end goal of your system? Could you just use an Ethernet Shield, or just run your RS485 over twisted pair straight out of this converter?
NOT coax. RS485 is balanced and coax is unbalanced. If interference is a potential problem by all means use shielded twisted pair (individual pairs shielded is best) making sure the shield is only grounded at one end.