RASCSI/python/oled
Daniel Markstedt 4252d46844
Inquire the backend for device capabilities instead of Web UI assumptions (#688)
* Add capabilities to RaCtlCmds.get_device_types() to return the image file support boolean, and list of supported block sizes.

* Inquire rascsi backend about the min block size rather than hard coding values in the web UI.

* Add class methods for getting lists of certain device types.

* Use the new class methods to get lists of device types in the web ui.

* Make use of the new class methods in the oled script.

* Remove now unused constants, and simplify logic in common_settings

* Improve device name mapping to extend the existing dictionary rather than creating a new data structure.

* Use jinja2 sort filters instead of sorting in python code. Removing redundant variables.

* Introduce the get_device_name() utility method which returns the translated name for a device acronym. Use the new method to display device name when attaching devices.

* Fix typo

* Rename Support Device to Periperal Device. General tweaks to UI strings.

* Tweak UI string.

* Fix error.
2022-02-21 09:27:31 -08:00
..
resources
service-infra
src Inquire the backend for device capabilities instead of Web UI assumptions (#688) 2022-02-21 09:27:31 -08:00
tests
README.md Updating the README to reflect the new file system layout (#658) 2022-02-11 16:29:48 -08:00
requirements.txt
start.sh restructuring towards python client library #455 (#613) 2022-01-21 15:08:29 -08:00

RaSCSI OLED Screen

Run as standalone script for development / troubleshooting

# Make a virtual env named venv
$ python3 -m venv venv
# Use that virtual env in this shell
$ source venv/bin/activate
# Install requirements
$ pip3 install -r requirements.txt
$ PYTHONPATH=$PWD/src:$(dirname $PWD)/common/src python3 src/rascsi_oled_monitor.py

Parameters

The script takes two positional parameters:

  • '0' or '180' which decides the screen rotation
  • '32' or '64' which decides the vertical screen resolution in pixels

Ex.

$ python3 rascsi_oled_monitor.py --rotation 180 --height 64

Note: Both parameters must be passed for the script to read them. Ordering is also important.

Run the start.sh script standalone

The start.sh script can also be run standalone, and will handle the venv creation/updating for you. It takes the same command line parameters in the following format:

$ ./start.sh --rotation=180 --height=64

Credits

type_writer.ttf

splash_start_*.bmp, splash_stop_*.bmp

  • Drawn by Daniel Markstedt
  • Distributed under BSD 3-Clause by permission from author (see LICENSE for full text)