The Maximite Computer

Check out the new MaxiMite compatible on a PLCC68 socket from http://dimitech.com A system on a module.

Don's Dynamite DuinoMite Discount Deals
Around $25 for a complete computer system, such as the DuinoMite-Mini:
http://www.dontronics-shop.com/olimex-duinomite-mini.html

For further information, please go to:
http://www.dontronics-shop.com/the-maximite-computer.html

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.

Posted in News | Tagged , | Comments Off

MaxiMite-15Pin-DM-Mini

Product: 17011
All Dontronics MaxiMite Computer products are located at:
 
http://www.dontronics-shop.com/the-maximite-computer.html

MaxiMite-15Pin-DM-Mini

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 15 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 believe that 85% of all home-brew hardware applications use 12 or less GPIO pins. See: http://www.duinomite.com/duinomite-ultra-budget-computer-system-for-slot-cars/ for what can be achieved with a 15 pin DuinoMite running under MaxiMite MM-Basic.

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 15 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.

DuinoMite Firmware Update Guide:
http://www.duinomite.com/duinomite-firmware-update-guide/

Geoff Graham's MaxiMite Page (for all documentation, manuals etc.)
http://geoffg.net/maximite.html
 
Geoff Graham's MaxiMite Download Page (for all files)

http://geoffg.net/Downloads/Maximite/

MaxiMite "The Back Shed" Support Forum:
http://www.thebackshed.com/forum/forum_topics.asp?FID=16&PN=1

All of these Dontronics DuinoMite Products can all be converted to 15 Pin MaxiMites:
http://www.dontronics-shop.com/olimex-duinomite-mini.html
http://www.dontronics-shop.com/olimex-duinomite.html
http://www.dontronics-shop.com/olimex-duinomite-mega.html

All Dontronics MaxiMite-DuinoMite Products:
http://www.dontronics-shop.com/the-maximite-computer.html

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 15 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

Support:

MaxiMite "The Back Shed" Support Forum:
http://www.thebackshed.com/forum/forum_topics.asp?FID=16&PN=1

  1. Do you need additional support on this product?

  2. You can't find the information you need in the documentation?

  3. You wish to know what is included in the package?

  4. The download links on this product page aren't working correctly?

  5. Any questions not covered in the above list?

Then please click here.

A DuinoMite specific support Forum is also available at Ken Segler Designs.

The DuinoMite Newsletter Subscription page is at:
http://www.dontronics-shop.com/mailing-list-dontronics-newsletter.html
This will keep you up to date with DuinoMite Firmware and other News

 Back To Top
Posted in News | Tagged , , , | Comments Off

MaxiMite-DuinoMite and SimmStick.

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.

There has been some recent chat on TBS forum that reminded me that I should produce some up to date answers: http://www.thebackshed.com/forum/forum_posts.asp?TID=4876&PN=1

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.

Rob designed the DT209:
http://www.dontronics.com/dt209.html
http://www.dontronics-shop.com/dt209-2.html
and gave me the PCB artwork, so I could manufacture them for all users.

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

I have been selling out my old stock of SimmStick boards at prices from $1 to $2. See: http://www.dontronics-shop.com/simmstick-and-related.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.

See:
http://www.circuitgizmos.com/products/cgmmstick1/cgmmstick1.shtml

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.

The boards pictured are a DuinoMite-Mini connected to a SimmStick DT203 LEDs and Switches board.

 

The Test-a-Mite boards can be purchased from:
http://www.dontronics-shop.com/test-a-mite.html

Or 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.
http://www.dontronics-shop.com/test-a-mite-letter.html

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.

Links:

http://www.dontronics-shop.com/simmstick-fifteen-years-on.html

http://www.dontronics-shop.com/simmstick-and-related.html

http://www.dontronics.com/ssinfo.html

http://www.dontronics.com/ssinfo_dg.html

http://www.dontronics.com/ssinfo_dg.html#pin
 

Cheers Don…

Posted in Applications | Tagged , , , | Comments Off

Best Price on MaxiMite Blank Printed Circuit Boards

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

Posted in News | Tagged , , | Comments Off

MaxiMite-DuinoMite: Ultra Budget Computer System for slot cars.

http://www.auslot.com/forums/index.php?/topic/14672-ultra-budget-computer-system/

If you'd like a 4 lane computer system for your track for under $100 dollars then please read on.

I found these at http://www.dontronics-shop.com/

