mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.5 KiB
51 lines
1.5 KiB
============================= |
|
USB 7-Segment Numeric Display |
|
============================= |
|
|
|
Manufactured by Delcom Engineering |
|
|
|
Device Information |
|
------------------ |
|
USB VENDOR_ID 0x0fc5 |
|
USB PRODUCT_ID 0x1227 |
|
Both the 6 character and 8 character displays have PRODUCT_ID, |
|
and according to Delcom Engineering no queryable information |
|
can be obtained from the device to tell them apart. |
|
|
|
Device Modes |
|
------------ |
|
By default, the driver assumes the display is only 6 characters |
|
The mode for 6 characters is: |
|
|
|
MSB 0x06; LSB 0x3f |
|
|
|
For the 8 character display: |
|
|
|
MSB 0x08; LSB 0xff |
|
|
|
The device can accept "text" either in raw, hex, or ascii textmode. |
|
raw controls each segment manually, |
|
hex expects a value between 0-15 per character, |
|
ascii expects a value between '0'-'9' and 'A'-'F'. |
|
The default is ascii. |
|
|
|
Device Operation |
|
---------------- |
|
1. Turn on the device: |
|
echo 1 > /sys/bus/usb/.../powered |
|
2. Set the device's mode: |
|
echo $mode_msb > /sys/bus/usb/.../mode_msb |
|
echo $mode_lsb > /sys/bus/usb/.../mode_lsb |
|
3. Set the textmode: |
|
echo $textmode > /sys/bus/usb/.../textmode |
|
4. set the text (for example): |
|
echo "123ABC" > /sys/bus/usb/.../text (ascii) |
|
echo "A1B2" > /sys/bus/usb/.../text (ascii) |
|
echo -ne "\x01\x02\x03" > /sys/bus/usb/.../text (hex) |
|
5. Set the decimal places. |
|
The device has either 6 or 8 decimal points. |
|
to set the nth decimal place calculate 10 ** n |
|
and echo it in to /sys/bus/usb/.../decimals |
|
To set multiple decimals points sum up each power. |
|
For example, to set the 0th and 3rd decimal place |
|
echo 1001 > /sys/bus/usb/.../decimals
|
|
|