IAW the discussion with @jkridner I am working on another image that will emphasize the ‘conduit’ subsection of this project at the expense of the example application that is emphasized in this post.
The intermediate stage for the ILI9341 conduit is very simple … everything is a rectangle, including one (1) individual pixel. 3 instructions define these rectangles in the format of a 32bit ‘word’:
- 20rrggbb – the color palette for subsequent rectangles
- 26ssseee – the start and end ‘columns’ of the rectangle (0-239)
- 27ssseee – the start and end ‘pages’ of the rectangle (0-319)
sss <= eee, rr = red (0-255), gg = green (0-255), bb = blue (0-255). All values in hex obviously.
the column definition must precede the page definition for a given rectangle
those who have already implemented the existing image can get some of the features of the upcoming image by following these steps:
- shut down the clock application
- sudo svc -d /service/clock (svc is part of DJB cr.yp.to/daemontools … gratitude)
- sudo su
- echo ‘200F0F0F 260000A0 270000A0’ >> /var/local/pipeA
- gray box should appear in corner of ILI9341 device
- hardware geometry of device is portrait with pins on top:
- coordinate 0,0 is leftmost column, uppermost page (row)
- coordinate 239,319 is rightmost column, lowermost page
- must be root due to permission restrictions of /var/local/pipeA
- will be remedied with additional ‘ncat’ daemon in the upcoming image
- will also permit the instructions to be read from the network
- will be remedied with additional ‘ncat’ daemon in the upcoming image
- cat /home/debian/clock/stress.dat >> /var/local/pipeA
- this is the stress test mentioned earlier for the clock app
- restore clock application without rebooting
- svc -u /service/clock
I hope that there will be some interested in building their own applications with text generators of their choice.
comments and questions welcome
gomer