Also the new mini-Maximite which allows you to run basic without an SD card.
The Maximite Computer
The Maximite Computer is a small and versatile computer running a full featured BASIC interpreter with 128K of working memory
It will work with a standard VGA monitor and PC compatible keyboard and because the Maximite has its own built in SD memory card and BASIC language you need nothing more to start writing and running BASIC programs.
The Maximite also has also 20 input/output lines which can be independently configured as analog inputs, digital inputs or digital outputs. You can measure voltage, frequencies, detect switch closure, etc and respond by turning on lights, closing relays, etc – all under control of your BASIC program.
The design is free and open source including the software and BASIC interpreter. And all this is powered by a single chip which costs just US$8.44.
The Maximite was described in the March, April and May 2011 issues of Silicon Chip magazine. This web page is intended to provide support for people who have built the Maximite and are looking for new firmware, corrections to the articles, etc.
I have recently received some private email regarding interfacing the MaxiMite and DuinoMite to the SimmStick bus, and felt some sort of explanation of events is in order to help explain the situation.
And there has been a couple of recent spin-off features from the Test-a-Mite MM-DM-CGMMSTICK1 GPIO tester board.
1) CGMMSTICK1 to Maximite-DuinoMite 26 pin GPIO Adapter.
2) Maximite or DuinoMite board, to SimmStick Adapter.
Read on…
SimmStick was designed around 1994 by Antti Lukats, a friend of mine living in Estonia. Geoff Graham (MaxiMite designer) recently credits Antti with producing the world's smallest Maximite: http://www.youtube.com/watch?v=LUMnO5p-fjg&lr=1
In 1995 I designed a large range of SimmSticks and started selling them via Dontronics. Basically the platform was based on the then PC-XT 30 pin memory module socket, which was abundant at the time. My initial designs favoured PIC and AVR micro usage, and included a whole range of peripheral devices.
As an example, this was the world's first AVR third party prototype PCB manufactured:
It supported both the old Atmel 8051 family, as well as the new AVR family of micros.
The PCB had to be thinner than a normal PCB to fit into the memory socket, and it needed a notch up one end.
As the years rolled on, many new designs from independent third parties, added to the range. One of them was from another friend of mine, Rob Severson of the US.
His description of this product:
The DT209 I/O expansion board utilizes three I2C bus expansion integrated circuits to provide a total of 24 expansion lines. Each of the three port chips provides 8 i/o lines. These 24 i/o lines allow for input and output expansion without sacrificing any of the general control lines on the SimmBus, i.e. the lines labelled D0 – D15.
The SimmStick bus and the range of boards has declined over the years. One of the main reasons is that the memory sockets have become hard to get, however standard .1" male and female headers can be used with any thickness PCB. See: http://www.dontronics-shop.com/connectors.html
Recently Rob Severson came up with his CGMMSTICK1, which is a MaxiMite basically on a SimmStick compatible bus. Close enough that at least we shouldn't see any blue smoke, when they are mated together.
Following on from this, Mick Gulovsen designed the MM-CGMMSTICK1-DM compatible Test-a-Mite that would allow testing of not only Rob's 30 pin bus, but also the 26 pin GPIO outputs from both the MaxiMite and DuinoMite.
Interestingly, this Test-a-Mite product has produced two new potential features.
1) CGMMSTICK1 to Maximite-DuinoMite 26 pin GPIO Adapter.
See picture below:
This is a MaxiMite CGMMSTICK1 board, connected via a blank Test-a-Mite board, to a right angle male 26 pin IDC connector.
2) Maximite or DuinoMite board, to SimmStick Adapter. See picture below:
This is a MaxiMite or DuinoMite, connected via a blank Test-a-Mite board, to a SimmStick board.
I really don't know what the future of mating up SimmStick with MaxiMite and DuinoMite is, or even if there is a future, but as Rob has extended the useful life of the platform, I felt it was at least worth visiting the facts, and what is currently available.
You want to join in the fun that users are experiencing with the MaxiMite computer, and be able to create hardware and software applications in minutes, and not hours or days, but the $90AUD for a kit, is far too high to even think about it.
How about an assembled and tested unit at about a third of that price?
There simply is no cheaper way of getting any MaxiMite up and running, unless you are building your own from scratch.
This product will have 12 GPIO pins compared to the normal 20 GPIO pins of a standard MaxiMite, but at a third of the price, you could actually have three talking to each other, and still have a lot more pins than a standard MaxiMite.
I hear you say: "This board looks suspiciously like a DuinoMite-Mini". It should, as it is a DuinoMite-Mini.
Geoff Graham has been good enough to compile a DuinoMite version of his MM-Basic for the DuinoMite, with the 12 pin GPIO limitation.
All you need to do is to update the firmware version from the factory version, to the latest MMBasic version for the DuinoMite, and use the Silicon Chip serial drivers.
The original DuinoMite firmware still needs some work done on it before it can be considered stable.
It was initially designed to support the Arduino Shield footprint. The DuinoMite firmware uses the PIC32s internal peripherals for UART, SPI etc. and also adds a UEXT connector for another range of add-on peripherals.
If and when the DuinoMite firmware reaches a point where it covers your specific application, it is very easy to upgrade to the latest DuinoMite version, so you can test it as a DuinoMite. It is also very easy to roll back to make it a 12 Pin MaxiMite.
Please Note:
The DuinoMite uses the PIC32s internal peripherals for UART, SPI etc.
By setting this product up as a MaxiMite, you will lose the DuinoMite features, such as the software drivers that support the Olimex UEXT connector, and the real UARTs, as all of your UARTs will be bit banged in MaxiMite Mode.
The above table was provided by: Andrew Rich VK4TEC
Best Price on MaxiMite Blank Printed Circuit Boards.
From $9.95
We can post off the MaxiMite bare printed circuit board in a letter, world wide at a very cheap rate. In fact, we will do it for an extra $2. See this Page for details: www.dontronics-shop.com/maximite-pcb-letter.html
The product on this page is a blank printed circuit board for the original MaxiMite Computer designed by Geoff Graham.
You have to source all other components including the PIC32 micro, and you must be able to program the micro yourself.
Schematics assembly instructions, and all other relevant files are available from: HERE
They are Duinomite boards by Olimex (based on the Maximite by Geoff Graham), they have a mono VGA output, PS2 keyboard input, 26 pin IO port, MicroSD card socket, plus other stuff we don't need.
The one on the left is the Duinomite Mini and it retails for $33.35. On the right is the Duinomite Mega which retails for $50.08. After a quick perusal of the specs I thought these would be perfect for an ultra budget slot racing system. Either board will do the job but I purchased the Mega because it has a more tolerant power requirement, 9v to 30v, whereas the Mini requires 5v regulated, any more and the smoke escapes.
Also there is a pretty box available for the Mega for $16.65, and here it is -
I didn't buy the box because this is supposed to be an Ultra Budget project and I'd already splurged on the bigger board.
Upon arrival of the board I scrounged up an old PS2 keyboard and an LED monitor and went to work. After checking the IO port specs I made up a simple test board with 4 buttons and 4 LEDs and started on the software. It took longer to make the test board than to write the software, so be gentle with criticism please – here's how stage 1 looks
It's pretty basic at the moment but it provides lap counting and timing and displays the best lap time and the last 9 lap times for each lane. Function keys 1 to 4 reset the laps and times on the relevent lanes and the space bar turns the track power on and off. I've set it up with 4 outputs for individual control of the lanes and have already started on the qualifying and race programs although they are much more complex and will be a "spare time" job. It would take very little work to add single lane lap races to the current software but I'll make up a decent test rig with buzzer and lights first.
The board uses a 32 bit PIC chip running at 80MHz which handles all functions and runs a basic interpreter.
The basic interpreter can run about 30,000 lines of code per second.
The board boots into a basic prompt unless it finds a file named "AUTORUN.BAS" on either it's internal drive or the SD card then it will run that.
Lap counter inputs are handled by an interrupt on IO pin change and timing when checked against a know good source is accurate to +/- 1ms plus rounding errors, so say +/- 2ms
Video resolution is 480 x 432 Mono (that's black and white only)
The screen title and lane names can be easily changed in the software.
The software requires MMBasic 3.1 which allows for 12 IO lines which I've allocated thus -
4 Inputs – Lap Counters – Interrupt on change either low to high or high to low (easily changed with 1 number in the software)
4 Outputs – Track Relays – Digital IO
1 Output – track On/Off indicator – probably use a SPDT relay to drive red/green LEDs or lights
1 Output – Buzzer – the board has a speaker connector but not all monitors have speakers
1 Input – Track Call Button
1 IO spare – I had an idea for this but I've forgotten what it was. Old age is a b!tch.
For the rest of the software I intend to start with a qualifying program and a round robin race program to take up to 50 entries. This will fit into the devices memory without problems. Bells and whistles will be added as needed and possible.
I think this is a worthwhile project for people with small tracks and/or budgets so if anyone is interested and wants more info please post questions on this thread. Cheers,
This device attaches to the 26 pin IDC male header at the rear of your Maximite or DuinoMite. It also has provision for a 30 pin header that is compatible with the CGMMSTICK1 pinout.
Mick Gulovsen designed a tester PCB (called Test-A-Mite) that will put the MaxiMite and DuinoMite through its paces and test the following features are working correctly on our `mites.
Analog Input
Digital Input & Output
Frequency Input
Period Input
Count Input
It also has a few LED Demo routines for Fun and lets face it who doesnt like fun..
Fun LED chases as follows:
Simple LED Chase
LED Bar Graph Display
LED Cross Over
Binary Counting
All information can be found HERE including some short video clips of a DuinoMite-mini connected to the Test-A-Mite doing each of the Fun LED chases
The schematic and part list is all available above so it is not too hard to make your own, or PCBs are available from Dontronics for $5.95AUD, or $7.95AUD including World wide Postage in a LETTER
NOTE ***
This PCB can also be used as a CGMMSTICK1 to 26 pin IDC connector adapter board.
The Test-a-Mite
We can post off the Test-a-Mite bare printed circuit board in a letter, world wide at a very cheap rate. In fact, we will do it for an extra $2. See this Page for details: www.dontronics-shop.com/test-a-mite-letter.html
This is an all through hole design, so the user can build it easily themselves. Anyone who has done a little electronics work, should have very little trouble soldering this kit together.
The board measures 81.3mm by 71.1mm (3.2" by 2.8") , 1.6mm thickness.
As many parts may be awkward to chase up, we have given detailed instructions on where they can be obtained in the PDF manual.
The parts we do have readily available are listed in the bundled groups of prices below. This includes a R/A 26 pin IDC female connector, and a R/A 26 pin IDC male connector for the input and output of this board.
You may also like to purchase a 26 pin 10cm IDC Female to Female header cable. This may be handy if your board design doesn't allow the Test-a-Mite to plug straight into the MaxiMite, or DuinoMite board. At times, power cables, USB cables, or other connectors, may be blocking your path. Check this out. You may need a cable.
Prices: We have set up prices starting at $5.95 for a PCB only, to $12.95 for the parts we have available:
Bare Test-a-Mite PCB: $5.95AUD
Bare Test-a-Mite PCB
Bundle A: $9.95AUD
Bare Test-a-Mite Printed Circuit Board, plus a 26 pin 10cm IDC Female to Female header cable.
Bundle B: $8.95AUD
Includes Test-a-Mite PCB plus a R/A 26 pin IDC female connector, and a R/A 26 pin IDC males connector.
Bundle C: $12.95AUD
IncludesTest-a-Mite PCB plus a 26 pin 10cm IDC Female to Female header cable, plus a R/A 26 pin IDC female connector, and a R/A 26 pin IDC males connector.
The Bundled kits do not include all parts. Only the items included above.
Schematics and all other relevant files are available from: HERE
Support:
If you need additional support on the above product, and you can't find the information you need in the documentation, then please contact support at the address below:
A help Menu for the MaxiMite and DuinoMite, was spoken about for many months, but nothing was ever done about it until Bryan Cunnington decided to take it on as his very first major DuinoMite project.
Bryan was given advise and guidance mainly by Mick Gulovsen, plus a little help from me, and then Ken Segler integrated the system into the DuinoMite firmware.
The text files that needed to be gathered up, and aligned to suit the screen format, took Bryan many, many hours I know, however the results speak for themselves.
It has produced a knockout on-line help system, and one that can be readily updated, as it is simply text files that appear on the SD Card as B:\Help\*.txt
All files must be unzipped and placed into a help directory on the B: drive. It is that simple.
As you will see, Trev has already spend many days and nights, as he put it, updating these help files in the following ways:
Changes
=======
* Added help for missing commands (eg DRIVE, STEP, RMDIR;)
* Added an ASCII table (ascii.txt);
* Updated help.txt;
* Updated setup.txt;
* Fixed typos;
* Replaced Word high-ASCII characters (eg "smart quotes" etc) with standard ascii;
* Fixed asterisks (should have been hashes);
* Added (tested) examples for almost every command, function etc;
* Fixed incorrect command definitions (eg SGN(), DO…WHILE…LOOP, DO…WHILE…UNTIL);
* Removed some MaxiMite specific content and references.
NOTE*****
As "help" is simply displaying text files from the SD card, any loaded programs are not disturbed in any way.
As the SD card is usually measured in Gigabytes, this is an unlimited help system. Just keep adding help text, post-it notes, names, addresses, phone numbers, or whatever data you wish to save.
Bryan did this work initially, so that the MaxiMite and DuinoMite groups can both benefit, as this help system is all open source, however the MaxiMite firmware hasn't taken advantage of it yet. It is another one of those projects that it would be nice to see on both systems.
Not only did Geoff Graham pull the open source code after MaxiMite after V2.7a, he also pulled his MaxiMite Support in an open Forum.
OK, I'm silly, we will do it ourselves via the DuinoMite Forum, and what's more we will attempt to do it in a friendly manner without all of the anger directed at Geoff Graham in taking out these recent actions, and previous actions by him against all members of the DuinoMite team.
He has a bad habit of dropping web links to people he doesn't agree with. He dropped links to http://www.themaximitecomputer.com/ the day he did his big dummy spit on the DuinoMite device. This site was set up to support Geoff Graham and the MaxiMite.
He dropped links to: The Back Shed forum. Glenn was amazed that he would do this after everything that Glenn had done for him. I was pretty amazed at this action too. It was very unfair on Glenn, and has a massive impact on all existing MaxiMite users.
If you want MaxiMite support, you can now do one of two things.
1) Write to Geoff Graham direct via an email. As he doesn't give us the courtesy of links, I no longer provide links back to him.
We are doing this because we all fell in love with the MaxiMite and it doesn't deserve to be killed off by its creator.
Our Crime? We changed the schematic. We didn't break the law. We changed the schematic on an open source hardware and software project. DuinoMite is still 100% software compatible with MM-Basic.
Sorry, is this now closed open source code? I don't understand. Don…
Source Code to MMBasic By Geoff Graham 3-Jan-2012
The source code for version 3.0 and later of MMBasic is available via subscription (free of charge) to individuals for personal use. This means that if you are interested in how the language works and would like to modify it for your own use, you can do that easily. This license does NOT include the right to redistribute the source or object files generated from the source (modified or not). If you would like to do that you must obtain prior written permission.
My intention here is to ensure that the language is not fragmented with competing versions and that any proposed changes are compatible with the design and philosophy of the language. I have taken this course of action because of some unfortunate experiences with distributing previous versions under GNU GPL 3.
If you would like to be added to the subscription list for 3.X please send an email to projects@geoffg.net .
This does not mean that MMBasic is closed source (the opposite of open source). Version 2.7A is available for download (below) under the GNU GPL 3 open source license and is a complete implementation of the BASIC language with a huge number of features. The only code that I am not releasing under the GNU GPL is my recent work which created version 3.0.
This work contains other peoples work who thought they were contributing to an open source project. They have specifically placed the GPL license in the comments. Where do they stand?
Don...