DevTerm keyboard potential with reprogramming and GPIO

Not only can the keyboard be reprogrammed, but it has its own GPIO.
If the keyboard can be supplied power while the main board is turned off (might require tapping into the battery management board), it means the keyboard can be a stand-alone low-powered Arm device… all while the main board is powered down. (In practice, you would want to code with interrupts and utilize sleep states)

I’m still trying to think of practical applications, but if the GPIO could bypass the main board and talk to some other peripherals (maybe on a custom Ext board), some utility functions could be performed using little power, and without waiting for the OS to boot up. Maybe using key combinations, or special sequences?

Anyone else have ideas with reprogramming the keyboard?

5 Likes

im sure one could jumper pins designed to be jumped… and them for this purpose. first thing that comes to mind is a bad keyboard… purely for testing purposes, obviously. another idea could be to gpio up sensors and use it as a control board to run various bits of code for whatever… attach IR and program up some panasonic codes for a glorified tv remote.

2 Likes

Ooo yes an IR transmitter! That should be easy to add the IR LED without modifying the enclosure too much.

2 Likes

hook up a buzzer and make each key produce a different square wave to it…
IR naval morse code message send (and if you can manage a tiny low-power screen or generate tones to headphones, receive) messages.
super servo robot controller?
program each button to randomly generate a character for a true random generator?
… i see button and im like… “000OOOOooooo, BUT TONS…” and think, “what can i make these do?”
a party/rave controller for lights, lasers, effects, projotor/video display… (when the the lights do down low and that volumes comes up high)

1 Like

I would like to reprogram the keyboard fn and ctrl to be flipped. I use Ctrl waaaaayyyyyy too much. (Emacs) But I really appreciate the Ctrl and Shift on both sides of the keyboard. I love those.

I am hoping that my experience with Nokia E90, N810, N900, GPD Win2 and Gemini PDA is guiding me correctly here.

2 Likes

im just glad there is no caps lock… i normally program CL to be another Fn key

Did you see that the tab key has an Fn for capslock? I thought that was clever.

Yeah I wonder if anyone uses caps lock anymore…

1 Like

image

Wow. That takes me back.

My laptop is a custom built clevo/itc/sager/metabox (international licensing ugh) and doesn’t have a visible light up caps lock key. I spent 30 minutes trying to find out why I couldn’t connect to a wifi AP. Turns out caps lock was on and I didn’t realise.

The point is, sometimes caps lock can be more trouble than it’s worth these days, at least for me. Honestly, it’s just as easy to hold shift and type. And if you’re typing enough to warrant your pinky getting tired, it’s probably a sign you’re a bit too angry to be posting a rage post, and should have some cocoa and a short nap.

On a related note, I’m sure that any key can be reprogrammed to be whatever you want it to be. The gameshell’s arduino keypad was very easy to customise and access, so I have no doubts that the devterm will be the same.

1 Like

if i fail twice… i bust out a text editor to see what im doing wrong…
the issue is almost always user error.

My intention is that in the end… all the buttons will have alternate chord/macro functions.
using the light key as a chording kb was super neat… but i prefer to more buttons

1 Like

My main thought for the GPIO would be to add shoulder buttons on the back to the DevTerm :drooling_face:

I’ve thought about adding some buttons to the back

These are actually easier to program than the main board GPIOs I think… No Linux kernel programming, just Arduino, more realtime.

Can either expose a new USB endpoint, or just use /dev/ttyACM0 to send/receive commands.

  • An LED strip for the transparent backplate
  • Buzzers!
  • If the UART is accessible, then some MIDI ports (iirc STM32 has configurable GPIO<->UART mapping?)
  • PWM control voltage outputs
  • Parallel port for interfacing old Amiga peripherals, maximum retro feeling

From the datasheet:

Most pins are occupied, unfortunately.
The free pins are:

  • PA8, GPIO/PWM
  • PA13, GPIO
  • PA14, GPIO
  • PA15, GPIO
  • PC13, GPIO
  • PD2, GPIO

rotary encoders, why is no one talking about them anymore?

1 Like

HAPTICS