[Project&Inquiry] Framework 2-in-1

I’m planning to rework the Framework Laptop 13 into a 2-in-1 device for my undergrad engineering capstone project next year. Machining the parts and creating the device shouldn’t be too difficult, but the big issue is sourcing a panel. My current plan is to reach out to popular MPP display OEMs to see if they’d send me an eval board, but not sure how that will pan out. Anyone have experience sourcing displays? It seems especially the MPP ones are hard to come by, and I don’t want to strip one out of a device with proprietary UEFI/ACPI stuff and deal with all that, plus most seem to use SPI instead of the I2C mapped over the 13 mainboard’s eDP connector.

3 Likes

I am doing the same thing and I imagine you have seen my topic Connecting a Wacom I2C touchscreen to the Framework 13 motherboard (prototype). I can elaborate on why I ultimately chose the display I did so you can at least some some research time. For a DIY 2 in 1, there are 2 types of viable displays.

A usb drawing tablet is probably the simplest choice as it only needs 1 usb c cable to work and you do not need to interface with the eDP connector. The down side is that it will take up 1/4 of the IO and you would have to disassemble it to make it fit in the display. I was looking into the Asus ProArt Display PA169CDV before I decided that it was not the right option for me.

The other option is a display form a 2 in 1 laptop. This has the benefit of being able to interface with the eDP connector at the cost of additional work. As for as i know there are no 2 in 1 devices with stylus support that have a touch controller that connect over usb. I looked at displays primarily from Microsoft, Dell, and Lenovo laptops, as they all made a range of laptops with 4k displays with stylus support. I know that, despite using MPP, both the dell that i was looking at uses I2C for the touchscreen and older surface devices use I2C and newer ones uses “a rather special system”. Levovo devices also use I2C of course. In my research I never found a display that used SPI.

I ended up going with a display from a lenovo yoga 720-15ikb because I needed all 4 usb c ports on the motherboard, I already had the laptop, I can buy another off of ebay for the final device when i need (the dell display especially were very hard to come by for sale), and because i am already invested in the wacom AES ecosystem.

I think that a disassembled usb tablet may make the most sense for your project. First of all, if you do get a SPI display, i do not know of any easy way to get the OS to recognize it. The drivers designed for it will almost certainly not interact with a usb-spi bridge and there are no SPI exposed pins on the motherboard to connect it to. An I2C display will come with the same requirement of modifying the ACPI table to get it to work so, if that is a no go, i think a usb tablet is the only option remaining.

One thing you may be able to do is to disassemble the usb tablet and then disconnect its display from the controller pcb and then connect it to the eDP connector directly. This may then allow you to connect the tablets controller to one of the frameworks internal usb 2 ports (ether on the eDP connector [no idea if it works], webcam connector, or trackpad connector), allowing you too still use all 4 usb c ports on the motherboard. I was never able to find tear down photos of drawing tablets so I have no idea if the displays could be connected to the eDP connector and I have no idea if the controllers in the displays would work if only connected to usb 2 without a display signal, but it may be something to look into.

Whatever you do, keep posting updates as i would love to see what path you choose and how the project turns out!

1 Like

I had not actually seen that thread and am very pleased that some precedent exists for this. I agree I2C is the way to go given the I2C that’s there because I do plan to go down the eDP route given I’d like to produce a pretty usable “final product” and don’t want to lose ports.

RE: ACPI I was hoping that Framework had an EDK2 port somewhere so I could go that route for adding an I2C display via ACPI, but I see you have some of that in a DSDT patch. I’m more experienced in DTS than ACPI so I’m happy to see I’ll have something to start from.

RE: display choice, I totally agree. I in fact have a Surface myself with the “special system” you mention–as a matter of fact, it’s one of the newer ones with the ITHC. I did some research into that route, but it seems that the ITHC is just a PCH-exposed SPI controller that abstracts away some of the stupid pen stuff. Unless Framework mapped these pins to test pads and didn’t label them on the schematic, I think that that (and SPI in general as you also found) is a no-go.

I will do one of three things:

  1. I have emailed (with low expectations) Wacom, and will also contact other vendors to see if I can source an eval board or something the “proper” way
  2. I will try to disassemble and map the eDP stuff for a USB pen tablet of the right size
  3. I will try to find a specific non-SPI display (like the Dell and Lenovo ones you mentioned and used)

Luckily for me, I have access to material stock and machining power at school, so the chassis isn’t a big limiter–If no display exactly matches my proper size, I can machine a new frame etc.
Thank you for the help and I will assuredly keep this thread updated!

2 Likes

An interesting display choice seems to be one from HP Dragonfly Folio G3. It’s 13.5" 3:2 and should fit the Framework rather nicely. It seems to be have a Wacom AES digitizer. I cannot quite confirm that it is I2C, but it seems almost all HP touchscreens with Wacom AES are I2C, as per wacom-hid-descriptors.

HP offers several useful information sources about the laptops internals, including a Maintenance and Service Manual and an hour-long YouTube video with instructions on replacing parts and detailed shots of the internals.

From the video, I took the most relevant and detailed shots of the digitizer and display interfaces I could.

The display seems to have standard 30pin eDP interface (for the WUXGA, the OLED would presumably have 40pin):
edp_30pin

This is the touch controller board:
touch_board
touch_board_con

And this is the overall look at the display connections:

The digitizer board is HP PN N22944-001 and can be bought separately, tough the price is quite hefty.

