turing-smart-screen-python
turing-smart-screen-python copied to clipboard
AX206 based display support
I've recently picked up a screen which works with AIDA64 using AX206 LCD support via libusb, but it doesn't look like it's supported with this python code yet.
It's available on AliExpress https://www.aliexpress.com/item/1005005600240555.html and while it looks similar to the screen mentioned in #426 I note that one mentions it works without AIDA64 so I imagine it's different (I couldn't see a link to download the software for that one to test if it worked on my AX206 based screen)
Hello, if your screen really is an AX206 then unfortunately it won't work with this project because we didn't implement the support yet. But based on what I see from the reviews, it may also be a Turing 3.5 inch. It is not clear if the seller has several models, or if he doesn't really know what he is selling. If you want, you can try the System Monitor program from this project and select "Turing 3.5" as screen model, and let me know if it works for you!
If you want, you can try the System Monitor program from this project and select "Turing 3.5" as screen model, and let me know if it works for you!
I did try all the 3.5" options and no dice. I suspect it is really an AX206 as selecting that in AIDA64 worked
This kind of screen requires raw USB packets. This is harder to deal with on Windows, based off of what libusb says. It won't be as trivial as a serial based display due to the need to register stuff with the system for communication purposes. See here: https://github.com/libusb/libusb/wiki/Windows#user-content-How_to_use_libusb_on_Windows
I was thinking we could maybe add support for Linux first using the lcd4linux library, because people on Windows can at least use Aida64 which is far better than the Windows apps made for the serial smart screens
lcd4linux
and AIDA64
are ultimately using libusb
for communication from what I have seen. But lcd4linux
was originally written using the ancient libusb
0.1 series, so it will need updating for asynchronous usage. The performance is likely to be on par with the Turing Smart Screen due to being stuck with USB 1.1. The command exchange is based on SCSI where the driver sends a command packet followed by an optional data packet. The screen will send an answer packet in response.
The AX206 screen comes in various resolutions due to its origins from the dpf-ax
project. This can be queried at runtime via the initial communications. From what I can tell, there's no known AX206s with support for more than the default orientation which can be either landscape or portrait depending on the screen's native resolution. The brightness level can also be changed with a different command series. And the screen can receive partial updates via a BLIT command. That's it for commands the screen supports that would be useful for a driver. See here for the actual command packets:
https://github.com/dreamlayers/dpf-ax/blob/dreamlayers/dpflib/dpfcore4driver/dpfcore4driver.c