HACKING DuinoMite BASIC

HACKING DuinoMite BASIC

Image

HACKING DuinoMite BASIC

There is FIRMWARE WISHLIST on Ken Segler Designs forum and I post there a lot with requests for this or that command to be add :)

As the DM-BASIC code is over 30 000 lines I never looked at it in detail, just if wanted to see how some command works I was looking at the specific code which implements it.

Overall I though it’s difficult and confusing to touch in so big code as I could easily mess up something with the other commands.

Iggy from KSD forum did some commands recently for me and when he submited them to Ken to include in the mainstream code I was amazed how simple was to add command to DM-BASIC.

For instance he implemented function DM.VMEM which returns the first address of the video RAM as Nick requested on TBS forum, the code insertion was:

in graphics.h there is one line to add:

// Ingmar
{ “DM.VMEM”, T_FNA | T_NBR, 0, fun_vmem },

this row define the name of the new statement: “DM.VMEM” then define it as FUNCTION returning NUMBER and will call fun_vmem() to get it’s value

and in graphics.c there is this code snip to add:

/////////////////////////////////////////////
// Returns lower 16 bits of video buffer.
// This assumes the upper 16 bits always start 0xa000, maybe we should return all 32 bits?
/////////////////////////////////////////////
void fun_vmem(void) {
int vmem = (int)VA;

vmem &= 0x0000ffff;
fret = (float)vmem;
}

so with adding 5 lines of code we already have new DM.VMEM function which returns the address of the Video buffer!

WOW! I didn’t expect it to be SO easy!

now let’s see how he implemented SHIFTOUT:

first define it in external.h
// Ingmar
{ “SHIFTOUT”, T_CMD, 0, cmd_shiftout },

this time this is COMMAND i.e. do not return value and the code is at cmd_shiftout()

and the code is put in external.c

///////////////////////////////////////////////
// This is invoked as a command (ie, shiftout(Dpin, Clkpin, Mode, OutStr, NumBits) )
// Remember that the string returned in outstr will have the length in byte 0, outstr[0]

#define uDly(a) {WriteCoreTimer(0); while(ReadCoreTimer() < a);}

void cmd_shiftout(void) {
int dpin, cpin, mode, nbits;
int ix, iy; // loop counter
int cnt; // number of bytes to output.
unsigned char mybyte;

char * outstr;

const int BDLY = 3; // Determines clocking rate. # of CoreTimer cycles.

getargs(&cmdline, 9, “,”); // Get the arguments, we should have five, comma seperated.

if (argc < 9) error(“Invalid syntax”); // Test number of arguments given.

dpin = getinteger(argv[0]); // Data pin
cpin = getinteger(argv[2]); // Clock pin
mode = getinteger(argv[4]); // Mode
outstr = getstring(argv[6]); // String to clock out,treated as an array of bytes.
nbits = getinteger(argv[8]); // Number of bits to clock out

if (nbits < 1 || nbits > (outstr[0] * 8)) error(“Too many/few bits”);

if (dpin < 0 || dpin > NBRPINS || cpin < 0 || cpin > NBRPINS) error(“Invalid pin number”);
if (ExtCurrentConfig[dpin] >= EXT_COM_RESERVED || ExtCurrentConfig[cpin] >= EXT_COM_RESERVED) error(“Pin is allocated to a communications function”);

// At this point we should have a valid number of arguments and some possibly valid IO pins.

cnt = (nbits – 1) / 8; // Tells us who many complete bytes to loop over.
cnt++; // at least one byte even if it is a partial byte.

ExtSet(cpin,0); // CLK pin low
uDly(BDLY);

if (mode == 0) { // shift bits out LSB first starting at the END of the string.

for (ix=0; ix<nbits; ix++) { // loop through all bits
iy = ix / 8; // byte offset

mybyte = outstr[outstr[0]-iy]; // current byte being output

if (mybyte & (1 << (ix & 0×07))) {
ExtSet(dpin,1); // output a 1
} else {
ExtSet(dpin,0);
}

uDly(BDLY);
ExtSet(cpin,1); // CLK high
uDly(BDLY);
ExtSet(cpin,0); // CLK low
uDly(BDLY);

} // next bit

} else { // shift bits out MSB first starting at the BEGINNING of the string.

for (ix=0; ix<nbits; ix++) { // loop through all bits
iy = (ix / 8) + 1; // byte offset

mybyte = outstr[iy]; // current byte being output

if (mybyte & (128 >> (ix & 0×07))) {
ExtSet(dpin,1); // output a 1
} else {
ExtSet(dpin,0);
}

uDly(BDLY);
ExtSet(cpin,1); // CLK high
uDly(BDLY);
ExtSet(cpin,0); // CLK low
uDly(BDLY);

} // next bit
}

}

/**********************************************/

the code above is well commented and do not need my comments, again it was very simple to add!

Now let’s hack a bit! I wanted to make my own command to prove the concept!

