@ajb2k3 OK, I figured it out using FbTerm, see my notes below. Just a note to temper expectations: The device is not very powerful (surprise). In my case, I am running Debian, connected to two tty terminals (ttyGS0 over USB-C and tty1 being shown in display), connected over WiFi dongle, and added a BT dongle for keyboard/mouse, and as a result the CoreMP135 very easily becomes sluggish and quite warm.
Anyway, here are my notes
Showing a terminal on the LCD TFT display
Very briefly:
- The CoreMP135 contains a ILITEK ILI9342C LCD TFT display with touch
- The Debian OS recognizes as the display as a framebuffer and makes it accesible at
/dev/fb1
- Low level interaction directly with
fb1
is below, see examples below. In all the included examples, I was signed in asroot
via the USB-C interface (ttyGS0)
# signed in as root
cat /dev/zero > /dev/fb1 # clear display
cat /dev/urandom > /dev/fb1 # show random 'static' on display
echo "HELLO WORLD" > /dev/fb1 # will show some extremely small in the top left corner - not discernible
- The M5Stack CoreMP135 Debian image includes
fbv
- a program for rendering.jpg
on the framebuffer (TFT LCD). Example:
# signed in as root
. /usr/local/m5stack/bashrc # prepare environment for using fbv
/usr/local/m5stack/bin/fbv /root/mycoolpic.jpg # display .jpg on framebuffer, might only show part depending on jpg resolution
- It is also possible to show a (somewhat) fully functional terminal on the TFT LCD display using the
fbterm
program:
# signed in as root
apt install fbterm # install FbTerm
export FRAMEBUFFER=/dev/fb1 # Tell FbTerm to use fb1 as framebuffer
fbterm -s 12 < /dev/tty1 & # Tell fbterm to diplay tty1 terminal on fb1 with size 12.
- Connect a BT keyboard or similar and enjoy a somewhat functional terminal
- One final note: I added
root
to thevideo
group, although this should not be required.