Log My handheld PC projects

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
Are you sure those HDMI monitors don't use eDP internally? For the panel itself (not the "display", which includes the controller board), it's either eDP or LVDS, and my impression is that LVDS is so old that it's essentially not used any longer. The HDMI tends to be handled by a controller board that converts that HDMI signal to eDP, while (at least on paper) you should be able to connect any eDP source to any eDP target with just a simple cable, no controller board needed (though you'll lose any OSD functionality through this, of course - just like a laptop).

Edit: ah, I forgot, if the panels are made for mobile use they might also be MIPI DSI. If the monitor you ordered is the 8.9" one you mentioned above, that sadly looks like it's DSI and not eDP :( And all I can find when searching for eDP/DP to MIPI DIS is controller ICs, no actual converter boards. That sucks.

(Oh, and that board you linked is USB-C, no? So it's likely DP alt mode-to-eDP?)
Here's the exact panel I bought, I went with a 7" 1200p display and it uses a 4-lane MIPI DSI controller. eDP panels are typically at least 10 inches, more for laptop than mobile use. So like you I've had trouble searching for eDP to MIPI controllers.

The smaller board closer to the panel has the 40-pin MIPI connector but it's not as straightfoward as using a cable that with eDP at the other end. As you said, it requires a board with the controller to actually convert the signal that supports this model display.
 

Valantar

Shrink Ray Wielder
Jan 20, 2018
2,201
2,225
Here's the exact panel I bought, I went with a 7" 1200p display and it uses a 4-lane MIPI DSI controller. eDP panels are typically at least 10 inches, more for laptop than mobile use. So like you I've had trouble searching for eDP to MIPI controllers.

The smaller board closer to the panel has the 40-pin MIPI connector but it's not as straightfoward as using a cable that with eDP at the other end. As you said, it requires a board with the controller to actually convert the signal that supports this model display.
Yeah, that's too bad. I guess DSI is a lower power standard, but I still think it's weird that tablets don't just use eDP. Though I guess they're still all in the "so small every connector is custom" category, which seems to be DSI's forte. Too bad, really, could have simplified things for you quite a bit.

Edit: According to Panelook.com (which doesn't have every LCD in existence listed, but a lot) there are a few options for eDP panels in the 7-9" size range, but not many. My favourites are two Panasonic panels, the VVX09F035M10 and VVX09F035M20. Both are 1920x1200, 16:10, 8.9", IPS, rated at 350 nits and 800:1 contrast. From the specs I can't even tell the difference between the two, both can ber found (always including an unnecessary controller board from what I could see) on Ebay for $100 if you ever get desperate. There's also a 7" 800p CPT CLAA070WB01, but I can't find that anywhere, as well as two LG panels (LD083WU1-SPA1 and LD083WU1-SPA3) that are equally elusive. From the looks of things, all of these panels launched around ~2013-14, so most likely the tablet industry moved entirely to DSI after that.
 
Last edited:
  • Like
Reactions: NinoPecorino

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
I might keep those two 8.9" Panasonic panels in mind for a future project, even though they really push the limits of "portable" and "handheld" when you add controls on the sides. The OneXplayer screen is already large for a handheld at 8.4". And the Linx vision tablet is where it gets too big for me. Since I already ordered a 7" panel I will be sticking with that. Best thing I could say is that the controller boards are slim, helped by using a mini-HDMI connector instead of regular HDMI.

Also, it's still a higher resolution than the Steam Deck 800p display. I have the option to have very high pixel detail on less demanding games or scale down the resolution for the more demanding ones.
 

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
I got my USB-C PD board and trying to figure it out. It didn't come with instructions and the ones in the auction listing weren't so clear and mostly referred to a two-button board, but mine only came with one button.

However I am hoping it's just that I am connecting things backwards. The USB-C male end was plugged into one of the ports of the motherboard but it won't power on or show standby lights, even though the status LEDs of the PD board did turn on and showed me what voltages it was supporting.

Then I figured that maybe the USB end of the PD board should connect to the power bank source, not the device it's powering. Going to re-connect and solder some wires to try that out.
 

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
My understanding is that this is a board that gets increased voltage out of a USB-C source, and not one that can convince a USB-C sink to accept an increased voltage. For that, you might want to use something like this: https://www.aliexpress.com/item/1005001565854695.html

Yesterday I bought this USB-PD charger module from Amazon, as it was cheap and could arrive fast. It takes DC as input for USB power output. Hopefully it will work as expected.

The product you linked to (with the DC barrel plug) might be useful as well. Though it also depends on how it boosts voltages, like if it can boost a 7.5V or 12V power source to 20V if needed.
 
Last edited:
  • Like
Reactions: Valantar

Valantar

Shrink Ray Wielder
Jan 20, 2018
2,201
2,225
Yesterday I bought this USB-PD charger module from Amazon, as it was cheap and could arrive fast. It takes DC as input for USB power output. Hopefully it will work as expected.

The product you linked to (with the DC barrel plug) might be useful as well. Though it also depends on how it boosts voltages, like if it can boost a 7.5V or 12V power source to 20V if needed.
That looks like it should do the job nicely - hope you don't have trouble fitting it! One thing worth noting is that compact, cheap buck converters like that can often introduce quite a bit of switching noise. I doubt that would be a problem, given that the motherboard will have its own filtering on its DC inputs, but it's something to be slightly wary of. If you have any way of accessing an oscilloscope it might be worth having that looked at. I would be surprised if it caused any problems though - for that to happen, it would need to be pretty bad.
 

Arya

Minimal Tinkerer
New User
Aug 9, 2022
3
3
@Arya are you the same Arya in the Framework forums? Spotted your name while I was looking at this: Input connector shim - for power switch, USB 2.0 and LEDs

That would be great to have for my build for the Teensy microcontroller to handle inputs, while keeping another C port free.
Sure am! ^_^ I think someone mentioned this build somewhere, that's how I found this thread! "How to power a Mainboard from an arbitrary power source" is a task I'm exploring right now. Glad to hear the shim can help you - this is exactly the kind of usecase it's designed for =) Feel free to visit my store for one, or build one yourself using the files provided!
 

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
I might have to go with using the standard laptop battery if this custom power setup doesn't work out. In the meantime, I've started using the Teensy to handle controller input. Thanks to Teensy XInput mode, I was able to get the microcontroller detected as a Xbox gamepad, which is more compatible with games than the deprecated Direct Input which is the default USB controller mode that's usually found with Arduino and Teensy boards.

I also saved a lot of time setting it up since there's already a program included that maps all the joysticks and buttons to the Teensy inputs. With all the inputs having been programmed, I still have to try out all the physical connections. I'm only starting to test the D-pad and ABXY buttons for games which work pretty well.

With the microcontroller in XInput mode, it unfortunately can't be switched to keyboard and mouse input, or some combination thereof. To work around this I need ANOTHER microcontroller, like the Digispark. It's even smaller than the Teensy but still versatile enough to make a very small programmable keyboard including custom macros. This will be used for common keypresses like Esc, Del, Win/Super and whatever other shortcuts I could think of. Combined, the computer would detect the gamepad and keyboard as two separate USB devices.
 

NinoPecorino

Tweezer Squeezer
Platinum Supporter
Nov 24, 2017
505
515
I might have to go with using the standard laptop battery if this custom power setup doesn't work out. In the meantime, I've started using the Teensy to handle controller input. Thanks to Teensy XInput mode, I was able to get the microcontroller detected as a Xbox gamepad, which is more compatible with games than the deprecated Direct Input which is the default USB controller mode that's usually found with Arduino and Teensy boards.

I also saved a lot of time setting it up since there's already a program included that maps all the joysticks and buttons to the Teensy inputs. With all the inputs having been programmed, I still have to try out all the physical connections. I'm only starting to test the D-pad and ABXY buttons for games which work pretty well.

With the microcontroller in XInput mode, it unfortunately can't be switched to keyboard and mouse input, or some combination thereof. To work around this I need ANOTHER microcontroller, like the Digispark. It's even smaller than the Teensy but still versatile enough to make a very small programmable keyboard including custom macros. This will be used for common keypresses like Esc, Del, Win/Super and whatever other shortcuts I could think of. Combined, the computer would detect the gamepad and keyboard as two separate USB devices.
does this introduce any noticeable latency?
 

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
does this introduce any noticeable latency?
I really haven't noticed any latency, but I'm only trying it with games that support those limited set of buttons, like Sonic Mania and Mighty Switch Force.

Also, I haven't noticed any input bouncing, because sometimes outputs can be trigged twice with some button presses. Maybe this sample program I'm using already includes some sort of software debounce, but if I start seeing problems I'm going to add a debounce library for it.

The "cheapest" way to debounce is just to poll all inputs once every 50ms or so, but doing it this way introduces lag if it just finished polling before a button press. It's better to attach bounce states for each button individually.
 
  • Like
Reactions: NinoPecorino

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
The display panels and boards came in a small styrofoam box and nothing else. The display is USB-C powered but requires a separate mini HDMI cable for video output.





I was confused why it wouldn't power on directly from a USB-C port on the motherboard, but turns out this is just a physical and not a electrical spec for the port, and works as a "dummy" USB power source. Uses only 5V so I decided to power it from a USB 2.0 hub and then connect a micro to C adapter and it powers on.



I created a 3D printed frame just to test dimensions and fitting for this panel. I'm not sure yet how I will affix the panel. Whether it will be glued/taped to be flush with the case surface, or if I will add a bit of extra bezel height to surround the screen, like so.



One thing to note is that even though it is advertised as 1200p on the product listing, and it does indeed appear to be a 1920x1200 as the proportions make sense for it, its highest resolution output that Windows could support is 1920x1080. The image appears slightly stretched as a result. I actually don't notice it much when gaming but you can see the difference in a desktop UI. I'm trying to figure out why it won't support a native 1920x1200 on the desktop. I would have to get the EDID info to get the supported resolutions.

A good thing, though, is that it seems to support many other non-native resolutions. Games I've played on 1280x720, 1280x768 and 1366x768 for example, which is good because I would want to play many games at lower resolutions to maintain good framerates with this hardware.

Also, that RAM is probably the last major component I have to upgrade. It's 8GB of Samsung 1600 Mhz RAM, a carry over from my old laptop, and this board can readily support 3200 Mhz. And of course, its speed is very important with integrated graphics if you need the best performance.
 

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
Working on test fit as I get some prints done, and so far it fits very snug but not a lot of margin for error. Plus, cable management especially with the display is likely going to give me the most trouble. But the first prints are still good enough for ergonomics testing and see how the case feels holding it in your hands.

Here's how the case bottom shell looked like the moment that I was still getting some test prints done. But it's already an out of date design, for reasons I'll state below.



The shoulder button is so close to the CPU exhaust and your left hand would partially cover the CPU intake. Given the placement of the CPU cooler and heatpipe routing, there's not much you can do to work around it, other than make the case longer and nudge the mainboard placement more to the right. So that's exactly what I did. It's now 10mm longer, to 280mm, and now the board sits 10mm further to the right, giving more room between the exhaust and left shoulder buttons.



This more up to date design is 10mm longer, and the added bottom vents show much better where the fan intake is. The left piece is also made longer to more easily accommodate those added features while not weakening the case structure. The expansion card on the right is not in a final location, but it will be placed so that it can be swappable through an opening on that side.
 
Last edited:

msystems

King of Cable Management
Apr 28, 2017
781
1,366
That's super cool you were able to keep one of the expansion areas functional without compromising your design
 
  • Like
Reactions: CC Ricers

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
That's super cool you were able to keep one of the expansion areas functional without compromising your design
I needed at least 3cm of space to the right of the board to accommodate the Wi-Fi card, so I figured, why not also use some of that space to also fit one expansion card. The left ports also get a bit more room for routing of angled cables, too.

Here's how the four ports will be used:

Left top: HDMI for display
Left bottom: USB, split for microcontroller, display and touch panel
Right top: USB-C re-routed to top middle
Right bottom: Expansion card

I may just get one of @Arya 's input connector shims to relocate some of the interior USB cables.
 

msystems

King of Cable Management
Apr 28, 2017
781
1,366
Will right top be power input then? Since not using the internal pinout?
Or is the "power" a separate usb-c
 

CC Ricers

Shrink Ray Wielder
Original poster
Bronze Supporter
Nov 1, 2015
2,233
2,556
That's correct, I intend to use the right top mainly as a charging/power port, although it can be used like any other USB-C port.