DevTerm Tips & Tricks

heyo, all current and future devterm owners! feel free to share your findings about getting different OS up and running, increasing performance, and any other info you think might be helpful to other users.

4 Likes

For the X11 terminal, I am using sakura, it has a nice set of capabilities (e.g. quick font resizing from keyboard by Ctrl +, Ctrl -). For the font, I tested a few of them and finally settled on Terminus Bold. At size 12, it gives you 159x26 terminal size when fullscreen, which is one more line than usual :-). Though I am mostly using it at size 15, with 127x21 size and very few applications mind. However, the lower line of the screen remains unused.

For the “text” virtual linux console, I am also using Terminus Bold, configure it by running:

dpkg-reconfigure console-setup

then select UTF-8, [whatever], TerminusBold, 10x18

This gives you 128x26 size. However, the top line of the screen is chopped a bit (well known issue with the framebuffer console).

DevTerm’s resolution is 1280x480 pixels. While 480 pixels should be enough for everyone, we know that some X11 applications sometimes need more… sometimes only by a tiny amount, but that amount is enough to make inaccessible some crucial UX element.

There are three quick&dirty ways how to temporarily help in such a situation:

  1. xrandr --output DSI-1 --scale X makes the apparent screen X times bigger. I.e. X=2 means you will fit 2560x960 pixels om your screen, scaled down accordingly (everything will be twice as small). X=1.5 seems a good value - still somewhat readable compared to the default settings, with 720 vertical pixels. You can even use X<1 to zoom the screen in. Use --scale 1 to revert.
  2. xrandr --output DSI-1 --fb 1280x720 --rotate right --panning 720x0 makes a virtual screen 1.5 times taller. Use the mouse to pan up&down. Use xrandr --output DSI-1 --fb 1280x480 --rotate right --panning 0x0 to revert. Modify the numbers according to your preferences. Depending on your window manager, the compositor might interfere (typically, the panned-in bottom will remain black, although mouse will move there and windows will react). If you are using xfce4, use the command xfwm4 --replace --compositor=off as a quick workaround.
  3. xrandr --output DSI-1 --rotate normal rotates the screen vertically (i.e. what for the LCD panel is the normal orientation). This is even usable for e.g. e-book reading, if you are so inclined :-). Use xrandr --output DSI-1 --rotate right to revert.

(edited; fixed panning & added rotate)

4 Likes

I have a devterm with CM3 unit in it. Executing the “xrandr --fb 1280x720” doesn’t give an error and if I run xrandr without options it tells me:

Screen 0: minimum 320 x 200, current 1280 x 720, maximum 2048 x 2048
HDMI-1 disconnected primary (normal left inverted right x axis y axis)
Composite-1 unknown connection (normal left inverted right x axis y axis)
720x480 62.69
720x240i 60.13
DSI-1 connected 1280x480+0+0 right (normal left inverted right x axis y axis) 0mm x 0mm
480x1280 60.00*+

But I can’t scroll down past the 480 point.

Any suggestions?

A bit more research shows it a bit different, at least on the DevTerm with a CM3 module. What worked for me was:

xrandr --output DSI-1 --panning 720x1280

This doubled the vertical space so I can pan down to get things otherwise off the screen.

Turning it off doesn’t seem to work by replacing 720 by 480.

The background is also messed up, even a solid color doesn’t fill the screen.

Turns out the command sometimes does not recognize the screen is rotated (I have not been quite successful in determining how exactly; but specifying the --rotate option all the time seems to help). Another issue is the compositor, the “proper” solution seems involved (see this askubuntu answer - and it might not even work anymore, considering it was written a decade ago). Fortunately, most window managers can be used without a compositor. I edited my post accordingly.

Since the vertical screen estate is very tight, placing your xfce panel vertically helps to recover some much needed pixels.

Right-click the panel, select Panel → Panel Preferences, Mode: vertical (or Deskbar). Now you can increase the panel width (Row size) to make it more readable, I found 42 pixels fine. You can also set panel autohide here if you want.

Additional small but useful tip is to add Action Buttons - when you have the settings opened, click on Items, +Add (at the bottom, you might need to move the window upwards to reveal the bottom), then choose Action Buttons, click on +Add, ×Close. A button with your login name (vertical) appeares, to improve on the appearance (and to save some space), right-click on the button, select Properties, Appearance: Session Menu, Title: Custom, and type a single character into the Custom title box (replace the “Session menu” default value) - such as * or my choice capital O). Now you have an easy access to Shutdown & Restart from this button.

1 Like

This is a great solution and works like a charm (after deactivating Compositor). Thank you so much. This is a life saver!

Do you happen to know how to make this persistent between reboots?

anyone know how to remap the keyboard? my @ is where the ‘’ should be

You can change it in the firmware somewhere here DevTerm/Code/devterm_keyboard/keymaps.ino at main ¡ clockworkpi/DevTerm ¡ GitHub

1 Like

How do I apply the changes? I’m surprised no one else has raised this before

You download it, you reprogram it, you compile it with Arduino IDE and you upload it

Here is an example for the Gameshell, but the process is similar

Edit: Just remembered that @Godzil had a fork of the code and added in the Readme a guide on how to upload it to the keyboard

I would suggest to put the command xfwm4 --replace --compositor=off into a script somewhere (e.g. ~/bin/fixxfce.sh) and then put it as your autostart-ed application (Applications Menu > Settings > Settings Manager, Session and Startup, Application Autostart). Currently, I am doing this to replace xfwm with awesome, while keeping the xfce environment and the panel (this approach has its own shortcomings, though).

1 Like

It almost looks like you are using UK keyboard layout instead of the expected US one (or vice versa?). In any case, tinkering with the kb firmware to fix this is… how to say it… rather suboptimal, or even harmful.

Assuming you are using X11, as the first step, try the command setxkbmap -query in your x-terminal emulator to see the current layout; then setxkbmap us or setxkbmap gb.

1 Like

you were 100% right. this was a 5 sec config change from UK → US. Thank you!