-
-
Notifications
You must be signed in to change notification settings - Fork 281
Description
Describe the bug
The screen that I bought appears to have a different protocol, which isn't supported by this code - it has a separately controllable backlight (actually 4 lights, but they seem to all work the same way) and uses a 10 byte control sequence, rather than the 6 byte sequence used by the older models.
To Reproduce
Steps to reproduce the behavior:
- Buy the 'flagship' model from https://www.aliexpress.com/item/1005003723773653.html (probably others, but that's where I got mine)
- Run this software and see nothing happens.
- Be sad.
- Snoop the serial protocol on a Windows machine.
- Update the code to have the new protocol.
- Ask on this bug whether it's worth offering a fork with a PR in?
Expected behavior
I was excited you'd done the protocol analysis, and sad when I bought a different device and it didn't work. But now I have something that does work!
Screenshots / photos of the Turing screen
This model:
Backlight is visible on the front and more obviously on the rear.
Environment:
- Working with master + changes for new model
- OS with version OSX 11.5.2
- Python version 3.9.8
- Hardware MacBook Pro.
Additional context
The new product has a different format for its commands...
- Command packets are 10 bytes long, framed by the command byte at either end.
- Command bytes are 0xCA-0xCE.
- A 'HELLO' command elicits a response from the device of 'HELLO' followed by 0x0A, 0x12, 0x00. Useful to identify the device format.
- An 'orientation' packet allows the orientation of the next bitmap block to be selected from landscape and portrait (column major or row major).
- The graphics data is still 565, BUT... high 3 bits of green are in b0-b2, low 3 bits of green are in b13-15, red is in b3-7, blue is in b8-12.
- A 'lighting' packet lets you select the colours of the backlight LEDs with 8bit RGB values.
- Amusingly the 'lighting' isn't supported by the software that the seller included in their listing - although they mention it, there's no way to set the colours in their software.
- There is no Clear, Screen off, or Screen on packet (as far as I can tell).
The device has a serial number of '2017-2-25' - so whilst this appears to be newer, the year implies that it was created longer ago?
Would you like a PR of the results of my investigation which works with the device?