• Update #2: Screen woes and feature creep

    Matthew Begg03/22/2022 at 19:55 0 comments

    So the screen you saw in the previous update was the Waveshare 2.4 inch SPI LCD screen. I was getting some weird issues when reaching the bottom of the screen. Scrolling wasn't working:

    Turns out you can't use this screen as it doesn't have a 'MISO' connection, only a 'MOSI'. So after a good old search online, I came across cheaper 2.4 inch SPI LCD screens with MISO and MOSI. So hopefully they'll do the trick. These screens come with a built in microSD card reader and optionally a touch display. The card reader would be helpful, but I'm not bothered about touch.

    While on AliExpress, I started looking at real time clock components and ordered some DS1307s and crystals. Looks like I'll be putting a CR2032 on this - not just for the real time clock but potentially to power it. Not sure how long that would last!

    The issue of how to get the I2C keyboard to talk to PicoMite/MMBasic may be solved, as I discovered this project to make the CardKB use UART instead of I2C.

    So still early days, but the concept and design are getting there.

  • Update #1: What will it be?

    Matthew Begg03/15/2022 at 23:08 0 comments

    Taking many lessons from the eMBee ONE project, I'm aiming to build a more powerful but equally retro BASIC language pocket computer. 

    Platform

    The Arduino platform was too underpowered - trying to fit a BASIC interpreter and your own BASIC program into 2kb of RAM was a squeeze, and there were compromises. 

    So, decision one: the eMBee TWO will be built around the RP2040 platform. Very low cost with low power consumption, but with increased power. Although the RP2040 uses a 32-bit processor, there is a real 8-bit vibe going on.

    BASIC Interpreter

    The eMBee ONE used Robin Edwards' Arduino BASIC which had to be cut down quite a lot to fit. It was comparable to the version of Sinclair BASIC included with the Sinclair ZX80 in 1980. With the new model, I want to imagine we've moved to around 1985, and users expect more powerful capabilities in their BASIC. That's where the PicoMite/MMBasic project comes in. Very well supported, and with excellent existing documentation, MMBasic means we will be up and running more quickly, with support for better displays, graphics, colour, sound, expandability etc

    Screen

    Previously using a 128x64 black and white OLED screen, this matched the ZX80 vibe quite nicely. But the 2.42 inch display was quite expensive for what it was, which doesn't fit my aim for a low cost. There are much smaller 0.96 OLED screens available for a few pounds, but my eyesight isn't what it was in 1985 ;-) 

    PicoMite/MMBasic has great support for multiple fonts and full colour graphics (with an RGB palette of over 65,000 colours) so a colour LCD screen seemed inevitable. And the WaveShare 2.4 inch TFT LCD fits the bill perfect. It's actually cheaper than the black and white screen on the eMBee ONE!

    Keyboard

    The previous choice of the I2C-based CardKB keyboard had definite pros and cons. Pros: the size was perfect, and it interfaced easily with the Arduino. Cons: not great to type on for long periods. I'm going to stick with it for the eMBee TWO, but with some investigation into covering it with some sort of flat transparent material to protect your fingers. Additionally, because the computer will be expandable, there's nothing stopping users connecting an external keyboard. Typing via a serial terminal connection, or maybe an optional PS/2 keyboard connector...

    Building technique

    My plan is to get the whole computer working on a breadboard prototype, before designing a credit card sized PCB to be built for mounting inside the Altoids tin.

    And so it begins...

    Here's my first attempt to get PicoMite/MMBasic running on a Raspberry Pi Pico using the Waveshare 2.4 inch colour LCD display. It works! Next stop... connecting the CardKB keyboard