/turing-smart-screen-python

Unofficial Python system monitor and library for small IPS USB-C displays like Turing Smart Screen or XuanFang

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Icon turing-smart-screen-python

⚠️ DISCLAIMER - PLEASE READ ⚠️

This project is not affiliated, associated, authorized, endorsed by, or in any way officially connected with Turing / XuanFang / Kipye brands, or any of theirs subsidiaries, affiliates, manufacturers or sellers of their products. All product and company names are the registered trademarks of their original owners.

This project is an open-source alternative software, NOT the original software provided for the smart screens. Please do not open issues for USBMonitor.exe/ExtendScreen.exe or for the smart screens hardware here.

  • for Turing Smart Screen, use the official forum here: http://discuz.turzx.com/
  • for other smart screens, contact your reseller

Linux Windows macOS Raspberry Pi Python Licence

A Python system monitor program and an abstraction library for small IPS USB-C (UART) displays.

Supported operating systems : macOS, Windows, Linux (incl. Raspberry Pi), basically all OS that support Python 3.8+

Supported smart screens models:

✅ Turing Smart Screen 3.5" ✅ XuanFang 3.5" ✅ Turing Smart Screen 5"
also improperly called "revision A" by the resellers revision B & flagship (with backplate & RGB LEDs) basic support (no video or storage for now)
UsbPCMonitor 3.5" / 5" Kipye Qiye Smart Display 3.5"
Unknown manufacturer, visually similar to Turing 3.5" / 5". Original software is UsbPCMonitor.exe Front panel has an engraved inscription "奇叶智显" Qiye Zhixian (Qiye Smart Display)

Please note all listed smart screens are different products designed and produced by different companies, despite having a similar appearance. Their communication protocol is also different.
This project offers an abstraction layer to manage all of these products in a unified way, including some product-specific features like backplate RGB LEDs for available models!

If you haven't received your screen yet but want to start developing your theme now, you can use the "simulated LCD" mode!

Not (yet) supported / not tested smart screen models:

Turing Smart Screen 8.8" Turing Smart Screen 2.1" (Fuldho?) 3.5" IPS Screen
Very similar protocol than the 5". Support planned in a future version. Very similar protocol than the 5". Support planned in a future version. Managed by proprietary Windows software SmartMonitor.exe. Cannot be supported by this project: see here. Use alternative library https://github.com/braewoods/hidss
Waveshare 2.1inch / 2.8inch / 5inch / 7inch USB-Monitor GUITION Smart screen
Sold on Waveshare shop or Aliexpress. Managed by proprietary Windows software "Waveshare PC Monitor". Cannot be supported by this project: needs a firmware. Managed by proprietary Windows software "GUITION Smart screen". Cannot be supported by this project: see here.
SmartCool Lcd / GeekTeches AD35 / AIDA64 / AX206
Not supported. Produced by multiple manufacturers, all use the same Appotech AX206 hacked photo frame firmware. Supported by AIDA64 and lcd4linux

How to start

There are 2 possible uses of this project Python code:

System monitor

This project is mainly a complete standalone program to use your screen as a system monitor, like the original vendor app.
Some themes are already included for a quick start!

... view full list

and more... Share yours!

Control the display from your Python projects

If you don't want to use your screen for system monitoring, you can just use this project as a module from any Python code to do some simple operations on the display:

  • Display custom picture
  • Display text
  • Display horizontal / radial progress bar
  • Screen rotation
  • Clear the screen (blank)
  • Turn the screen on/off
  • Display soft reset
  • Set brightness
  • Set backplate RGB LEDs color (on supported hardware rev.)

This project will act as an abstraction library to handle specific protocols and capabilities of each supported smart screen models in a transparent way for the user. Check simple-program.py as an example.

Troubleshooting

If you have trouble running the program as described in the wiki, please check open/closed issues & the wiki Troubleshooting page

They're talking about it!

Star History

Star History Chart