Posted Image Posted Image

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 -

Posted Image

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

Posted Image

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.

Software can be downloaded here – http://johnsonsystem…1/DSoftware.txt

If you're still interested here are some specs.

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,

Garry J

Posted in News | Tagged , , , , | Comments Off

MaxiMite, DuinoMite & CGMMSTICK1 GPIO Tester.

All Dontronics Maximite Computer products are located at: http://www.dontronics-shop.com/the-maximite-computer.html

This product can be found at: http://www.dontronics-shop.com/test-a-mite.html

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.

 


Software Download:

All software can be downloaded from: HERE

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:


Support Forum:
http://www.kenseglerdesigns.com/cms/forums/index.php
http://www.thebackshed.com/forum/forum_topics.asp?FID=16&PN=1

This product is from: Dontronics

The Maximite Computer Blog
http://www.duinomite.com/

 

Posted in News | Tagged , , , , , , | Comments Off

DuinoMite On-Line Help Menu.

DuinoMite On-Line Help Menu.

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.

> files
Directory: \HELP
.                    <DIR>
..                   <DIR>
ABS.TXT                236
ASC.TXT                560
ASCII.TXT             2753
ATN.TXT                379
AUTO.TXT              1032
CHDIR.TXT              391
CHR.TXT                618
CINT.TXT               417
CIRCLE.TXT             632
CLEAR.TXT              446
CLOSE.TXT              363
CLS.TXT                136
CLS_CON.TXT            129
CONTINUE.TXT           412
COS.TXT                468
CWD.TXT                330

ETC…….

The files can be found at:
http://www.duinomite.com/files/index.php?dir=Hardware%2FDontronics%2FOlimex%2FCommand+Help%2F

The current DuinoMite KSD forum thread can be found at:
http://www.kenseglerdesigns.com/cms/forums/viewtopic.php?f=4&t=193

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.

Below are a few simple screen dumps:

> help

 

> help "pause

 

> help "auto

Comments and feed back welcome.

Cheers Don…
 

Posted in Applications | Tagged , , , , , | Comments Off

Maximite SM1 First Production Version

Product no longer available, please go to:
http://www.dontronics-shop.com/the-maximite-computer.html
 

-2011-06-30
First production boards have just landing. Still have to be populated.

http://www.dontronics-shop.com/maximite-sm1.html
 

-2011-07-06
First Pictures.

Posted in News | Tagged , | Comments Off

Why Johnny Can’t Code

As the original link has been lost in cyberspace, I have reposted the article here:

Why Johnny can't code

BASIC used to be on every computer a child touched — but today there's no easy way for kids to get hooked on programming.
BY DAVID BRIN

For three years — ever since my son Ben was in fifth grade — he and I have engaged in a quixotic but determined quest: We've searched for a simple and straightforward way to get the introductory programming language BASIC to run on either my Mac or my PC.

Why on Earth would we want to do that, in an era of glossy animation-rendering engines, game-design ogres and sophisticated avatar worlds? Because if you want to give young students a grounding in how computers actually work, there's still nothing better than a little experience at line-by-line programming.

Only, quietly and without fanfare, or even any comment or notice by software pundits, we have drifted into a situation where almost none of the millions of personal computers in America offers a line-programming language simple enough for kids to pick up fast. Not even the one that was a software lingua franca on nearly all machines, only a decade or so ago. And that is not only a problem for Ben and me; it is a problem for our nation and civilization.

Oh, today's desktops and laptops offer plenty of other fancy things — a dizzying array of sophisticated services that grow more dazzling by the week. Heck, I am part of that creative spasm.

Only there's a rub. Most of these later innovations were brought to us by programmers who first honed their abilities with line-programming languages like BASIC. Yes, they mostly use higher level languages now, stacking and organizing object-oriented services, or using other hifalutin processes that come prepackaged and ready to use, the way an artist uses pre-packaged paints. (Very few painters still grind their own pigments. Should they?)

And yet the thought processes that today's best programmers learned at the line-coding level still serve these designers well. Renowned tech artist and digital-rendering wizard Sheldon Brown, leader of the Center for Computing in the Arts, says: "In my Electronics for the Arts course, each student built their own single board computer, whose CPU contained a BASIC ROM [a chip permanently encoded with BASIC software]. We first did this with 8052's and then with a chip called the BASIC Stamp. The PC was just the terminal interface to these computers, whose programs would be burned into flash memory. These lucky art students were grinding their own computer architectures along with their code pigments — along their way to controlling robotic sculptures and installation environments."

