I have a device that outputs four channels of 9-bit data. I'm feeding these four channels into the four serial inputs of a Mega2560. The problem is the output impedance of the device's serial channels is fairly high. This means that because the 8U2 idles at 5V on Pin 0 (RX), the low voltage level is approximately 3V; thus Pin 0 never sees the low parts of the serial data. Because the data is 9-bit I can't use the SoftwareSerial library to use a different pin without major changes to the library.
The obvious solutions to the problem are:
- Cut the trace between the 8U2 and Pin 0.
- Remove the isolation resistor network (RN4), making the 8U2 useless.
- Move the 8U2 Vcc from the 5V bus to the USB 5V line.
- Keep the 8U2 in reset with a jumper.
I'd prefer not to make any major changes to the board and I'd like to keep the ability to program the board using USB. So it looks like my two choices are moving the 8U2 power source or keeping the 8U2 in reset with a jumper on its ICSP header.
Finally, I get to my questions:
- Is there a solution I've missed?
- Are there any issues with moving the power source?
- Are there any issues with keeping the 8U2 in reset?