Maximite

Maximite Microcomputer is a Microchip PIC32 microcontroller-based microcomputer. This series of chips uses the MIPS 32-bit RISC MIPS architecture and was neither an ARM nor PIC variant. Originally designed as a hobby kit, the Maximite was introduced in a three-part article in Silicon Chip magazine in autumn of  2011 by Australian designer Geoff Graham. The project consists of two main components — a main circuit board and the MMBasic Interpreter, styled after GW-BASIC.

Versions
Maximite version 2.7 is still an open source project. Several hobbyists have produced their own custom versions, often using commercially available prototyping circuit boards.

Clones
Several Maximite clones were designed and released in the months following its introduction. Some, such as the Maximite SM1, and Geoff Graham's latest version, the Mini-Maximite, are hardware- and software-compatible with the original design, but use a different form factor.

Others, like the DuinoMite, from the Bulgarian company Olimex, have altered the hardware by adding Arduino headers. This makes it easier to use hardware designed for Arduino boards, but modified firmware is needed to use this functionality. Some of these changes have been incorporated in the official version as it gets updated.

Australian Distributor Dontronics and United States programmer Ken Segler have been active in adapting the software to run on the different versions of the hardware.

Geoff Graham has also released an altered version of MMBasic for the UBW32 development Board.

Maximite clones made by US producer CircuitGizmos remain compatible with the original Maximite design and include a very small CGMMSTICK1 that can be used with solderless breadboards, and a Colour Maximite compatible CGCOLORMAX1.

MMBasic
MMBasic 3.x has support for user defined subroutines and modern Line-numberless structure. This MMBasic 3.x has been released in several versions including support for the Olimex Duinomite, UBW32 and CGMMStick variants.

While the versions of MMBasic prior to 3.x were available as free and open-source software distributed under the GNU General Public License, for the 3.x versions the license was changed to a proprietary one, with the source code available free of charge for personal use.

ICeemite
On 11 May 2013, an IC-style version named DTX2-4105C (later given the name "ICeemite"), entirely designed for inclusion into embedded systems was announced by the Australian company Dimitech. This new revision of the original Maximite brings a real-time clock and a microSD card connector on board and fits into a PLCC-68 socket. As of the day of announcement it was the world's smallest full Maximite system. ICeemite offers custom built firmware with additional extras used in embedded systems such as multitasking and power management, but does not support colour graphics.

Colour Maximite


A new version of the Maximite was featured in the September 2012 Issue of Silicon Chip Magazine.

New features in the Colour Maximite are.
 * 100pin Version PIC32
 * Colour VGA with eight colours (black, red, green, blue, cyan, yellow, purple and white).
 * Synthesised stereo music and sound effects.
 * Battery backed real time clock (optional).
 * Arduino compatible connector with an additional 20 I/O lines that are independent of the original 20 I/Os.
 * 2 channel PWM analog output.
 * Special commands for animated games.
 * Version 4.0 of MMBasic which has extra commands to access and utilise the additional features.

Several software and hardware projects have been created utilizing the Maximite in the 12 months since it was first announced. These range from simple dataloggers to complex process controllers.

Colour Maximite 2 (Gen 1)
The Colour Maximite 2 was introduced in mid-2020, and was featured in the July 2020 issue of Silicon Chip magazine.

Specifications:


 * CPU: 480 MHz 32-bit ARM Cortex-M7 with 2 MB flash
 * RAM: 1 MB on-chip plus 8 MB off-chip RAM
 * Display: Colour VGA output at up to 800×600; 8-bit (256 colour), 12-bit (4096 colour) and 16-bit (65,536 colour) display modes
 * Audio: Stereo audio output supporting WAV, FLAC, MP3 and MOD file playback, synthesised speech and sound effect support
 * Storage: SD card up to 128 GB; FAT16, FAT32 and exFAT file systems supported
 * Battery backed real time clock (standard)
 * USB keyboard support
 * I/O: 28 external I/O lines with Raspberry Pi hat-compatible pinout; Nintendo Wii Nunchuck support
 * Serial I/O: Communications protocols including 2×serial, 2×I²C, 2×SPI and Dallas 1-Wire

The Colour Maximite 2 runs MMBasic 5.x and includes a compatibility mode to run programs written for the original Colour Maximite.

Colour Maximite 2 (Gen 2)
The Colour Maximite Gen 2 was announced in mid-2021, and was featured in the August 2021 issue of Silicon Chip magazine. This is an enhanced version of the Colour Maximite 2, relying on more surface mounted components than the Gen 1, thus being optimised for automated machine assembly.

Enhancements over and above the Colour Maximite Gen 1 include upgraded graphics (1920×1080 with 24-bit colour), on board support for a mouse, accurate real time clock, ESP-01 WiFi module and an extra Wii nunchuck port on the front panel.

As at April 2023, there are over 140 programs available for both versions of the Colour Maximite 2.

PicoMiteVGA
The PicoMiteVGA (also known as the VGA PicoMite ) is an expansion board that turns a Raspberry Pi Pico running MMBasic 5.x for the Pico (also known as PicoMite) into a self-contained desktop computer that boots into a BASIC prompt.

PicoMite MMBasic supports all the hardware features of the Raspberry Pi Pico (serial, I2C, SPI, CPU clock, ADC, etc), along with built-in support for many popular add-ons for the Pico including SD cards, LCD display with a maximum resolution of 480 × 360 pixels, touch sensitive LCD screens, real time clocks, infrared remote controls, temperature and humidity sensors, ultrasonic sensors and numeric keypads. Support for WS2812 LED strips is also included.

Specifications:


 * CPU: RP2040 (Dual-core Arm Cortex-M0+ processor, flexible clock running up to 133 MHz)
 * RAM: 264kB on-chip SRAM
 * Display: Monochrome VGA at 640x480; 16 colour (1:2:1 R:G:B) VGA at 320x200
 * Storage: 2 MB on-board QSPI flash + SD card up to 32 GB; FAT16 and file systems supported
 * PS/2 keyboard support
 * I/O: Communications protocols including serial, I²C, SPI and ADC