But today, very few young people are learning those deeper patterns. Indeed, they seem to be forbidden any access to that world at all.

And yet, they are tantalized! Ben has long complained that his math textbooks all featured little type-it-in-yourself programs at the end of each chapter — alongside the problem sets — offering the student a chance to try out some simple algorithm on a computer. Usually, it's an equation or iterative process illustrating the principle that the chapter discussed. These "TRY IT IN BASIC" exercises often take just a dozen or so lines of text. The aim is both to illustrate the chapter's topic (e.g. statistics) and to offer a little taste of programming.

Only no student tries these exercises. Not my son or any of his classmates. Nor anybody they know. Indeed, I would be shocked if more than a few dozen students in the whole nation actually type in those lines that are still published in countless textbooks across the land. Those who want to (like Ben) simply cannot.

Now, I have been complaining about this for three years. But whenever I mention the problem to some computer industry maven at a conference or social gathering, the answer is always the same: "There are still BASIC programs in textbooks?"

At least a dozen senior Microsoft officials have given me the exact same response. After taking this to be a symptom of cluelessness in the textbook industry, they then talk about how obsolete BASIC is, and how many more things you can do with higher-level languages. "Don't worry," they invariably add, "the newer textbooks won't have any of those little BASIC passages in them."

All of which is absolutely true. BASIC is actually quite tedious and absurd for getting done the vast array of vivid and ambitious goals that are typical of a modern programmer. Clearly, any kid who wants to accomplish much in the modern world would not use it for very long. And, of course, it is obvious that newer texts will abandon "TRY IT IN BASIC" as a teaching technique, if they haven't already.

But all of this misses the point. Those textbook exercises were easy, effective, universal, pedagogically interesting — and nothing even remotely like them can be done with any language other than BASIC. Typing in a simple algorithm yourself, seeing exactly how the computer calculates and iterates in a manner you could duplicate with pencil and paper — say, running an experiment in coin flipping, or making a dot change its position on a screen, propelled by math and logic, and only by math and logic: All of this is priceless. As it was priceless 20 years ago. Only 20 years ago, it was physically possible for millions of kids to do it. Today it is not.

In effect, we have allowed a situation to develop that is like a civilization devouring its seed corn. If an enemy had set out to do this to us — quietly arranging so that almost no school child in America can tinker with line coding on his or her own — any reasonably patriotic person would have called it an act of war.

Am I being overly dramatic? Then consider a shift in perspective.

First ponder the notion of programming as a series of layers. At the bottom-most level is machine code. I showed my son the essentials on scratch paper, explaining the roots of Alan Turing's "general computer" and how it was ingeniously implemented in the first four-bit integrated processor, Intel's miraculous 1971 4004 chip, unleashing a generation of nerdy guys to move bits around in little clusters, adding and subtracting clumps of ones and zeroes, creating the first calculators and early desktop computers like the legendary Altair.

This level of coding is still vital, but only at the realm of specialists at the big CPU houses. It is important for guys like Ben to know about machine code — that it's down there, like DNA in your cell — but a bright kid doesn't need to actually do it, in order to be computer-literate. (Ben wants to, though. Anyone know a good kit?)

The layer above that is often called assembler, though there are many various ways that user intent can be interpreted down to the bit level without actually flicking a series of on-off switches. Sets of machine instructions are grouped, assembled and correlated with (for example) ASCII-coded commands. Some call this the "boringest" level. Think of the hormones swirling through your body. Even a glimpse puts me to sleep. But at least I know that it is there.

The third layer of this cake is the operating system of your computer. Call it BIOS and DOS, along with a lot of other names. This was where guys like Gates and Wozniak truly propelled a whole industry and way of life, by letting the new desktops communicate with their users, exchange information with storage disks and actually show stuff on a screen. Cool.

Meanwhile, the same guys were offering — at the fourth layer — a programming language that folks could use to create new software of their very own. BASIC was derived from academic research tools like beloved old FORTRAN (in which my doctoral research was coded onto punched paper cards, yeesh). It was crude. It was dry. It was unsuitable for the world of the graphic user interface. BASIC had a lot of nasty habits. But it liberated several million bright minds to poke and explore and aspire as never before.

