737 FMC CDU – Interfacing X-Plane to a Raspberry Pi
To connect the 737 FMC CDU PCB board to my X-Plane flight simulator, I used a Raspberry Pi 2. Almost any Pi model will do, provided it has the full 40-pin GPIO connector (i.e. not the early model A and B), networking, and video output to connect to the 5″ display.
The Pi talks to the FMC CDU PCB I made earlier using GPIOs. I needed 9 (cols) + 8 (rows) +  5 (LEDs) GPIOs which came up to a total of 22. Many of the GPIO pins on the Raspberry Pi serve dual-purposes, and so you must make sure to:
- not enable SPI
 - not enable I2C
 - not enable TTL Serial Port
 - not enable PWM
 
A freshly installed Raspbian usually comes with these features disabled.
For ease of wiring I bought a Female-Female Jumper Cable strip and just tore out how many wires I needed.
I also printed a bracket so I could mount the Raspberry Pi on the underside of the FMC CDU PCB using the existing bolts.
The first cable connects to “P1 – Cols” and was wired as follows:
| 
 Colour 
 | 
 P1 – Cols 
 | 
 Raspberry Pi (physical/wiringPi/BCM) 
 | 
| 
 Black 
 | 
 1 
 | 
 8 15 14 
 | 
| 
 White 
 | 
 2 
 | 
 10 16 15 
 | 
| 
 Gray 
 | 
 3 
 | 
 12 1 18 
 | 
| 
 Purple 
 | 
 4 
 | 
 16 4 23 
 | 
| 
 Blue 
 | 
 5 
 | 
 18 5 24 
 | 
| 
 Green 
 | 
 6 
 | 
 22 6 25 
 | 
| 
 Yellow 
 | 
 7 
 | 
 24 10 8 
 | 
| 
 Orange 
 | 
 8 
 | 
 26 11 7 
 | 
| 
 Red 
 | 
 9 
 | 
 36 27 16 
 | 
| 
 Not connected 
 | 
 10 
 | 
 n/a 
 | 
The second cable is connected to “P2 – Rows” is wired as below:
| 
 Colour 
 | 
 P2 – Rows 
 | 
 Raspberry Pi (physical/wiringPi/BCM) 
 | 
| 
 Gray 
 | 
 1 
 | 
 40 29 21 
 | 
| 
 Purple 
 | 
 2 
 | 
 3 8 2 
 | 
| 
 Blue 
 | 
 3 
 | 
 5 9 3 
 | 
| 
 Green 
 | 
 4 
 | 
 7 7 4 
 | 
| 
 Yellow 
 | 
 5 
 | 
 11 0 17 
 | 
| 
 Orange 
 | 
 6 
 | 
 13 2 27 
 | 
| 
 Red 
 | 
 7 
 | 
 15 3 22 
 | 
| 
 Brown 
 | 
 8 
 | 
 19 12 10 
 | 
The third cable is for the “P3 – LEDs” and is wired as below:
| 
 Colour 
 | 
 P3 – LEDs 
 | 
 Raspberry Pi (physical/wiringPi/BCM) 
 | 
| 
 White 
 | 
 1 (VIN) 
 | 
 4 (5V) 
 | 
| 
 Black 
 | 
 2 (GND) 
 | 
 6 (GND) 
 | 
| 
 Brown 
 | 
 3 (EXEC) 
 | 
 21 13 9 
 | 
| 
 Red 
 | 
 4 (MSG) 
 | 
 23 14 11 
 | 
| 
 Orange 
 | 
 5 (DSPY) 
 | 
 29 21 5 
 | 
| 
 Yellow 
 | 
 6 (OFST) 
 | 
 31 22 6 
 | 
| 
 Green 
 | 
 N7 (FAIL) 
 | 
 33 23 13 
 | 
| 
 N/A 
 | 
 8 (GPIOA) 
 | 
 N/A 
 | 
| 
 N/A 
 | 
 9 (GPIOB) 
 | 
 N/A 
 | 
Here are some photos of the wiring connections on the FMC CDU end:
Update
I’ve done some work on the software to interface the display and also keypad to X-Plane.
- Source code is at to https://github.com/dotsha747/Pi-XPlane-FMC-CDU
 - There’s now a repository with prepackage binaries to make installation easier. Instructions on setting up a Pi can be found here: https://blog.shahada.abubakar.net/?p=8326
 - There’s a FAQ here https://blog.shahada.abubakar.net/?p=8211
 
Originally created with EverNote at 20170602T112050Z