If you want to do the same:  

First you have to obtain the tools to compile DM sources from MIcrochip web

Download MPLAB 8.80 (166MB) and PIC C32 compiler v1.11b (73 MB) and install them

Then download DM-BASIC latest sources from Olimex Web page www.olimex.com/dev/

Unpack them in working directory and try the project. Note I had to setup the C32 locations manually and to change search path for Olimex.h to build the project successfully. The HEX is compiled and located in OUTPUT directory and named OLIMEX.HEX, use the Bootloader tool to burn in DuinoMite.

I compiled the source first and downloaded to DuinoMite. Everything works OK!

OK then let me try to add HELLO command which writes “Hello World” on the screen

I add in misc.h this line which defines my command:

{ “HELLO”, T_CMD, 0, cmd_hello },

and in misc.c the code to be executed when HELLO is met in BASIC:

void cmd_hello(void) {

MMPrintString(“Hello world!\r\n”);
}

Now let’s compile everything and bootload and try!

Image
it works!

So using this approach you can define ANYTHING you want to have in DM but you miss it, only you should have some basic C knowledge, then to be not afraid of learning new stuff and hacking.

I will personally try to implement next: RCTIME command which will measure capacitance on the GPIO pin in the next days and post the result.

This way you can build your own version of DM-BASIC which to add specific functionallity which is not possible to be done otherwise in pure BASIC. Do not forget DM-BASIC is open source project with GPL 3.0 licensee so whatever you do do not forget to make your sources also available, so the community can benefit from your contribution and the project move forward!

Happy hacking!

Posted in Uncategorized | Leave a comment

Olimex DuinoMite

Product: 16983

In order to make up a complete DuinoMite Computer system using this board, you will need two boards that plug together:
1)
DuinoMite
2) DuinoMite I/O board.

IO Board Connector:

Looking at the picture of the standard DuinoMite board and holding the text in the normal position to be able to read it, the socket to the left is the IO board connection, EXT1.
The socket to the right is the UEXT one, and used for all IO boards that make use of this serial interface.


NOTE*** PIC32MX695 microcontroller is used on this version board. This micro doesn't have CAN on board.

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

Current Firmware News.

Prices | Support | DuinoMite New Commands

Firmware Alternatives:

How about a 12 pin GPIO DuinoMite that is a 100% hardware compatible MaxiMite?

DuinoMite hardware is now supported by Geoff Graham, the MaxiMite designer. Please note that this is limited hardware support, in as much as only 12 of the 20 IDC GPIOs are supported by Geoff's firmware, which is to be expected.

But it does give you a 12 pin GPIO Maximite at a third of the price.

It takes only a few minutes to do a firmware change from the DuinoMite hex file, to the MaxiMite hex file, and just as easy to roll it back into a DuinoMite, if you choose to do so. This means you can build it into what you want very quickly and easily, so you can choose the features you want.

This new MaxiMite version for the DuinoMite  is available for download from: http://geoffg.net/maximite.html#Downloads
Our thanks to Geoff Graham for making this available.

Wish to program the DuinoMite in C?

Olimex Pinguino IDE supports the DuinoMite even now. No need for a special linker script as there is one for the 795 already. Use the existing bootloader that is programmed into the board.
Tsvetan of Olimex.

 

Latest PDF Manual:
http://www.duinomite.com/files/index.php?dir=Hardware%2FDontronics%2FOlimex%2FDocuments%2F

Latest Firmware Update:
http://www.duinomite.com/files/index.php?dir=Hardware%2FDontronics%2FOlimex%2FDownload+Files%2F

No Com4?
No Sound?
No Setup Menu?
Then you possibly have the factory default firmware. It takes a few minutes to run the firmware upgrade program, and get right up to date with the latest release. Look for the version number at the top of the Setup Menu. See the Setup menu picture below.

INTRODUCTION:

DuinoMite is a MaxiMite Compatible Basic computer, originally designed by Geoff Graham, with additional features and Arduino like layout. DuinoMite allows you to program in the BASIC language and have VGA and Keyboard interface, so you can develop and write your code in Basic without the need of any computer. You can store your code on the SD-CARD and execute it on power up though autoexec.bas main code. BASIC programs can easily be exchanged and saved to a PC using either a terminal program and a USB connection, or the SD card. Development can be done on the USB only connection. Fantastic user support via a very active user forum group. The DuinoMite has many advantages over the MaxiMite Computer.

COMPATIBILITY:

SOFTWARE:
The BASIC is 100% software compatible with the original MaxiMite Version 2.7a, however additional commands and features have been added to the DuinoMite.

HARDWARE:
On the MaxiMite, you have access to 20 external I/O connections, compared to a possibility of 22 on the DuinoMite.

There has been BASIC commands added to control both the SD card, and VGA settings for the five pins that are shared on the DuinoMite. However with the internal A: Ram drive, the shared pins of the SD card shouldn't be of any real concern in most cases. With control over both the SD card and the VGA, this means the full 22 GPIOs can be accessed for most applications.
See:
http://www.duinomite.com/duinomite-how-many-gpios-can-duinomite-drive-independantly/

