|
Forum Index : Microcontroller and PC projects : Micromite eXtreme MMBasic V5.3 Beta 10
| Page 1 of 2 |
|||||
| Author | Message | ||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10566 |
Please find attached the latest beta of the Micromite eXtreme (MMX). This brings the MMX into line with the version of MMBasic just published by Geoff for the uM2 and MM+. 2017-01-13_080516_MMX5.3b10.zip Attached is also the first draft of the MMX manual. This provides an introduction for users who are familiar with the Micromite and the Micromite Plus and need a summary of the extra features in the Micromite eXtreme. Full pinouts for the 100-pin and 144-pin parts are included in the manual. Comments appreciated. 2017-01-13_080816_Micromite_eXtreme_Manual.pdf The differences between the MMX and the MM+ are as follows: VGA Output The Micromite eXtreme can drive a VGA display in 640 x 480 pixels with eight colours. All the graphics commands and GUI controls available in the Micromite Plus will also work on the VGA output. The display can also be set to 640x400 format for 16:9 format monitors. Mouse Input The Micromite eXtreme can support a PS2 mouse which can be used to activate on screen GUI controls. This feature will work with touch sensitive LCD displays (it works in parallel with the touch sensitivity) but it is especially useful with VGA monitors that do not normally incorporate a touch sensitive surface. Cursor Commands The cursor (ie, mouse pointer) can be turned off/on, its colour can be set and its status can be overridden using the CURSOR command. The cursor command can be used without a mouse to allow, for example, a joystick to move the cursor. Double Precision Floating Point The Micromite eXtreme uses the hardware floating point compatibility of the MZ series of chips and can therefore process floating point calculations faster than the Micromite and Micromite Plus. All floating point uses double precision calculations. Nothing is required to enable this feature, it is automatically available. Clock Speed Control MMBasic can work with chips rated for 200 MHz or 252 MHz operation. By default the firmware will start running at 200 MHz however the 252 MHz clock speed can be selected with the command: OPTION CPU 252 or the speed can be returned to 200 MHz with the command: OPTION CPU 200 These commands change how MMBasic starts up and will cause a restart of the processor. The clock speed is saved in flash memory so the command only needs to be used once and will be automatically applied on startup. OPTION CPU 252 must only be used on chips specifically rated for 250Mhz operation. Use on a 200MHz rated chip will not work and the chip will need to be re-flashed with the Micromite eXtreme firmware. Apart from the increased processing speed the only difference at 252 Mhz is the ability to use WAV files recorded at 24 Khz and 48 Khz 16-bit Interface to SSD1963 Based LCD Displays The Micromite eXtreme can drive a SSD1963 display using a 16-bit parallel bus for extra speed. The extra I/O pins for this are listed as SSD1963-DB8 to SSD1963-DB15 on the pinout tables in this manual and they must be connected to the pins labelled DB8 to DB15 on the I/O connector on the SSD1963 display. Note that in this mode the SSD1963 controller runs with a reduce colour range (65 thousand colours) compared to 16 million colours with the normal 8-bit interface. Two I2C Channels The Micromite eXtreme supports two I2C channels. The second channel operates the same as the first, the only difference is that the commands use the notation I2C2 (for example I2C2 OPEN, etc). Three SPI Channels The Micromite eXtreme supports three SPI channels. The second and third channels operate the same as the first, the only difference is that the commands use the notation SPI2 and SPI3 (for example SPI3 WRITE, etc). Note that by default, if the Micromite eXtreme is configured for a SPI based LCD panel, touch or an SD card then SPI2 will be unavailable to BASIC programs as these functions will use that channel. Alternate SPI Channel for the SD Card The SPI channel used for the SD Card (if configured) defaults to the second channel (SPI2) however this can be changed by appending the SPI channel number to the end of the OPTION SDCARD command this: OPTION SDCARD CSPIN [,CDPIN] [,WPPIN] [,SPIno] 'SPIno' is the SPI controller to use and can be 1, 2 or 2. This is particularly useful with the SnadPIC MZ, PIC32MZ EF MCU Starter Kit is as it has the SD Card hardwired to controller 3. In that case the MMBasic command to configure the SD Card would be: OPTION SDCARD 81, 59, , 3 Six PWM Channels The second PWM controller (ie, PWM 2) supports three channels (the other versions of the Micromite only support two). The command to use all three channels is: PWM 2, freq, 2A, 2B, 2C Similarly the SERVO command can also control six channels with the extra channel available on controller 2: SERVO 2 [, freq], 2A, 2B, 2C Heartbeat The heartbeat is an I/O pin which is pulsed off and on at a 1Hz rate. It is normally used to drive a LED to show that MMBasic is alive and running on the Micromite eXtreme. The default is for it to be enabled however it can be disabled with: OPTION HEARTBEAT DISABLE If necessary it can be re enabled with: OPTION HEARTBEAT ENABLE These commands only needs to be run once as the parameters are stored in non volatile memory. Every time the Micromite is restarted MMBasic will automatically initialise the heartbeat feature. Extended WAV File Playback The Micromite eXtreme can play WAV files (like the Micromite Plus) however, if the eXtreme is configured to run at 252 Mhz it is also capable of playing WAV files recorded with sampling rates of 24 KHz and 48 KHz. Random Number Generation The Micromite eXtreme uses the hardware random number generator in the MZ series of chips to deliver true random numbers. This means that the RANDOMIZE command is no longer needed and is not supported. MM.DEVICE$ On the Micromite eXtreme the read only variable MM.DEVICE$ will return "Micromite eXtreme". CPU command The Micromite eXtreme does not support dynamically changing the CPU speed or the sleep function. Accordingly the commands CPU speed and CPU SLEEP are not available. It does support “CPU SLEEP time” where time is specified in seconds. Do not use OPTION CPU 252 on anything other than a PIC32MZ2048EFH100-250 PIC32MZ2048EFH1144-250 chip or otherwise the firmware will need to be reloaded. The CPU speed of the Micromite eXtreme can be permanently set to 200 MHz or 252 MHz using the OPTION CPU command. OPTION CONTROLS command The Micromite eXtreme does not support the OPTION CONTROLS command instead the maximum number of GUI controls is set to 250. |
||||
| cdeagle Senior Member Joined: 22/06/2014 Location: United StatesPosts: 266 |
Great work Peter. Do the trig, square root and other math functions also perform calculations in double precision? If so, this provides the capability to perform even more useful number crunching on the Micromite. |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10566 |
Should do, I'm calling the double precision C library routines |
||||
| Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3308 |
Peter has done a brilliant job here. It is a heavy duty processor that will consume the most demanding of applications. Everything is faster, bigger and more capable. The MZ processor is not that expensive so this power is relatively cheap. It will be interesting to see the applications that the eXtreme is put to. Geoff Geoff Graham - http://geoffg.net |
||||
| Zonker Guru Joined: 18/08/2012 Location: United StatesPosts: 772 |
This new MMX Rocks..!! Is anyone considering spinning up a PCBA for the MZ..? Maybe get a features list going... Would be awesome..!! |
||||
| WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2959 |
Hi Zonker, A 144pin MZ module will be out soon. This is something Geoff, Peter and myself have worked on over the last few weeks. We have a prototype, however, the design has moved on somewhat to include some nice new features. Also I have a 100pin MZ that a TBS member is sending me; and once I have built one up, I will probably offer this too as it looks a neat design. China is going on their holidays soon so the PCB houses will be out of action. So the PCB may be delayed until about a week after they return to work Will open up for pre-ordering the 144pin MicroMite eXtreme module for anyone interested. Will offer, PCBs, and fully assembled modules. Costs still to be defined (working on that this weekend!) WW |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10566 |
This version fixes a stupid bug that caused crashes when using GUI controls if the Click output pin wasn't specified in OPTION TOUCH 2017-01-15_184353_MMX5.3b10v4.zip Also attached is an updated version of the manual 2017-01-15_185031_Micromite_eXtreme_Manual.pdf |
||||
| f1fco Senior Member Joined: 18/03/2012 Location: FrancePosts: 155 |
Hello Phil, I am interested by 1 kit (or ready made) of the future 144pin MicroMite eXtreme when available thank you to notify me Pierre, from Nimes, south of France 73s de F1FCO |
||||
| WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2959 |
Hi Pierre, Thanks for your continued loyal support for the Micromite; and also your interest in a Micromite eXtreme module. I will add your name to the ever growing list of interest in the 144-pin MM powerhouse! The PCB is currently costing me £16 (each) to land in the UK (at low volumes). Likewise, the 250MHz PIC is costing me £13 each (volumes < 25). So for low volumes I anticipate a fully assembled unit to be approximately £85 (which is only £10 more than an assembled Explore 100 module). However, if there is enough interest I can then sell for a slightly lower figure. So I may open it up for BackOrdering at £80 (and take a risk) to see if I can get another 11 people interested so that I can bulk purchase the PCBs and PICs. If more than 30 additional people show interest then I can get it to below the cost of an E100; that would be the best scenario for everyone interested. The new version of the MMX PCB has provision for direct connection of a Nunchuk controller. This allows things such as: - controlling the mouse pointer with code (an idea thanks to MicroBlocks - provides a great 'direction control' for things such as games (WATCH THIS SPACE - a classic is due for release along with this module) - has a 3-axis accelerometer for movement/tilt sensing - and has two buttons - allows you to 'trigger' MMBASICs TouchScreen controls (ideal on VGA) The new PCB will also allow playback of 48KHz WAV files; and there are some more exciting 'hardware & software' features that Peter is currently working on . . . . So if anyone else is interested then please do drop me an email/PM so that I can secure the lowest possible price for you all. WW |
||||
| Zonker Guru Joined: 18/08/2012 Location: United StatesPosts: 772 |
@WW... You can count me in also, if not already on the list..!! Does the PCBA layout have mounting holes setup form the 7" display..? If so, maybe I need to have 2 of the "Full builds".. (mouth watering)... |
||||
| WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2959 |
Hi Zonker - Yes the PCB has the 40-way female ready to accept the SSD. In fact the whole PCB is designed to 'bolt onto' the 7" SSD. I will be able to offer 'custom' builds for any TBS members by the way - I just won't be supplying the TFTs initially due to the already low costs from China. If from the UK, then I have to charge shipping which then makes my cost seem high. SO PCBs (and custom builds) on offer here to try get volume ordering from the suppliers . . . . There has been a bit of interest since my post - so thanks to all that have been in touch WW |
||||
| panky Guru Joined: 02/10/2012 Location: AustraliaPosts: 1116 |
WW, Awsome work by you 3 so please put me down for 1 assembled 144 pin version (or at least with the MZ chip installed) and 1 bare board 100 pin version please. Both the same if you are only offering 1 version. Thanks, Doug. ... almost all of the Maximites, the MicromMites, the MM Extremes, the ArmMites, the PicoMite and loving it! |
||||
| sawasdee01 Newbie Joined: 23/12/2016 Location: United KingdomPosts: 33 |
Geoff and Peter, I love Micromite and I am really looking forward to the final release of MM5.3 A few days ago, I was using Micromite Plus V5.2 and accidentally strayed over the 100 subroutines and functions limitation. In doing so, I discovered that Micromite seems to 'hang' irretrievably when this limit is exceeded - ie the part needs re-programming with the Micromite Plus image. I also tried the Micromite Plus V5.3 Beta 3 image and discovered that the same thing happens. Obviously, it is understandable that exceeding this well documented limitation will cause problems - but my question for you is: Given the much larger memory spaces of the Micromite Plus and now the Micromite Extreme versions, is now a good time to increase the subs + functions limitation to 200 for the MM Plus and 500 for the MMX? Best Wishes. Sawasdee |
||||
| Geoffg Guru Joined: 06/06/2011 Location: AustraliaPosts: 3308 |
100 subroutines, wow! But a good point, I will look into it. Geoff Geoff Graham - http://geoffg.net |
||||
| cdeagle Senior Member Joined: 22/06/2014 Location: United StatesPosts: 266 |
WW. I am also interested in one 100 pin version of the fully populated board. Thanks |
||||
| WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2959 |
Hi David, I need to clarify here that the PCB is for the 144pin MZ. Do not be misled by the '100' in the last few posts relation to quantity of sub-routines! Anyway, the 144 pin module has a lot on offer that should make you 'wanting' one! By the way, I still need a few more people to show interest to allow me to get the price down to £74 (for TBS members) for the fully assembled MicroMite eXtreme 144 Module (this would make it cheaper than the assembled Explore 100 module!). Currently the cost is £80 per module based on the current PCB volume. For this first batch, I am going to request £80 but am including fully insured Tracked shipping (I will take the 'hit' if there is not enough interest). If you are still keen to obtain the 'feature-rich' 144 pin module then PM/email me and I can give you the necessary details. Thanks David for your continued support too - it is always nice to hear from our loyal customers WW |
||||
| retepsnikrep Senior Member Joined: 31/12/2007 Location: United KingdomPosts: 134 |
WW I'm interested in a fully populated extreme board as well please. Thanks Gen1 Honda Insights. |
||||
| WhiteWizzard Guru Joined: 05/04/2013 Location: United KingdomPosts: 2959 |
Thanks Peter - I have PM'd you. |
||||
| Cremo Newbie Joined: 21/07/2015 Location: ItalyPosts: 36 |
Hello Peter, please check the list in page 5 of the Micromite eXtreme Manual about Suitable Microcontrollers. In my opinion the correct codes are: PIC32MZ2048EFG100-I/PF for 100-pin LQFP package with 0.5 mm pin pitch 200MHz ------ PIC32MZ2048EFG100_250I/PF for 100-pin LQFP package with 0.5 mm pin pitch 252MHz --------- Best regaeds and thank toy for your work. Pietro |
||||
| matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 10566 |
Pietro Changes to this table seems to have been lost passing the file back and forwards between myself and Geoff The correct version - I think is :The recommended chips are: PIC32MZ2048EFG100-I/PF 100-pin TQFP package (0.5 mm pin pitch) – maximum speed 200 MHz PIC32MZ2048EFG144-I/PL 144-pin LQFP package (0.5 mm pin pitch) – maximum speed 200 MHz PIC32MZ2048EFH100-250I/PF 100-pin TQFP package (0.5 mm pin pitch) – maximum speed 252 MHz PIC32MZ2048EFH144-250I/PL 144-pin LQFP package (0.5 mm pin pitch) – maximum speed 252 MHz The chips PIC32MZ2048EFM100-I/PF and PIC32MZ2048EFM144-I/PL can also be used at 200 MHz. In addition the 0.4mm chips may be used but are harder to solder by hand (PT for 100-pin and PH for 144-pin) I've updated the document. |
||||
| Page 1 of 2 |
|||||
| The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |