The Forth Deck mini
A portable Forth computer with a discrete CPU


The Forth Deck mini  is a housed version of the My4TH computer board with an additional keyboard and display. A built-in rechargeable battery makes it portable and independent of mains power. With this computer you can write and debug your own Forth programs directly on the deck, no need for a serial terminal or PC! It's a bit like the home computers of the 70s and 80s with their built-in Basic interpreters.

The Forth Deck has all the My4TH features and a few more:

  • 40 x 4 character LCD
  • 56 buttons QWERTY keyboard
  • 6.6 Wh LiPo battery
  • 6 hours runtime without recharging
  • 8-bit discrete CMOS logic CPU
  • 8 to 14 MHz clock frequency
  • 32 KB ROM, 32 KB RAM, up to 256 KB EEPROM
  • 17 CMOS logic chips of the 74 series, 3 transistors
  • RS-232 with 4800 baud
  • I2C-bus for extensions
  • 16-bit Forth 2012 system
  • Size 198 x 118 x 35 mm
Watch this video about My4TH and the Forth Deck:


This is the Forth Deck "mini":



The back side of my Forth Deck:

Power
switch
Charging port
and LED
Header with
I2C, +5V, GND
RS-232
 


Keyboard and display without housing, connected via ribbon cable to the My4TH board:


This is the back side of the keyboard PCB:




Schematics of the keyboard PCB:


Bill of material for the keyboard PCB:

 ReferenceValue  ReferenceValue
 C1 100 nF  Q1 BS170
 C2 C3 470 pF  R1 22 Ohm
 D1 - D13BAT41  R2 10 K
 J1 Socket 2x10 pin, 2.54mm  R3 R4 3.3 K
 J2 Header 2x10 pin, 2.54mm  SW1 - SW56push button
 J3 USB type B mini connector  SW57 slide switch
 J4 Header 1x4 pin, 2.54mm  U1 LCD 40x4
 J5 Qwiic socket  U2 74HC 574


The battery charging circuit is optional. The complete BOM is listed in the Forth Deck construction manual.

Want to build your own? All you need is available for download.

You can buy a Forth Deck keyboard kit at Budgetronics.
To reduce cost, the kit does not include the battery and charging circuitry. It also does not include some optional connectors. However, the kit does include a collection of spacers so that you can stack the two boards and build a caseless version of the Forth Deck for your desktop.

Important:
If you want to build the Forth Deck, you need also the My4TH computer board.


Detailed Description of the keyboad PCB

The LCD is driven in 4-bit mode to save I/O pins on the My4TH I/O connector. There are only 5 unused digital outputs available on My4TH's I/O connector, but this is two less than needed to drive the large LCD, which has two chip select inputs. So it was necessary to add some sort of I/O-port expander to get more digital outputs. I did this by adding a 74HC574 octal D-type bus latch. This IC is wired as a 4-bit wide shift register with a depth of 2, so we get another 8 digital outputs. To clock the data into the shift register, I use the SCL line of the I2C bus. This is no problem at all for the I2C bus, because the devices on the bus will never see a valid I2C start condition when the SCL signal is used to clock the 74HC574. To avoid unwanted register writes to the LCD, the display has its on select-signal on My4TH's digital I/O port (OUT3). Two resistor-diode AND gates (R3/D6 and R4/D8) mask the chip selects on the LCD. The small capacitors C2 and C3 are required to filter out glitches caused by the 74HC574's toggling pins together with the parasitic capacitance of D6 and D8.

The keyboard has 56 keys. The distance between the keys is 12 mm, so it is not possible to use larger, more confortable keys. I wanted to have the smallest possible device, and the display forced me to use a minimum width of 190 mm. With a spacing of 12 mm, 14 keys fit in one row, and with 4 rows we get a total of 56 keys. To read the keys, I use all the unused input pins on the My4TH's I/O-port connector, which are six in total. Together with 9 digital outputs, I can read a matrix of 6 x 9 = 54 keys. The remaining two keys are special: I added a shift key (which required another digital output) and a reset key. The reset key is protected by the shift key, i.e. to trigger a hardware reset you need to press the the reset key together with the shift key.

A LiPo battery is used to power the system. The charger circuit is based on the TP5400 chip, which is widely used in cheap USB power banks. If you find it too difficult to solder the tiny SMD components onto the circuit board, you can use a pre-assembled TP5400 module and connect it to the keyboard PCB via fly wires.

The Software support for the keyboard PCB is integrated in the My4TH ROM since version 1.0. So if you connect the keyboard extension board to your My4TH computer board, your My4TH will automatically detect the keyboard and LCD.

The PCB is prepared so that it can be cut in half to separate the keyboard from the display. This allows you to a) mount the display at any angle to the keyboard and b) make your own (possibly more comfortable) keyboard.

To initiate a hardware reset, hold down the shift key and press the |Reset| key.


Examples

The integrated Forth text editor:


The game "2048":





License Information

This work (My4TH hardware and software) is licensed under a
Creative Commons Attribution-ShareAlike 4.0 International License
.
Creative Commons License

The cross assembler "myca" is licensed under the GNU General Public License, Version 3.


Impressum
and contact information:
Dennis Kuschel
Corintostraße 21
28279 Bremen, Germany
email: dennis_k@freenet.de
web: mynor.org and mycpu.eu
  website visits