The DuinoMite uses three real UARTs at full speed. There are no real UARTs in the original MaxiMite design, as all serial I/O is bit banged.

UEXT:
Olimex have designed a special serial port using a 10 pin IDC header. It is available on all DuinoMite boards. In fact, the MEGA has two. One internal, and one external. The DuinoMite is capable of high speed data transfers via this serial port, and carries UART serial communications, SPI, and I2C protocols. The I2C protocol is in theory, capable of having 100+ boards cascaded to the 10 pin IDC header, via a flat ribbon cable daisy chain.
For more information:

http://www.dontronics-shop.com/duinomite-uext-boards.html
http://olimex.com/dev/OTHER/UEXT.pdf

PDF Manual:
The DuinoMite manual currently is 230 pages and growing. The origional MaxiMite manual is 37 pages.

All DuinoMite Documents Link

PRICING and QUALITY:

You will find MaxiMite kits on the market with prices right up to $90. There may be $20 or less worth of parts, including the case. These parts are nothing special, however the retail margin certainly is.

DuinoMite assembled boards can be as little as a third of this price in some cases. And all Olimex DuinoMite boards have carefully selected components to work reliably in an INDUSTRIAL temperature range -25+85C so the board can be used in INDUSTRIAL applications. Check the voltage regulation, and low power battery operation for each board. (NOTE Mini board only has +5 Volt input).

MODES OF OPERATION:

MODE 1 Stand Alone:

Run as a PC, by attaching a VGA monitor, or TV, and a PS2 Keyboard. Save files to the SD card, or the internal flash drive.

MODE 2 Terminal Mode from a PC:

Use any computer that supports a USB port, and a Terminal program, and you can run BASIC Programs, and develop directly from your computer. Save files to the SD card, the internal flash drive, or your PC.

MODE 3 Any combination of the above:

You can run two keyboards, and two screens in parallel, or remove any single item, and the unit will still operate. If you are running the standard DuinoMite board as a controller, and you don't need a keyboard, or screen, you can disconnect the IO board completely.

FEATURES:

  • PIC32MX795 microcontroller
  • USB OTG allowing PIC to work as USB device and USB host and allowing Android ADK applications, interface to USB keyboards, Cameras, Printers, etc peripherals
  • 10 pin IO connector for connecting VGA, Audio, Composite Video, PS-2 Keyboard
  • UEXT connector for connecting different Olimex modules
  • 26 pin Maximite like connector
  • micro SD card connector
  • 8Mhz crystal
  • 32768Hz crystal for RTC implementation
  • Low power design allows PIC to work in deep sleep, and peripherials to be shut down
  • Automatic power source change, i.e. you can power this board by External power supply 9-30VDC, USB, or battery, the power switching is automatic.
  • Arduino like format i.e. can work with Arduino shields. (Not on standard DuinoMite)
  • Li-po charger for Lithium Polimer Battery
  • Industrial temperature range design -25C+85C

DOCUMENTS:

Unfortunately Olimex provide links to files and documents on their product pages, that are file name specific, instead of simply pointing to a directory. When they update a version number for instance, the link is broken, and so is every link on the web that every dealer that has gone to the trouble of placing. I have to edit those links when I get customer complains. As such, I don't intend to chase new links for DuinoMite, as I believe there will be many. I would rather edit an external link, or upload a new file, than to edit multiple products all the time. Please let me know if my file or link is out of date.

All DuinoMite Documents Link

HARDWARE:

SOFTWARE:

All of these below programs and systems are under development, and not necessarily completed. Dontronics doesn't wish to sell any DuinoMite board with users thinking that these items are available now, so please ask the appropriate questions on the user forum, if you wish to get any of these running on your DuinoMite. The real problem is the product is too new, and many users are heading in different directions with their development. Yes, the DuinoMite is capable of all of the below, but final useable products may be lagging.
 

  • TRS-80 emulator
  • Retro BSD
  • Space Invaders Game
  • Z80 Emulator runs CPM

Firmware Version: The DuinoMite firmware version will parallel the MaxiMite version, but it will always be a bit behind because of the delay of the release of the current source code, and the time it takes to integrate these changes into the DuinoMite firmware. If you can't see the source code posted at: http://geoffg.net/Downloads/Maximite/ then any changes will not be included.

The DuinoMite versions will have additional features because of the hardware serial ports ect., plus any other new features Ken Segler Designs, or anyone else adds, like the Full Screen Editor and Terminal program. If Geoff Graham wants to add these to the MaxiMite source, then in the spirit of open source, Geoff, or anyone can add it back into the MaxiMite firmware for the benefit of all users.

Check the Olimex site for these and other new files, as they will be updated regularly.

