I need to connect a PC to my washing machine. The washing machine has a bank of pins labelled like this:
- 0v
- tx
- rx
- 5v
The microcontroller is an ATmega32L, which has specs for the serial connection as follows:
specs
The Universal Synchronous and Asynchronous serial Receiver and Transmitter (USART) is a
highly flexible serial communication device. The main features are:
• Full Duplex Operation (Independent Serial Receive and Transmit Registers)
• Asynchronous or Synchronous Operation
• Master or Slave Clocked Synchronous Operation
• High Resolution Baud Rate Generator
• Supports Serial Frames with 5, 6, 7, 8, or 9 Data Bits and 1 or 2 Stop Bits
• Odd or Even Parity Generation and Parity Check Supported by Hardware
• Data OverRun Detection
• Framing Error Detection
• Noise Filtering Includes False Start Bit Detection and Digital Low Pass Filter
• Three Separate Interrupts on TX Complete, TX Data Register Empty, and RX Complete
• Multi-processor Communication Mode
• Double Speed Asynchronous Communication Mode
My USB to TTL serial adapter is apparently based on a ch340 chip. It looks almost exactly like the pic I attached, except mine does not have a crystal on it because I think the chip has an embedded clock. The important thing is the pins match my adapter.
My knee-jerk thought was to connect it as follows:
adapter → washing machine PCB
gnd → 0v
rxd → tx
txd → rx
3v3 → (nothing)
5v → 5v ← bad idea?
(with s1 jumped to 5v on the adapter)
Someone told me I should not connect 5v to 5v. I was assuming one connection needed 5v and the other supplied it, but I was told they are both supplying 5v, but not perfectly 5v, so the difference will strain something and cause damage.
So how should I hook this up?
update (I’m stuffed?)
I heard washing machine manufacturers often sabotage the serial ports before shipping as an anti-repair tactic. I thought my old machine might pre-date that practice, but I might be wrong. I metered TX voltage against 0v using a crappy cheap DMM. Results:
0.01, 0.00, 0.01, 0.00, 0.01, 0.00, 0.01, 0.00, … etc, every second or so.
Looked encouraging, as if there is activity. Then I metered 0v against 5v:
0.01, 0.00, 0.01, 0.00, 0.01, 0.00, 0.01, 0.00, … etc, every second or so.
Yikes. I was expecting that to read a steady 5v. Due to bad wiring in the house, I think that is just noise on the ground wire. And apparently the serial port is dead.
I had the two 5v lines connected to each other for a while, so it’s possible I damaged it, if not the manufacturer.
