Digirule 2 & 2A

Update 18 March 2020 – Luke Drumm has made a great Basic Compiler for the Digirule 2/2A! It is still a work in progress but you will find the link at the bottom of this page (before the comments section).

Update 15 January 2020 – The Digirule 2A kit soldering video and PDF are available for download. You will find them at the bottom of this page (the kit instructions are included in the main download with all other files including schematic, PCB design, source code etc.)

Update 20 September 2019 – A Digirule 2A user (Emmanuel) has found an error in the Instruction Set table on the rear of the Digirule 2A where the ‘RETURN’ and ‘RETLA’ instructions are printed in the incorrect order. The correct order is ‘RETLA’ = instruction 30 while ‘RETURN’ = instruction 31. The user manual details this correctly however. (Please note, a future firmware update will actually have these instructions swapped so that they line up with the printing on the Digirule 2/2A).

I have been fascinated with systems like the Altair 8800 for some time now and decided to up-the-anti with my second iteration of the Digirule by making a programmable binary computer built into a PCB ruler. The Altair 8800 is shown below:

 

Image source: Wikipedia

The Digirule 2 and 2A are identical with respect to their hardware however the Digirule 2A comes pre-programmed with updated firmware (made by Brent Hauser) and also updated PCB silkscreen. Since the Digirule 2 and 2A are very similar to each other, this webpage will simply refer to them collectively as Digirule 2. You can find more information about the differences between the Digirule 2 and 2A in the download links below.

Tindie

When I have stock, you can purchase a Digirule 2 from my Tindie store.

I sell on Tindie

Kickstarter

The Digirule 2 was successfully funded on Kickstarter on 28th June 2018 where 487 backers pledged $22,097AUD. Kickstarter link HERE.
The Digirule 2A was successfully funded on Kickstarter on 29th May 2019 (which only ran for 48 hours!) where 149 backers pledged $6,149AUD. Kickstarter link HERE.

The Digirule 2 can be likened to a computer similar to the Altair 8800 built into a 20cm ruler. it is essentially an 8-bit programmable binary computer with a simple instruction set that let’s you add, subtract, AND, OR, XOR, shift, check buttons, check the status of flags etc. so you can make some cool little programs that can be stored even when power is turned off by using the in-built flash memory. 

Digirule 2 Features (Front)

Digirule 2 Features (Rear)

Instruction Set Code Maker

An excel spreadsheet helps to convert code to binary for you to then enter into the Digirule 2. The original Digirule 2 firmware contains 33 instructions while the updated Digirule 2A firmware contains 35 instructions.

Preview Video

 

Digirule2 Front and Rear

Digirule 2A Front and Rear

You will notice the Digirule 2A is virtually identical to the Digirule 2. The only differences being the extra two instructions printed on the rear of the device and the RUN/STOP LED’s being positioned below the switch in the 2A version:

Downloads

Kit soldering instructional video. This video will give those who have bought the Digirule 2A (or 1A) kit a few tips on how to solder their kit together:

 

The download below features the Digirule 2 and 2A sourcecode, schematic, PCB design, gerber, user manual and excel spreadsheet coder and also the soldering kit instructions. A big thank you to Brent Hauser for his updated Digirule 2A firmware!

Digirule 2 and 2A Files (1284 downloads)

User Uploads

If you’ve made a program that you’d like to share with others, feel free to upload it using the form below:

Upload files



You can browse the user upload directory by clicking HERE.

Digirule2 Assembler and Basic Compiler

Luke Drumm has made a fantastic Digirule 2/2A Assembler and can be found HERE.

Luke has also made a Basic Compiler which can be found HERE.

Here are some things to note about the Basic Compiler:

“It’s still very much a work in progress but it should allow people to get a taste for the joys of early incarnations of Basic on 1970s hardware was like.
Some things to note:
 – it evaluates expressions from left to right and doesn’t understand parentheses… unless it’s part of a known function
 – it does attempt to optimise the compiled assembly but only pretty simple things at the moment
 – as with the assembler ( http://digirulenotes.com ), the page is designed to be self contained (with exception of fonts) so it can be saved locally and used offline.
 – there’s currently no safe guards against writing an program that’s too big to fit on the digirule so maybe don’t port Quake just yet

 

My plan is to add some examples (such as tennis and knight rider) in the not too distant future.
As always, any feedback people have is always appreciated.”