Downloadable Files:

  • Boot-Hex, Firmware-Hex, Serial Driver, Firmware Updater, and all other necessarily files for the operation of DuinoMite, are available from Here.

NOTE ****

UEXT Connector is available on all boards.

IMPORTANT NOTE:

DuinoMite bootloader and CDC virtual COM port console driver use Olimex's USB VID/PID.
DuinoMite is open source project which means that you can copy, reproduce and sell it without restriction,
but this doesn't apply to the Olimex USB VID/PID. 

If you want to build DuinoMite for your own personal use it's OK to use Olimex's USB VID/PID,
but if you want to sell these boards you should obtain your own USB VID/PID from
http://www.usb.org and use them for the DuinoMite boards you produce.

DuinoMite New Commands:

DuinoMite "help" Command:

Unzip and save the help zip files onto your SD card in B:\help and type "help" without the quotes.

 

DuinoMite "setup Command:

Type "setup" without the quotes.



SUPPORT:

  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 Uncategorized | Comments Off

USB-COMi

Product: 16142

Prices | Support | Lost CD or Upgraded your Operating System?

All orders must be placed via the Shopping Cart, unless prior arrangements have been made for special orders.
This includes Government, and Educational orders.

 


See also:
RS485: USB to RS-485 serial adapter
and
RS422: USB to RS-422 serial adapter

 


The USB-COMi converter is housed in a strong plastic enclosure designed for use in rugged application areas . USB-COMi adds a Windows serial Com port via its USB connection and can be configured to work with  RS-422 and RS485  peripherals such as POS and Industrial Control devices. USB Plug and Play allows easy serial port expansion and requires no IRQ, DMA,  or I/O port resources.

USB-COMi features a full set of RS422 / 485 data and control signals ( TX-, TX+, RX+, RX-, GND, RTS-, RTS+, CTS+,
CTS- ) on its DB9  male connector. For details of the DB9 connector pin-out and RS422/RS485 configuration information please refer to our installation guides page.  USB-COMi has an internal 128 byte transmit buffer FIFO and a 384 byte receive buffer FIFO. It supports data transfer rates of up to 230K bps. No external power supply is required as USB-COMi takes its power from the USB bus. USB-COMi comes complete with drivers for Microsoft Windows '98, Windows ME, Windows 2000 and Windows XP. Drivers are also available for Apple OS-8, OS-9 and OS-X as well as Linux. See our drivers page for details.  1.8M cable included.

Signal pinouts of the DB-9 Male
Pin 1 = TxD- (A)
Pin 2 = TxD+ (B)
Pin 3 = RxD+ (B)
Pin 4 = RxD- (A)
Pin 5 = GND
Pin 6 = RTS- (A)
Pin 7 = RTS+ (B)
Pin 8 = CTS+ (B)
Pin 9 = CTS- (A)

Unit is easily removed from the case for configuatrion settings. Requires two screws to be removed, and the board easily slides out of the case. Board measures 3" by 2.4" with the two rear corners trimmed to fit into the case.
 

12-Feb-2004 Steve Murray steve at synergyfilms.co.nz 
USB-COMi RS422 and the Sony Professional Video decks RS422 Protocol.
Hi Don, Got it to work!!!
Butchered a standard DB9F to DB9M and crossed the pins as follows:

 

DB9F(USB-COMi) > DB9M(Sony vtr)
Pin 1 > Pin 8
Pin 2 > Pin 3
Pin 3 > Pin 7
Pin 4 > Pin 2
Pin 5 > Pin 4 & 6
Shell GND > Pin 1 & Shell GND (not sure how important this is…)
Remaining pins disconnected.

This was based on the published pinouts of both the USB-COMi and the Sony RS422 Protocol. Both are easily available on the web.

Feel free to share this as you wish…however as this is very much 'bush electronics' I take no responsibility whatsoever for any unforseen circumstances or damage! Others make use of it at their own risk… Cheers, Steve..

Q1
13-Feb-2004 Elliot Duff wrote: I am interested in purchasing the USB-COMi Converter, however I need a speed of 500kbps. On your page you mention a speed of 230K – whilst on the EasySync page they mention speeds  of 1Mbps.
A1
From: Keith Dingwall keith.dingwall at ftdichip.com
The USB-Comi uses two MAX3086 level converter chips which are capable of up to 10 Mega bps, so it should be capable of 1 MBps.

 


 

User Manual Download:

DOWNLOAD USER MANUAL

Download Page 1 setup Manual

Download Page 2 setup Manual
 


 


Support:

1) Do you need additional support on this product?
2) You can't find the information you need in the documentation?
3) You have upgraded your operating system, and the current CD doesn't cover it?
4) You have lost your CD?
5) You need a list of the Operating Systems this product will operate with? (Covers virtually everything).
6) Any questions not covered in the above list?

then please click here.

 


Back To Top

Posted in Uncategorized | Comments Off

CGMMSTICK1 – Maximite

CGMMSTICK1 – Maximite

This product is sold and shipped by CircuitGizmos in the US.
It  is not Sold, Stocked, or Supported by Dontronics, and can only be purchased directly from
CircuitGizmos. That is why the stock level is showing zero.

If you click on the link, it will take you to the sales page, where you will find additional information on US, and world wide shipping.

This is currently the only fully built up, 100% MaxiMite Computer-Microcontroller available on the market, as all others are in kit form.

SimmSticks and MaxiMite CGMMSTICK1 Compatibility:
SimmSticks are pretty much pin compatible with the MaxiMite CGMMSTICK1, and currently Dontronics has sellout specials of $1 for 1 inch, and $2 for 2 inch blank SimmStick boards. Those available include LEDs & Switches, Relays Boards, Bus Expansion, I2C Expansion, Power Supplies, Proto Boards, and also male and female, straight and right angle, 30 pin headers.
See:
http://www.dontronics-shop.com/simmstick-and-related.html

Maximite-type computer/controller for solderless breadboards

CGMMSTICK1 - Maximite

$29.99 US dollars.

Run BASIC programs to interface to your electronics

The Maximite is a brilliant little computer design created originally by Geoff Graham geoffg.net that runs BASIC.

The CGMMSTICK incorporates a lot of the Maximite design into a small printed circuit boad that conveniently plugs into a solderless breadboard for circuit experimentation. The GCMMSTICK1 is 100% compatible with the maximite firmware developed by Geoff.

Just like the Maximite, the power of the CGMMSTICK1 is the combination of the easily understood but powerful langauge of BASIC and the convenience of electronic interface lines. In short order you can snap a CGMMSTICK1 into a solderless breadboard and interface to circuits with a BASIC program running on the stick. The CGMMSTICK1 has a micro-SD interface for program storage, or for logging.

Twenty I/O lines can be controlled from BASIC and used as basic digital I/O, as SPI ports, as serial ports, as I2C interfaces, and as analog inputs.

Download of Beginning Maximite with the CGMMSTICK1: Beginning Maximite

Australian forum with some support and examples for Maximites: The Back Shed

Download of Maximite Integrated Development Environment: MMIDE

CGMMSTICK1 - Maximite

Pin outs for J1:
1 – 3.3V from regulator
2 – VIDEO1
3 – VIDEO2
4 – NC
5 – VSYNC
6 – KBDDATA
7 – +5V
8 – KBDCLK
9 – GROUND
10 – HSYNC
11 – I/O 1
12 – I/O 2
13 – I/O 3
14 – I/O 4
15 – I/O 5
16 – I/O 6
17 – I/O 7
18 – I/O 8
19 – I/O 9
20 – I/O 10
21 – I/O 11
22 – I/O 12
23 – I/O 13
24 – I/O 14
25 – I/O 15
26 – I/O 16
27 – I/O 17
28 – I/O 18
29 – I/O 19
30 – I/O 20

This product is sold and shipped by CircuitGizmos in the US.
It  is not Sold, Stocked, or Supported by Dontronics, and can only be purchased directly from
CircuitGizmos. That is why the stock level is showing zero.

If you click on the link, it will take you to the sales page, where you will find additional information on US, and world wide shipping.

This is currently the only fully built up, 100% MaxiMite Computer-Microcontroller available on the market, as all others are in kit form.

Posted in Uncategorized | Comments Off

Shipping Delays

Please Note *** All orders shipped from Dontronics, Tullamarine Australia will be delayed for a short period

Dontronics Shipping Delays

Beginning and including Thursday 5th January 2012, and ending and including Wednesday 11th January 2012, all shipments of ALL orders from Dontronics in Tullamarine, Australia, will be delayed due to family commitments.

Web-downloaded software orders and goods shipped from locations outside of Dontronics, Tullamarine, Australia WILL NOT BE AFFECTED.

Shipping of orders placed during this time will occur on  Thursday, 12th January 2012.

You may still order ECI Courier for international orders, and Overnight Express Bags for Australian orders, but all orders will be packaged and despatched on a 'first in' basis.

We list the place of origin on our web pages for all goods sent from locations outside of Dontronics, Tullamarine, Australia but if you are unsure or have any queries at all, please contact our Sales staff. Send us an email

We apologise for any inconvenience this may cause.

Regular customers that wish to be informed about potential delays in future, please send us an email and we will add you to our Dontronics Shipping Delays Notification List.

World Times: (Dontronics is at the right hand side of Australia shown in Blue)
 

Posted in Uncategorized | Comments Off

DuinoMite Computer Blog

More information is available from: The DuinoMite Computer Blog and the The MaxiMite Computer Blog.

Posted in Uncategorized | Comments Off

Maximite EV

These products will reduce in price by 5% every month until they either sell out completely, or reach -90% off.

More information is available from: The Maximite Computer Blog.

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

Prices | Support | Download

The Maximite Computer
http://www.themaximitecomputer.com/maximite-ev-smd/

 

Dontronics Shop:
http://www.dontronics-shop.com/maximite-ev-embedded-version..html

The Maximite Computer. Embedded Version.
Fully Assembled

This version has no keyboard connector, and no VGA connector. It is designed as an end product for applications developed on the Maximite Computer.

This EV board has the same Firmware as the full SM1 board version. It is only missing the keyboard and VGA connectors. If you look at the circuit, all the components are on the board, you just have to connect to the pads provided for the keyboard and VGA.

It is called the EV (embedded version)
It is just the standard circuit minus the keyboard and video footprints.
It uses a  microSD card.
(There is no 'write protect' pin on the micro SD, so this signal is just connected the the Card detect CD line).
66mm x 68mm

Note **** This price includes a 26 Pin Female to Female IDC 10cm cable:
http://www.dontronics-shop.com/26-pin-idc-cable-10cm.html

A full description of The Maximite Computer, and its features can be seen 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 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 Australia's 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.

If you have not read the articles you can find out all you need to know by clicking on the links below:

Finally, if you are curious about the development of the Maximite you should read Geoff''s web page The Maximite Story.


Software Download:

All software can be downloaded from: http://geoffg.net/maximite.html

Schematics and all other relevant files are available from:
http://www.themaximitecomputer.com/max/Programs/
Then Select Hardware, then tctec

 


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.thebackshed.com/forum/forum_topics.asp?FID=16&PN=1

This product is from: TCTEC Pty Ltd
sales AT emx.net.au
Richard van Wyk

The Maximite Computer Blog | Maximite In The News | Chuck Hellebuyck's Newsletter #16 |

Back To Top

Posted in Uncategorized | Comments Off

Mailing List

DuinoMite Newsletter Subscription: You can view the public archives of the DuinoMite Newsletter.



Dontronics Newsletter Subscription: Our Newsletter isn't all that regular. We may send it out every three weeks to three months, so you won't be getting bombarded with email. You can view the public archives of the Dontronics Newsletter.



Dontronics Message Board: Also have a look at the Dontronics Message Board. We were getting more spam than messages, so we disabled new member signup, and messages being posted. If we see the need, we will rehash this message board, and get it on line again.

Posted in Uncategorized | Comments Off

Maximite-SM1

Unfortunately all of the MaxiMite SM1s have now sold out. At this stage we will not be producing them again, and as they were costing us twice as much as the DuinoMite series of boards, so we have ceased sales.

Please check out the DuinoMite series of boards, which are 100% software compatible with the original MaxiMite.

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

A new 250 page PDF manual is now available for the DuinoMite, and recent firmware includes "help" and "setup" commands.



More information is available from: The Maximite Computer Blog.

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

Introduction by Don McKenzie, owner of Dontronics.com. I am 68 years old, and about to retire, when I found out about the Maximite Computer. Have a look at the forum, and see what others are doing with it. Maximite is being re-compiled, re-wired, and re-invented by users. My friend Mick said, "This is more fun than my wedding night". A complete computer system using an $8 chip.

This board is not the same as the one in the Silicon Chip article. The board is different, the layout is different, it fits a different case, and it is assembled and tested. You must read the full details below for the differences, and check the new schematic. However it is 100% fully software compatible with the original board.

Prices | Support | Download

The Maximite Computer
http://www.themaximitecomputer.com/maximite-sm1-first-production-version/

For BASIC development, the Maximite can be run on any PC that supports a USB connection, and can run a terminal program. But it can also just run from a VGA screen and PS2 keyboard. Basic program can be saved to the SD Card. Aurorun.bas program will run from power up.

 

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

The Maximite Computer. Surface Mount Version. Fully Assembled

No case provided, so it has no panel cutouts and enclosure artwork like the Altronics Maximite Kit. You have to supply the case yourself, and cut out the holes. The LEDs are mounted on the main board, however they can be paralleled up via small pads, if you wish to mount them on the front panel. This board is designed to be used with the Jaycar Case: HB5970. In fact, the only thing you really need to cut a hole for is the SD card. Using the screw terminals, you can fit a front panel power switch if you wish to.

Note **** This price includes a 26 Pin Female to Female IDC 10cm cable:
http://www.dontronics-shop.com/26-pin-idc-cable-10cm.html

A full description of The Maximite Computer, and its features can be seen at: http://geoffg.net/maximite.html

Note
This is built with quality, lead-free components:
For example the 26 pin IDC Connector is part number 0702462601 and has at least 15u" gold plate, Here is some test info on different gold flash thicknesses: http://www.contechresearch.com/articles/gold_reflect.doc

This product has been designed to fit the Jaycar Case: HB5970
http://www.jaycar.com.au/productView.asp?ID=HB5970&keywords=HB5970&form=KEYWORD
But, any side panels and wiring holes need to be cut by the user.

We may source these cases direct at a later stage, if anyone can point us in the direction of the Chinese manufacturer.

And we would welcome any part numbers from places like Mouser and Digikey, that will assist other users.

Schematics and all other relevant files are available from:
http://www.themaximitecomputer.com/max/Programs/
Then Select Hardware, then tctec

Schematic differs from the original Silicon Chip article.
There is no jumper to select power source, as this is done automatically using diodes.
U2 Sound Output.
U4 Video Select.
U5 Video Ouput.

Schematic Update from Geoff Graham:
In the schematic,  the IDC pin numbers of the 26 pin I/O connector are incorrect. 
The correct schematic can be found here (this diagram also contains a number of other minor corrections).  If you are connecting an external circuit to this connector the best approach is to refer to the image of the I/O connector in the April 2011 issue of Silicon Chip (Fig 5) or the Maximite User Manual as they are correct.


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 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 Australia's 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.

If you have not read the articles you can find out all you need to know by clicking on the links below:

Finally, if you are curious about the development of the Maximite you should read Geoff''s web page The Maximite Story.


Software Download:

All software can be downloaded from: http://geoffg.net/maximite.html

Schematics and all other relevant files are available from:
http://www.themaximitecomputer.com/max/Programs/
Then Select Hardware, then tctec


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.thebackshed.com/forum/forum_topics.asp?FID=16&PN=1

This product is from: TCTEC Pty Ltd
sales AT emx.net.au
Richard van Wyk

The Maximite Computer Blog | Maximite In The News |

Back To Top

Posted in Dontronics | Comments Off

AVR-ISP500


Prices | Support
 

INFO:

AVR-ISP500 is fast and reliable USB AVR programmer, working directly with AVR Studio. It si recognized as STK500 programmer and programs all AVRs. As it used USB CDC no need for drivers and works under Windows, Linux and MacOS. If you do not want to use AVRStudio you can use AVR-ISP500 with AVR Dude.

FEATURES

  • connects to PC via USB 2.0 Full speed
  • no need for external power supply as it takes the power supply from USB
  • uses Atmel's 2×5 pin ICSP and 2×3 connector layout
  • dimensions 45×30 mm (1.7×1.2") + 20 cm (8") cable

DOCUMENTS:

HARDWARE:

SOFTWARE:

ADDITIONAL INFORMATION
To get BASCOM AVR Running with the usb programmer:
1. Download AVRStudio from the ATmel website
(http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725)
2. Install AVR Studio , make sure that the box for STK500 is selected
3. In BASCOM-AVR go to Options-Programmer
4. Select Programmer STK500
5. For the STK500.EXE option browse to the folder where AVRStudio was installed
(ie: C:\Program Files\Atmel\AVR Tools\STK500\Stk500.exe)
6. Restart BASCOM AVR

My machine selected COM-port 2 and BAUD 9600 and works OK
the selection option for USB is blank


More User Feed back -2011-12-09

hi Don

I'll try to be more explicit.

If using BASCOM-AVR, don't download and install the latest Atmel Studio
(ie v5.xx). It doesn't include STK500.exe. To get that file you need to
download the now "outdated" v4.19.

Initially the AVR-ISP500 wouldn't work even after installing AS v4.13
(which I already had). Soon determined that you CANNOT have both AS v5
and any AS v4.xx installed at the same time. Any body's guess as to why.

Uninstalled AS v5, cleaned registry, hunted down some leftover garbage
by hand, uninstalled AS v4.13 and repeated the cleaning exercise.

Installed AS v4.19, got BASCOM-AVR pointing to STK500.exe.

None of the above is related to the AVR-ISP500.
It's something you need to be aware of as your product page obviously
assumes that the latest AS is what is needed.

>From BASCOM-AVR, burned a small application to an ATmega32.
This was a hardware development version so although the program ran as
expected, there were some gotcha's lurking in ambush.
Config was using default internal 4MHz oscillator, wasn't using the pins
associated with JTAG so no need to use other than the default fuse
settings.

Pulled the ATmega32 from that board, installed it in "final" hardware
version board which has a crystal oscillator and requires access to the
pins previously ignored and available for JTAG.

No need to erase chip, just change fuses, right?    Oh so WRONG!!!
Sorted out exactly what was needed in fuses, wrote that to the ATmega32
and nothing works.
Can't access the fuses, ATmega32 is bricked. Didn't work even in the old
board. Nothing happening no matter what was tried.

Knowing that avrdude on Linux can be used to read the ID bytes from an
AVR I switched to that.

First, ATmega32 tried, nobody home. ID apparently 00 00 00.
Hmmm. Let's look at a known working ATmega128 on good functioning board.
Again, nobody home. No ID read, no fuses accessed, nothing, nada.

I then dug up a USBASP (which I had been given gratis some time back)
and repeated the exercise.
ATmega32, apparently bricked.
ATmega128, functions correctly, correct ID bytes returned. Same with
another ATmega128 and board.
Replaced ATmega32 with a new, never touched IC in same board and it ID's
correctly.

