dgrubb
Posts: 8
Joined: Wed Mar 02, 2016 5:25 pm

CM3 -> official touchscreen, electrical considerations?

Sun Aug 12, 2018 3:19 pm

A few months ago I prototyped a PCB for housing a Compute Module 3 for a customer project. It was a pretty simple two-layer board which uses the official Raspberry Pi Foundation touchscreen as a display. After a successful pilot with the end customer we contracted a firm to produce a more professional four-layer board for large scale production.

Unfortunately, with the first few samples of the new board none work with the touchscreen. We've verified that the trace routing is the same and that the touchscreen driver board is receiving power. The design firm have verified that there is an initial burst of activity on the I2C bus but don't know what they should be expecting to see so don't know if the driver board is responding correctly (or at all?).

On the CM3 side the rpi_ft5406 driver is never loaded and if I modprobe it manually the driver loads but the touchscreen remains inert. There are no references to "ft" in dmesg. The dt-blob.bin is use is the "Display Only" variant taken from: https://www.raspberrypi.org/documentati ... display.md OS image is Raspbian Stretch Lite.

The PCB doesn't include any pullup resistors as the CMIO instructions don't include any. I couldn't find any in the CM3 schematics, are there a a pair somewhere in the touchscreen driver board? Should we have added some?

The only connection in between the CM3 and the touchscreen is the bundled flex connector and about 4cm of PCB trace. Should we have resistors in serial?

Are there other electrical considerations we should be thinking about? Is there documentation somewhere which describes what the initial negotiation with the touchscreen should look like? Any comments would be greatly appreciated.

Thanks very much,
Dave.

P.S., I've swapped out multiple touchscreens, connectors and CM3s. Each configuration works fine with the prototype board, but not the new one. I've also run continuity checks from the FPC connector at the touchscreen end to the relevant pins on the CM3's SO-DIMM connector to rule out things like flaky cabling or soldering. I've also tried with several of the new PCBs so can probably rule out a faulty individual.

aBUGSworstnightmare
Posts: 961
Joined: Tue Jun 30, 2015 1:35 pm

Re: CM3 -> official touchscreen, electrical considerations?

Sun Aug 12, 2018 6:46 pm

I2C requires pullups! If your are in doubts have a look it's specification.

Add pullups and your Touch should work as expected!

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5671
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: CM3 -> official touchscreen, electrical considerations?

Sun Aug 12, 2018 7:29 pm

The CMIO schematics include pullups. See R13/14 and R16/17 on page 3 of https://www.raspberrypi.org/documentati ... IO_3p0.pdf.
CD[0|1]_[SDA|SCL] are shared between the camera and display connectors, although are shown against the camera connector. That may be why you thought you could omit them.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
Please don't send PMs asking for support - use the forum.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

dgrubb
Posts: 8
Joined: Wed Mar 02, 2016 5:25 pm

Re: CM3 -> official touchscreen, electrical considerations?

Sun Aug 12, 2018 7:37 pm

Yes, that makes a great deal of sense! Thanks for clarifying.

EDIT: Bodged in a few pullup resistors and the screen now works. I couldn't possibly hazard a guess as to why all the earlier PCBs worked without!

Return to “Compute Module”

Who is online

Users browsing this forum: No registered users and 1 guest