Per the specs, there are several screen configurations:

  • 13.5" diagonal, 3:2 WUXGA+, 400 nits, BrightView Touch, Corning® Gorilla® Glass 7
  • 13.5" diagonal, 3:2 WUXGA+, 400 nits, Anti-Glare Touch, Corning® Gorilla® Glass 7 (HP PN N23302-001)
  • 13.5" diagonal, 3:2 WUXGA+ Sure View Reflect, 1000 nits, BrightView Touch, Corning® Gorilla® Glass 7
  • 13.5" diagonal, 3:2 3k x 2k, 400 nits, OLED, BrightView Touch, Corning® Gorilla® Glass 7

I am quite partial toward the matte one (it actually has a matte Gorilla glass finish, not just a matte screen protector slapped on a glossy glass). I have used similar screens on other HP models and they are simply gorgeous.

The touchscreen seems to be readily available from Ebay (1, 2). Based on the photos, it seems to even include the digitized board.

The WUXGA panel is Chi Mei CMN13C0 according to Notebookcheck. The digitizer assembly is definitely custom made for HP.

Do they also have that in non touch?

The Folio is a convertible, so no non-touch options. But regular Elite Dragonfly G4 is also 13.5" 3:2 and has non-touch panels.

G4: 34.3 cm (13.5") diagonal, 3Kx2K, OLED, IPS BrightView, micro-edge, 400 nits, DCI-P3 100% eDP 1.4+PSR, Ambient Light Sensor + Ambient Color Sensor (3000 x 2000)

There is also a service manual available for the G4. According to it, the OLED panel is HP PN N51334-001. Although something seems fishy here. Both the spec sheet and the service manual claim that the OLED screen is non-touch, some sellers of the part claim that it is touch. Not sure what to make of that.

But then again, you could just have the touch option and… not use it?

Funnily enough, the Dragonly G3 has only touch option for OLED and the G4 has only non-touch OLED. Whatever.

Sellers lying/being wrong about what they sell?! Who could have seen that coming XD.

Unfortunately an oled without a datasheet is pretty much useless at this point since the pinout is basically a mystery then, especially since in this case there are draughtboards and weird hp cables involved.

But good to know there is at least stuff with right-ish physical sizes around.

I would presume that the eDP pinouts on the panel side are quite standardized (at least for IPS panels, not sure if that applies to OLED too), you’d just need to use the Framework display cable instead of the HP cable. The daughterboards are AFIK only present on the Folio and I’d guess that the regular Dragonfly has just a regular eDP cable but I have not seen the top part disassembled so I cannot be sure. Even the touch panel I posted about seems to have regular run-of-the-mill eDP connector, which for some reason is then passed through the “display hub” board but I think this is just for cable routing reasons and the eDP signals are really just passed through to the motherboard.

After all, if I take the example of the Chi Mei CMN13C0 IPS panel, that is used by multiple vendors including Lenovo so it really cannot be HP specific, only the digitizer part is HP specific, and that has a separate connection (it seems to be a separate layer bonded on top of the existing OEM panel).

Not sure how much of this applies to OLED screens, never looked into those.

But there are definitely no guarantnees any combination would work.

For lcds it’s kind of standardized or at least there are d-facto standards. Oled on the other hand is full wild west.

Blew up part of my t480s finding that out the hard way XD

1 Like

Managed to confirm that the Folio digitizer is indeed I2C.

I found a record for this system on linux-hardware.org and in the input device listing you can see the following:

I: Bus=0018 Vendor=056a Product=4a13 Version=0100
N: Name=“Wacom HID 4A13 Pen”
P: Phys=i2c-WACF4234:00
S: Sysfs=/devices/pci0000:00/0000:00:15.1 /i2c_designware.3/i2c-3/i2c-WACF4234:00/0018:056A:4A13.0002/ input/input15
U: Uniq=
H: Handlers=mouse2 event6
B: PROP=2
B: EV=1b
B: KEY=1c03 0 0 0 0 0
B: ABS=1000d000003
B: MSC=21

I: Bus=0018 Vendor=056a Product=4a13 Version=0100
N: Name=“Wacom HID 4A13 Finger”
P: Phys=i2c-WACF4234:00
S: Sysfs=/devices/pci0000:00/0000:00:15.1/i2c_designware.3/i2c-3/i2c-WACF4234:00/0018:056A:4A13.0002/input/input16
U: Uniq=
H: Handlers=mouse3 event7
B: PROP=2
B: EV=1b
B: KEY=400 0 0 0 0 0
B: ABS=260800000000003
B: MSC=20

While we’re at it, the Spectre x360 14-ea also has I2C digitizer. It’s an ELAN-branded one and probably uses MPP instead of Wacom AES.

The touchscreen seems to be readily available from Ebay (1, 2). Based on the photos, it seems to even include the digitized board.

This seller is cheapest and they confirmed touch control board is included as shown in photo.

I am tempted to just order it and start experimenting. But as @djangorb mentioned in their thread, it may be hard to reverse engineer it without having access to the corresponding laptop, which is much more expensive. And getting to the touch control board pins requires quite extensive disassembly with undoing glue etc., which makes it rather hard to resell the laptop afterwards.

But maybe with a bit of luck it could be possible to figure out the pinout just from the board. On some photos it seems that some of the Wacom boards have labeled I2C test points. And the interface seems to be just 5 pins so there should not be that many options.

In order to experiment with the I2C without messing around with ACPI, one could look to the Wac0m rip0ff project as a starting point. Or just implement very simplified userspace code to talk to the I2C just to see if it responds. As a first pass, one might even just poll it and not worry about interrupts.