Since I wanted to change the fuses anyway, went ahead and did that using
USBASP on one ATmega128 without any problem.
AVR-ISP500 still couldn't access the fuses on that same chip and
board!!!!

To make sure that the ATmega32 was bricked and not farked, supplied it
with a 1MHz TTL clock to osc and wrote fuses again using USBASP.
The fuse settings were identical to those used with the AVR-ISP500
before.
Success, that ATmega32 now works as expected in both the development and
final boards.

Did I use your product page? Yes, for what it was worth.
The Internet provided a lot more information, which isn't surprising.

In short, I made the mistake of assuming that the AVR-ISP500 was fully
functional when it successfully burned to the flash on the ATmega32.
I have since found that it DOESN'T work correctly when used to set the
fuses or to read the ID bytes of at least two variants of AVR.

So, the AVR-ISP500 DOESN'T work now, certainly not in full.
The USBASP does work but is not claimed to be usable with as many chips.
In fact, a basic 4 resistor and wires off a parallel port on an older
laptop using avrdude is more functional.

Oh yes, the AVR-ISP500 does have the latest firmware, avrdude is the
latest version, the USB port does work correctly.

The AVR-ISP500 is the second Olimex product I've bought that doesn't
work correctly in all respects so I have little faith in the brand.

It may be possible to get the AVR-ISP500 to set fuses and read ID's by
fiddling with -B and / or -i options in avrdude but I'm not really
interested since I have alternatives that work as advertised.

We live and learn.

regards
Art Clarke

 

Running AVR-ISP500 on the MAC:

Find out which serial device file has MacOS assigned to AVR-ISP500 by
executing the following command line:
   ls /dev/cu.*
Then look for a file named like /dev/cu.usbmodem000010471  – this is your serial port which must be given to avrdude, like this:
   avrdude -p m88 -B 50 -c stk500v2 -P /dev/cu.usbmodem000010471 -e -U
flash:w:blinkled.hex

Below is a session log of using avrdude under MacOS.

———————-
Session log of using avrdude under MacOS.
———————-

none-nones-computer:~ nonenone$ uname -mprsDarwin 8.10.1 i386 i386
none-nones-computer:~ nonenone$ ls /dev/cu.*
/dev/cu.serial1                 /dev/cu.usbmodem000010471
/dev/cu.serial2
none-nones-computer:~ nonenone$ avrdude -p m88 -B 50 -c stk500v2 -P /dev/cu.usbmodem000010471 -e -U flash:w:blinkled.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.26s

avrdude: Device signature = 0x1e930a
avrdude: erasing chip
avrdude: reading input file "blinkled.hex"
avrdude: input file blinkled.hex auto detected as Intel Hex
avrdude: writing flash (176 bytes):

Writing | ################################################## | 100% 1.01s

avrdude: 176 bytes of flash written
avrdude: verifying flash memory against blinkled.hex:
avrdude: load data flash data from input file blinkled.hex:
avrdude: input file blinkled.hex auto detected as Intel Hex
avrdude: input file blinkled.hex contains 176 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.97s

avrdude: verifying …
avrdude: 176 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

none-nones-computer:~ nonenone$


Feedback
090512 – Just a little more feedback on running AVRISP500TINY on a Mac although this is not Mac/PC related.
I discovered that AVRDude's default bitclock rate (it defaults to 1.0) is on the edge of failure for programming an AT90S2313-4PC running on a 4MHz Xtal on a rough development board. Using the -B option to slow it a little makes the procedure way more reliable.  Herewith the commandline for AVRDude

avrdude -c stk500v2 -p 2313 -U flash:w:main.hex:i  -P /dev/cu.usbmodem3a21 -e -B 1.1

The failure looks as follows:

avrdude: stk500v2_command(): unknown status 0×80
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

I suspect it would work OK with the default once a decent PCB layout has been made. But, when it fails, it is not clear why from the error messages and leads you to believe that the ISP port was not connected or wired up correctly. Regards Johan

 


 

and some more feedback…
In June 2008 I emailed you requesting advice. I had a stock of ATMEL AT90S8535 microcontrollers and my copy of BASCOM-AVR 1.11.8.3, and I was after a compatible USB programming setup.  You sold me an Olimex-AVR-ISP500 and an Olimex-AVR-P40N-8535-8MHz.  The ISP500 needed a copy of STK500.exe.  The first one I downloaded was a ver1.nn but I soon became aware that I needed ver2.nn.  I obtained a copy from the AVR website by downloading AVRStudio.  The setup works well with AT90S8535s & ATMEGA8536s, but one needs to change $crystal = 8000000 to $crystal = 1000000  for the MEGA chip to function.  I use a USB to RS232 adaptor to access the COM functions of the P40N board.  I hope the information is of some use to somebody.  Thank you for your assistance. regards, Bob Foreman

 


 


Support:

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.

 


 

Back To Top
 

Posted in Uncategorized | Comments Off