The "scripting" languages that serve as entry-level tools for today's aspiring programmers — like Perl and Python — don't make this experience accessible to students in the same way. BASIC was close enough to the algorithm that you could actually follow the reasoning of the machine as it made choices and followed logical pathways. Repeating this point for emphasis: You could even do it all yourself, following along on paper, for a few iterations, verifying that the dot on the screen was moving by the sheer power of mathematics, alone. Wow! (Indeed, I would love to sit with my son and write "Pong" from scratch. The rule set — the math — is so simple. And he would never see the world the same, no matter how many higher-level languages he then moves on to.)

The closest parallel I can think of is the WWII generation of my father — guys for whom the ultra in high tech was automobiles. What fraction of them tore apart jalopies at home? Or at least became adept at diagnosing and repairing the always fragile machines of that era? One result of that free and happy spasm of techie fascination was utterly strategic. When the "Arsenal of Democracy" began churning out swarms of tanks and trucks and jeeps, these were sent to the front and almost overnight an infantry division might be mechanized, in the sure and confident expectation that there would be thousands of young men ready (or trainable) to maintain these tools of war. (Can your kid even change the oil nowadays? Or a tire?)

The parallel technology of the '70s generation was IT. Not every boomer soldered an Altair from a kit, or mastered the arcana of DBASE. But enough of them did so that we got the Internet and Web. We got Moore's Law and other marvels. We got a chance to ride another great technological wave.

So, what's the parallel hobby skill today? What tech-marvel has boys and girls enthralled, tinkering away, becoming expert in something dazzling and practical and new? Shooting ersatz aliens in "Halo"? Dressing up avatars in "The Sims"? Oh sure, there's creativity in creating cool movies and Web pages. But except for the very few who will make new media films, do you see a great wave of technological empowerment coming out of all this?

