Forth is a programming language.

I've thought it could be useful to learn some since there are microcontroller implementations and they could perhaps be used to interactively test some io access. Like a shell with some (adaptable) low-level commands and control constructs.


There is a Forth implementation called Mecrisp for the MSP430 and Mecrisp-Stellaris that actually targets many ARM Cortex chips. Notably Tiva/Stellaris and STM32.

It appears in some Jeelabs posts. This one makes some points on how Forth can be useful with a uc:

With Forth installed, and some utility code such as from the Embello project, you end up with a plug-and-play jack-of-all-trades gadget...

The no toolchain aspect is quite important, as it means that you can take such a board with you, and use it to start trying out physical-computing related stuff wherever you are:

  • connecting over USART, I2C, or SPI with “other devices”
  • reading analog data at up to 1 Msps and 12-bit resolution
  • generating square waves or pulses, or multi-bit patterns

… as well as all the obvious tasks of reading out button states, encoders, driving LEDs, connecting relay-, motor-, or stepper-drivers and … making real things “happen”.


There is a forth or something close enough, called punyforth, for the ESP8266 line of modules. I should test that sometime as well. The ESP modules' point is, of course, that they can connect to existing wifi networks (or possibly create their own). That comes with the downside that auth information has to be included on the chip from where it may be compromised. A problem that has many solutions these days.

Ideas / projects

I'd like to get a small display on one of these boards. Possibly one of the OLED ones or a plain old character LCD since I have several of those.

These might also be ideal for poking at the NRF radio modules.

A function generator module is also in want of controls.