Sign inSign up

dbzocchi/turing-screen-unraid

By dbzocchi

•Updated 4 months ago

Image
0

280

dbzocchi/turing-screen-unraid repository overview

⁠Turing / TURZX Smart Screen for Unraid

Docker image for a TURZX / Turing Smart Screen USB display on Unraid.

Tested with:

9.2" TURZX USB-C smart screen
USB ID: 1cbe:0092 Luminary Micro Inc. TURZX1.0
Unraid
Intel iGPU

This is not a normal HDMI monitor. It is controlled over USB.


⁠Quick start

Pull the image:

docker pull dbzocchi/turing-screen-unraid:latest

Run it:

docker rm -f turing-screen 2>/dev/null

docker run -d \
  --name turing-screen \
  --restart unless-stopped \
  --network host \
  --privileged \
  -v /dev/bus/usb:/dev/bus/usb \
  -v /dev/dri:/dev/dri \
  -v /sys:/sys:ro \
  -v /dev:/dev \
  dbzocchi/turing-screen-unraid:latest

Check logs:

docker logs --tail 80 turing-screen

Follow logs:

docker logs -f turing-screen

Restart:

docker restart turing-screen

Stop:

docker stop turing-screen

⁠Required Docker options

--restart unless-stopped

Starts the screen again after reboot.

--network host

Lets the container read Unraid network interfaces like br0, bond0, and eth0.

--privileged

Needed for hardware/USB access.

-v /dev/bus/usb:/dev/bus/usb

Passes the TURZX USB display into the container.

-v /dev/dri:/dev/dri

Passes Intel iGPU device nodes into the container.

-v /sys:/sys:ro
-v /dev:/dev

Allows reading hardware/sensor information.


⁠Check the screen is detected

On Unraid:

lsusb | grep -i -E "turzx|1cbe|0092"

Expected:

1cbe:0092 Luminary Micro Inc. TURZX1.0

⁠Notes

The working screen revision is:

TUR_USB

Do not use:

TURZX
C

TURZX is not a valid revision name in the Python app.

C expects a serial/COM display, but this screen is raw USB.


⁠Intel iGPU / GPU temperature

Intel iGPU usually does not expose a separate GPU temperature.

If GPU temperature is blank, that is normal.

Use CPU package temperature or network usage instead.


⁠Network usage

For Unraid, the main network interface is usually:

br0

If network usage shows 0.0 B/s, check interfaces:

ip -br link
cat /proc/net/dev | grep -E 'br0|bond0|eth0'

Best interface order to try:

br0
bond0
eth0

⁠Useful commands

View running container:

docker ps | grep turing

Logs:

docker logs --tail 100 turing-screen

Shell into container:

docker exec -it turing-screen bash

Restart:

docker restart turing-screen

Remove:

docker rm -f turing-screen

⁠Fully baked image vs editable mode

⁠Fully baked mode

Use no /screen volume:

docker run -d \
  --name turing-screen \
  --restart unless-stopped \
  --network host \
  --privileged \
  -v /dev/bus/usb:/dev/bus/usb \
  -v /dev/dri:/dev/dri \
  -v /sys:/sys:ro \
  -v /dev:/dev \
  dbzocchi/turing-screen-unraid:latest

This uses the config and theme built into the image.

⁠Editable mode

Use this if you want to edit themes/config:

mkdir -p /mnt/user/appdata/turing-screen/data

docker run -d \
  --name turing-screen \
  --restart unless-stopped \
  --network host \
  --privileged \
  -v /dev/bus/usb:/dev/bus/usb \
  -v /dev/dri:/dev/dri \
  -v /sys:/sys:ro \
  -v /dev:/dev \
  -v /mnt/user/appdata/turing-screen/data:/screen \
  dbzocchi/turing-screen-unraid:latest

Config path:

/mnt/user/appdata/turing-screen/data/config.yaml

Themes path:

/mnt/user/appdata/turing-screen/data/res/themes/

⁠Optional named tag

Use a named tag for the AMD-style theme with network usage instead of GPU:

docker pull dbzocchi/turing-screen-unraid:amd-net

Run it:

docker rm -f turing-screen 2>/dev/null

docker run -d \
  --name turing-screen \
  --restart unless-stopped \
  --network host \
  --privileged \
  -v /dev/bus/usb:/dev/bus/usb \
  -v /dev/dri:/dev/dri \
  -v /sys:/sys:ro \
  -v /dev:/dev \
  dbzocchi/turing-screen-unraid:amd-net

Tag summary

Content type

Image

Digest

sha256:4afc2880a…

Size

2.3 GB

Last updated

4 months ago

docker pull dbzocchi/turing-screen-unraid