OK, I can hear the sneers. Are these the rants of a grouchy old boomer? Feh, kids today! (And get the #$#*! off my lawn!)

Fact is, I just wanted to give my son a chance to sample some of the wizardry standing behind the curtain, before he became lost in the avatar-filled and glossy-rendered streets of Oz. Like the hero in "TRON," or "The Matrix," I want him to be a user who can see the lines that weave through the fabric of cyberspace — or at least know some history about where it all came from. At the very minimum, he ought to be able to type those examples in his math books and use the computer the way it was originally designed to be used: to compute.

Hence, imagine my frustration when I discovered that it simply could not be done.

Yes, yes: For three years I have heard all the rationalized answers. No kid should even want BASIC, they say. There are higher-level languages like C++ (Ben is already — at age 14 — on page 200 of his self-teaching C++ book!) and yes, there are better education programs like Logo. Hey, what about Visual Basic! Others suggested downloadable versions like q-basic, y-basic, alphabetabasic…

Indeed, I found one that was actually easy to download, easy to turn on, and that simply let us type in some of those little example programs, without demanding that we already be manual-chomping fanatics in order to even get started using the a thing. Chipmunk Basic for the Macintosh actually started right up and let us have a little clean, algorithmic fun. Extremely limited, but helpful. All of the others, every last one of them, was either too high-level (missing the whole point!) or else far, far too onerous to figure out or use. Certainly not meant to be turn-key usable by any junior high school student. Appeals for help online proved utterly futile.

Until, at last, Ben himself came up with a solution. An elegant solution of startling simplicity. Essentially: If you can't beat 'em, join 'em.

While trawling through eBay, one day, he came across listings for archaic 1980s-era computers like the Apple II. "Say, Dad, didn't you write your first novel on one of those?" he asked.

"Actually, my second. 'Startide Rising.' On an Apple II with Integer Basic and a serial number in five digits. It got stolen, pity. But my first novel, 'Sundiver,' was written on this clever device called a typewrit –"

"Well, look, Dad. Have you seen what it costs to buy one of those old Apples online, in its original box? Hey, what could we do with it?"

"Huh?" I stared in amazement.

Then, gradually, I realized the practical possibilities.

Let's cut to the chase. We did not wind up buying an Apple II. Instead (for various reasons) we bought a Commodore 64 (in original box) for $25. It arrived in good shape. It took us maybe three minutes to attach an old TV. We flicked the power switch … and up came a command line. In BASIC.

Uh. Problem solved?

I guess. At least far better than any other thing we've tried!

We are now typing in programs from books, having fun making dots move (and thus knowing why the dots move, at the command of math, and not magic). There are still problems, like getting an operating system to make the 5141c disk drive work right. Most of the old floppies are unreadable. But who cares? (Ben thinks that loading programs to and from tape is so cool. I gurgle and choke remembering my old Sinclair … but whatever.)

What matters is that we got over a wretched educational barrier. And now Ben can study C++ with a better idea where it all came from. In the nick of time.

Problem solved? Again, at one level.

And yet, can you see the irony? Are any of the masters of the information age even able to see the irony?

This is not just a matter of cheating a generation, telling them to simply be consumers of software, instead of the innovators that their uncles were. No, this goes way beyond that. In medical school, professors insist that students have some knowledge of chemistry and DNA before they are allowed to cut open folks. In architecture, you are at least exposed to some physics.

But in the high-tech, razzle-dazzle world of software? According to the masters of IT, line coding is not a deep-fabric topic worth studying. Not a layer that lies beneath, holding up the world of object-oriented programming. Rather, it is obsolete! Or, at best, something to be done in Bangalore. Or by old guys in their 50s, guaranteeing them job security, the same way that COBOL programmers were all dragged out of retirement and given new cars full of Jolt Cola during the Y2K crisis.

All right, here's a challenge. Get past all the rationalizations. (Because that is what they are.) It would be trivial for Microsoft to provide a version of BASIC that kids could use, whenever they wanted, to type in all those textbook examples. Maybe with some cool tutorial suites to guide them along, plus samples of higher-order tools. It would take up a scintilla of disk space and maybe even encourage many of them to move on up. To (for example) Visual Basic!

Or else, hold a big meeting and choose another lingua franca, so long as it can be universal enough to use in texts, the way that BASIC was.

Instead, we are told that "those textbooks are archaic" and that students should be doing "something else." Only then watch the endless bickering over what that "something else" should be — with the net result that there is no lingua franca at all, no "basic" language so common that textbook publishers can reliably use it as a pedagogical aide.

The textbook writers and publishers aren't the ones who are obsolete, out-of-touch and wrong. It is people who have yanked the rug out from under teachers and students all across the land.

Let me reiterate. Kids are not doing "something else" other than BASIC. Not millions of them. Not hundreds or tens of thousands of them. Hardly any of them, in fact. It is not their fault. Because some of them, like my son, really want to. But they can't. Not without turning into time travelers, the way we did, by giving up (briefly) on the present and diving into the past. (I also plan to teach him how to change the oil and fix a tire!) By using the tools of a bygone era to learn more about tomorrow.

If this is a test, then Ben and I passed it, ingeniously. In contrast, Microsoft and Apple and all the big-time education-computerizing reformers of the MIT Media Lab are failing, miserably. For all of their high-flown education initiatives (like the "$100 laptop"), they seem bent on providing information consumption devices, not tools that teach creative thinking and technological mastery.

Web access for the poor would be great. But machines that kids out there can understand and program themselves? To those who shape our technical world, the notion remains not just inaccessible, but strangely inconceivable.

Posted in Links & MM Basic Help | Tagged , | 2 Comments

Maximite Compatible. The World’s First Arduino Computer.

Maximite Compatible. The World's First Arduino Computer.
By Don McKenzie. Dontronics.com

An Open Source Hardware Project. (OSHW)

An update to this story can be found at:
http://www.themaximitecomputer.com/duinomite-a-maximite-compatible-from-olimex/

In the Arduino movie documentary: http://arduinothedocumentary.org/

The question is posed, "At least one Arduino Computer, Why Not?"

The Italian Arduino project was initially based on an AVR micro,
(early history states PIC was first used, see: http://www.thebackshed.com/forum/forum_posts.asp?TID=3926&PN=1)
and the "C" language. Because of the success of the platform, it recently migrated across to Microchip's PICmicro hardware originally based on the 18F2550, and called Pinguino. See: http://www.hackinglab.org/pinguino/index_pinguino.html

This has now moved onto PIC32 micros, and boards have recently been manufactured by Olimex in Bulgaria. see: http://www.olimex.com/dev/pic32-pinguino.html

Many other PICmicro Arduino type boards have also appeared. I apologize for not covering them all in this small introduction.

Now for the strange twist, to move it onto what you could possibly call a computer system.

An Australian by the name of Geoff Graham, has come up with a small computer system based on the PIC32MX695F512H. The PIC32MX795F512H (with CAN) can also be used. This is called The Maximite Computer, and has been reasonably successful in Australia, however is basically unknown to the rest of the world.

This computer system uses BASIC, not "C", in fact BASIC very much like the old TRS-80 and Commodore computers of 30+ years ago.

This is a portion of Geoff's description from his Maximite project page at: http://geoffg.net/maximite.html

The Maximite 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 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

Geoff's design allows you to run this computer system as a stand alone unit with local VGA and keyboard, or via a USB connection to any computer system that supports USB and a terminal program. You can use either, or both at the same time.

What makes this computer (or Micro-Controller) unique is that you power it up. You don't need to load any software, and write a simple program like PRINT "Hello World" in BASIC. You can control the 20 input output pins very simply just setting them high, or low, or reading them in. You don't have to learn "C". When your simple program is written, you can save the basic text program to an SD card, that can be read and saved on your PC. Support Forum is extremely active.

And why not have the ability to program all of the Arduino shields in BASIC? It is only software, and it will be generated by users eventually.

I was adapting the Maximite design as best I could to the Arduino shield platform, so we could take advantage of the many available shields, but it became apparent to many people that the Olimex PIC32 Pinguino board, was very close to what was required for a Maximite Arduino Computer.

Olimex and Dontronics have gathered a small team together to match the Maximite software and hardware to the Pinguino platform.

This is a Maximite compatible product, however there is no official support, apart from the Help Forum members.

Let me point out that I am just a customer, and this will be an Olimex board, not a Dontronics board, so it will be available for everyone.

We are going over the final details now, and it is almost design by committee, so it is very awkward to pin everything down.

It goes from a basic Maximite circuit, right up to a fully populated PIC32 do everything board.

But this isn't possible of course, on something the size of an Arduino footprint, so there will be trade offs.

What we must have:
Arduino connector with compatible port arrangement i.e. SPI, I2C etc connected on proper pins to make maximal compatibility with Arduino shields.

Plus:
- USB
- VGA
- PS/2
- microSD card
- Audio connector
- Composite video connector
- user button, reset button
- two LEDs

An I/O satellite board with audio, video, VGA, and Keyboard sockets, will attach via a 10 pin IDC connector. This is the 10 pin header on the left of the above picture.

And there may be a whole host of features added that are much the same as the Olimex Pinquino boards. If these aren't added initially, they may be allowed for in the artwork so that they can be populated to different levels, and possibly ordered with the required level to suit the end user.

The standard Olimex UEXT header allows for WiFi, Zigbee, Ethernet, RELAY-IO, RFID etc modules to be connected. This is the header on the right hand side.

Ethernet on board will just raise the cost. Once we have the UEXT header, we can connect MOD-ENC28J60 or MOD-WIFI to implement internet /ethernet connectivity.

PLEASE NOTE ***

Possibly none of these enhancements over the standard Maximite features, will be supported in the official MM-Basic, but there is the possibility they will be included by other users, such is the beauty of Open Source hardware and Software, we cannot expect support to be offered on this board from Geoff Graham

Eventually of course, anything can, and will happen. I know it will be user driven.

I could list the features that may be added. It is really mind boggling, but to be fair, I should only mention the items that we are 100% certain of at this point.

And I know it will be a great board for C programmers also. They should also be able to make use of the VGA and keyboard connectors with suitable drivers.

FAQ:

Q) When will it happen?
A) Approx. October 2011.

Q) Will the 20 I/O pins be different to the currently produced Maximites?
A) Yes, as there is no other way of arranging the Arduino shields to be as compatible as possible on a PIC32 Micro, apart from re-assigning the current pins.
Geoff Graham, will support the original Maximite I/O configuration, into the foreseeable future. But of course the firmware will take the pin changes into account and will work as a maximite and run all of the current software without change.

Q) Is there any software support for the Olimex Maximite Compatible Board?
A) No. However Help Forum members should be able to assist on most occasions.

All of Dontronics current Maximite products can be seen at:
http://www.dontronics-shop.com/the-maximite-computer.html

Standard Maximite Boards Assembled and Tested are available from:
http://www.dontronics-shop.com/maximite-sm1.html

A dedicated blog can be found at: http://www.themaximitecomputer.com/

On Line support from the designer and other Forum members: http://www.thebackshed.com/forum/forum_topics.asp?FID=16&PN=1
Support is only available for official Maximite boards that are using the original schematic, and not compatibles.

Posted in News | Tagged , | 8 Comments