Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 06:33 14 Jul 2025 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : PIC32MZ and the Maximite

     Page 1 of 4    
Author Message
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3285
Posted: 01:05am 15 Feb 2015
Copy link to clipboard 
Print this post

Long term followers of the ‘mites will remember the PIC32MZ chip that was introduced by Microchip just over a year ago. On the surface it looked like the perfect upgrade for the Colour Maximite with four times the memory and three times the speed. As a bonus I was working with a US company to port MMBasic to this chip and they were going to fund part of the work.

Unfortunately I must report that this project has been abandoned. In short the PIC32MZ and its software development system (Harmony) are just too immature and complex at this time and the cost was going to be too great.

When I started with the PIC32MX I thought that it would simply take a recompile of the MMBasic code with some adjustments to suit the new chip. I have done basically the same with the PIC32MX170 in the Micromite and it takes some time but is not impossible. However the PIC32MZ is different. Microchip had abandoned their old MLA software support system and wanted you to use their new Harmony system. The problem with this is that even after 15 months of updates Harmony still has many bugs and documentation issues and requires a rewrite of large areas of MMBasic.

The PIC32MZ itself also has a number of challenges. It has a number of serious silicon bugs and many of the sophisticated parts of the chip are poorly documented. I believe that Microchip see the PIC32MZ as a completely different beast to the PIC32MX used in the Colour Maximite, they see the PIC32MZ as running a high level operating system such as an embedded Linux or an RTOS while the PIC32MX is viewed as an embedded controller with most programmers interfacing directly to the silicon. The difference is significant because with the former the programmer would only interface to the operating system API and there would be little need to fully document the interface to the silicon.

Perhaps in the future Microchip will have a Linux and/or RTOS software components in place and debugged but at this time the only alternatives are either to write directly to the silicon or use Harmony and neither are viable in a cost effective way.

It will be interesting to see how the future treats the PIC32MZ. I view it is a chip with small scale parents trying to grow up into the sophisticated world of processors running Linux in products like cars, entertainment systems, etc. Meanwhile there are the ARM derived processors that easily run Linux and are growing down into the world of controllers. It is a highly contested space and the stakes are high as more and more consumer products become intelligent.

Geoff

Geoff Graham - http://geoffg.net
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2437
Posted: 03:38am 15 Feb 2015
Copy link to clipboard 
Print this post

your post makes for a good read i feel for your frustration.


we see many companies follow the path that microchip is trying to take, and most of them largely failing. rather than being led by customer interest and feedback, the company decides that it is instead going to drag the customer (scream and scratching) along the path that the marketing department envisions. the problem is that marketing departments often understand little more than glossy cardboard boxes and buzzwords - they lack that 'oh so rare' commodity called "wisdom".

an amusing example: i once worked for a place that used to make "widgets" that kept 90% of potential customers happy. one day someone near the top decided to bet the family jewels on designing a wonderful new "widget" that would be everything for every customer, thereby gaining an extra 10% of the market. the project came to completion after many years and yielded: a "widget" that cost twice as much as the existing one, was half as reliable, and that made up just a tiny fraction of sales. last i heard the same 'someone near the top' was betting the remaining family jewels on an even better, bigger "universal widget".


where does this leave the maximite? i have voiced my opinions before, that the maximite is a fine little device, but far too expensive for what it is and does. today, it really needs to be price-competitive against the RPi model A+, which retails for us$20 plus the cost of boxing it up with PSU, etc.

i do believe a "colour maximite version 2" kitset could be achieved in this price range, while sporting a few useful enhancements. keep the existing 32MX695/795 processor, backport the micromite feature set where appropriate, rework the keyboard code, strengthen the video hardware, move to executing basic code from flash, and replace the 5v regulator with a chinese switchmode 'brick'.


after donning my flameproof overalls, might i also suggest you mull over the idea of porting the maximite firmware to run on the RPi model A+ hardware? keep the code as close to the metal as is possible - provide no gui, have a viciously pruned linux jump directly into mmbasic, with i target boot time of less than 2 seconds.


just my 2 cents worth,
rob :-)
Edited by robert.rozee 2015-02-16
 
Lou

Senior Member

Joined: 01/02/2014
Location: United States
Posts: 229
Posted: 09:12am 15 Feb 2015
Copy link to clipboard 
Print this post

Geoff,

Thanks for the PIC32MZ update.

For my 2 cents I am a microcontroller head and the MX170 is great for my projects. The 28 and 44 pin MX170 uC's in all their size and pin configurations will power my projects for years to come and I thank you for all your efforts.

The 64 or even 100 pin MX470 will be great for larger uC projects requiring more port lines. Perhaps some of the time that would have been invested in the MZ can be used for the MX470 project. Thanks to you and Peter for expanding into that chip. I have MX470 chips and carrier boards on order and will jump into the beta testing when the parts come in.

Thanks for the NEC IR and the other clock chip support on the MX170's. The NEC will be a great boost for the IR remote control guys since in my estimation 80% of the remotes use the NEC format (at least the ones I have here at the house).

Lou
Microcontrollers - the other white meat
 
CircuitGizmos

Guru

Joined: 08/09/2011
Location: United States
Posts: 1427
Posted: 09:36am 15 Feb 2015
Copy link to clipboard 
Print this post

Oh man. I can't express adequately my own frustrations with part of what you expressed Geoff. My experiences mirror your own.

Every time I have to deal with a new microcontroller, It comes with a library of completely crappy code that the silicon vendor or the tool vendor pushes. They claim it makes things easier and it only does so to the person or team of idiots that wrote the code.

The actual silicon, for example a timer, is HIDDEN behind some library routine. The library routine isn't simple because it links in with a ton of other routines to be a part of some crappy OS that they envisioned. The timer routines are only useful once you load in their bloated "helpful" libraries. Then if they aren't buggy, they only work in the limited way that the library writing goon understands, not how they might be used in the real world.

Last time I was frustrated by the "wonderfully helpful" library routines I had worked my way through the first task on the development hardware of blinking an LED on a 32 bit processor. How much ROM/FLASH was used turning an LED on and off? Just under 10k.

The worst aspect is debugging. I never know the value or meaning of anything because everything is defined, redefined, and re-redefined through a network of nested include files.



Micromites and Maximites! - Beginning Maximite
 
Herry

Senior Member

Joined: 31/05/2014
Location: Australia
Posts: 261
Posted: 09:58am 15 Feb 2015
Copy link to clipboard 
Print this post

  robert.rozee said  


we see many companies follow the path that microchip is trying to take, and most of them largely failing. rather than being led by customer interest and feedback, the company decides that it is instead going to drag the customer (scream and scratching) along the path that the marketing department envisions.


To my mind that sounds exactly like a certain manufacturer of o/s version 8 (and 8.1)! Great that you knew when to pull the plug Geoff. Saves yet another rewrite...

AlanEdited by Herry 2015-02-16
Senior?!  Whatever it says, I'm a complete and utter beginner...
 
boss

Senior Member

Joined: 19/08/2011
Location: Canada
Posts: 268
Posted: 12:37pm 15 Feb 2015
Copy link to clipboard 
Print this post

And must the chip be Microchip made? If I read all that troubles around 32MZ HW and Harmony SW I have to ask if isn't right time to replace the sick horse.

STM32F756NG
High-performance and DSP with FPU, ARM Cortex-M7 MCU with 1 Mbytes Flash, 200 MHz CPU, Art Accelerator, L1 cache, HW crypto, SDRAM, TFT

or

Infeon Tricore
CPU Clock: 180 MHz
Including:
- TriBoard Hardware
- USB cable
- Power Supply
- Extension Board
- Free TriCore Entry Tool Chain
- Getting Started, first 3 Steps to
- Install the Tools
- Set up your Hardware
- Write and debug your first Program
On-Chip Memory:
- 4 MByte embedded program flash with ECC,
- 16KByte EEPROM (emulated by 64KByte data Flash),
- 156 KByte on-chip SRAM,
- 4KByte data cache,
- 16 KByte instruction cache.

Bo
 
hitsware
Guru

Joined: 23/11/2012
Location: United States
Posts: 535
Posted: 01:06pm 15 Feb 2015
Copy link to clipboard 
Print this post

> where does this leave the maximite?

One of the very few 'platforms' utilizing Basic.
Perhaps the only one using floating point and for
sure armed for so many perifriels(sp?)
A niche, but a legitimate one.

> i have voiced my opinions before,
> that the maximite is a fine little device,
> but far too expensive for what it is and does.
> today, it really needs to be price-competitive
> against the RPi model A+, which retails for us$20
> plus the cost of boxing it up with PSU, etc.

From my perspective, only a Stamp, PicAxe, or
Nano might come close. So damn the cost.
 
boss

Senior Member

Joined: 19/08/2011
Location: Canada
Posts: 268
Posted: 01:30pm 15 Feb 2015
Copy link to clipboard 
Print this post

@hitsware

The MMBasic is written in C, so then probably most of code will either directly transferable or with just little modification.
Only HW dependent routine should fully replaced and I believe the big company (like ST or Infeon are) has development tools and support more sophisticated.
I don't care about chip price, because the similar chips price are almost the same.

Regards
Bo
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9593
Posted: 01:31pm 15 Feb 2015
Copy link to clipboard 
Print this post

  Rob said  after donning my flameproof overalls, might i also suggest you mull over the idea of porting the maximite firmware to run on the RPi model A+ hardware? keep the code as close to the metal as is possible - provide no gui, have a viciously pruned linux jump directly into mmbasic, with i target boot time of less than 2 seconds.


I would second that idea. As Rob says, now that they are on to the RPi Mk.2, the original A version can be had for peanuts, and you get a very, very powerful platform to base a MMBASIC port on. Just how much effort would be required to port from PIC to ARM architecture, I do not know, although, I would not be surprised if it was a page-1 rewrite, as they are so different hardware platforms. Certainly this is an idea I would like to see pursued or commented on by others, as you have all that nice hardware ready to rock: HDMI or Composite out for the colour output, I/O pins, SD card for storage, USB keyboard and network(perhaps). This might be me just dreaming, as it may not be practical to port MMBASIC to the RPi A, but I would LOVE to hear other members opinions of that idea - including Geoff, naturally.

  Herry said  To my mind that sounds exactly like a certain manufacturer of o/s version 8 (and 8.1)!


I actually LIKE win8 and 8.1 - a bold statement in a public forum, probably!
I HATE the Metro start screen that was forced on you, which is probably the bit you are referring to, but that is easy to circumvent with the likes of Classic Shell which is totally free, and will give you back a full START menu, and will boot right to the desktop for you. Once Metro is out of the way(although it is still in the background), 8 and 8.1 become quite good DESKTOP OS's, IMHO. But I digress......Edited by Grogster 2015-02-16
Smoke makes things work. When the smoke gets out, it stops!
 
Herry

Senior Member

Joined: 31/05/2014
Location: Australia
Posts: 261
Posted: 02:24pm 15 Feb 2015
Copy link to clipboard 
Print this post



  Quote  I HATE the Metro start screen that was forced on you, which is probably the bit you are referring to...


That was it. I confess to being so busy I did not realise that there was such an easy way to circumvent it. Also, will W8/8.1 run Word 2010 and VB6, both of which I use every day?
Senior?!  Whatever it says, I'm a complete and utter beginner...
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9593
Posted: 02:29pm 15 Feb 2015
Copy link to clipboard 
Print this post

Should do. Flick me a PM, and we can exchange emails - that stops the thread from digressing into another subject too much!
Smoke makes things work. When the smoke gets out, it stops!
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6269
Posted: 04:13pm 15 Feb 2015
Copy link to clipboard 
Print this post

I like the Pi and have the new Pi 2 to play with.
My HDMI 7inch touch display arrived today...
They make a good display device as a front-end for my 'mites.

While I would love MMBasic on the Pi, most of my use is for data acquisition and the multitasking operating system on the Pi makers the timing rather 'loose', just like Windows systems. Most of the drivers for the various sensors seem to be flakey due to the lack of reliable timing.

For any critical timing, you have to resort to micromites etc.

Re W8.1
I don't know about VB6 but I run Office 2003 without any obvious problems.

Jim
VK7JH
MMedit
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9593
Posted: 05:01pm 15 Feb 2015
Copy link to clipboard 
Print this post

What about that fabulous thing that Oldbitcollector and his chums were selling?
The thing that used the Micromite for the editor, and used a Propeller for the VGA and sound etc?

Perhaps this is the way to go?
Keep MMBASIC within a "Core" chip(the 170 or 470 series), and let the other chips do the hard work?

I have one of those kits, but I heve never got around to building the bloody thing - so much other stuff, then Christmas came around, so I suppose I should dig it out and build it!
Smoke makes things work. When the smoke gets out, it stops!
 
Geoffg

Guru

Joined: 06/06/2011
Location: Australia
Posts: 3285
Posted: 05:29pm 15 Feb 2015
Copy link to clipboard 
Print this post

Thanks for the words of support and appreciation. It was a terrible waste of time and very frustrating when I realised that it was not going to work out.

  boss said   And must the chip be Microchip made? If I read all that troubles around 32MZ HW and Harmony SW I have to ask if isn't right time to replace the sick horse.

STM32F756NG
High-performance and DSP with FPU, ARM Cortex-M7 MCU with 1 Mbytes Flash, 200 MHz CPU, Art Accelerator, L1 cache, HW crypto, SDRAM, TFT

This has come up many times before. The Maximite was conceived as a simple, low cost, single chip computer. Last time I looked the STM32 did not have framed SPI which is essential in creating stable VGA like video. Yes, you could add extra hardware to generate the video, but then it would not be a "simple, low cost, single chip computer".

  robert.rozee said  The maximite is a fine little device, but far too expensive for what it is and does.

I don't know where this comes from. The Maximite is about as simple and cheap as they come for a "build-it-yourself" computer. The Altronics kit is expensive but that is due to excessive profit, not the design or BOM.

  robert.rozee said  might i also suggest you mull over the idea of porting the maximite firmware to run on the RPi model A+ hardware?

Porting MMBasic to the RPi is something that I have considered and may still do. The problem is that MMBasic is more than a BASIC interpreter, it has evolved into something that has intimate control of the I/O and hardware on the chip and that would be very hard to do on the RPi with Linux in the way.

In my efforts to get MMBasic running on the PIC32MZ I found it was easy to get the interpreter running, it was the close control of the hardware that was impossible. I suspect that the same would happen with the RPi and the many other similar boards on the market.

Geoff
Geoff Graham - http://geoffg.net
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9593
Posted: 06:41pm 15 Feb 2015
Copy link to clipboard 
Print this post

  Geoffg said  
  robert.rozee said  The maximite is a fine little device, but far too expensive for what it is and does.

I don't know where this comes from. The Maximite is about as simple and cheap as they come for a "build-it-yourself" computer. The Altronics kit is expensive but that is due to excessive profit, not the design or BOM.


I'd have to agree with that - everything is on the one chip, and that chip is only about fifteen bucks or so - pretty cheap, it has to be said.

To keep things simple and cheap, how about a "Two-core" Maximite, based on two seperate 695 chips?

The SPI channels that were used to drive the VGA in the original, could be used to drive a 2nd chip which could be dedicated just to VGA and sound, for example. Or perhaps a 695 with MMBASIC core in it, and a cheaper 470 for the VGA and sound? I think the 470 has the speed - it may not have enough SPI channels.

The advantage of that, would be you should free up more memory in the same chip for MMBASIC to use at the interpreter end of things. I guess that is what the MicroMite Companion is, really.

How about the new 470 being developed, paired with the Propeller for VGA and sound?

Yes, I know - not single-chip anymore, but just how critical is that if you can build a better mouse-trap?Edited by Grogster 2015-02-17
Smoke makes things work. When the smoke gets out, it stops!
 
plasma
Guru

Joined: 08/04/2012
Location: Germany
Posts: 437
Posted: 08:05pm 15 Feb 2015
Copy link to clipboard 
Print this post

Hi,

I really think stm32 is the way to go because
it is one chip and not one board as the pi.
On youtube are some stm video with stm32 and
Vga video so i think it must be possible.
And the next f7 has more power as the mz.

And the rpi is really a different beast.
The chip has ogl-es but limitet hardware io.
Even the new and really faster dual core one.

Mmbasic running without many components whats what
I like so i prefere the stm.
An rpi port is possible and maybe a new experience.

Mfg
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2437
Posted: 09:03pm 15 Feb 2015
Copy link to clipboard 
Print this post

  Grogster said  
  Geoffg said  
  robert.rozee said  The maximite is a fine little device, but far too expensive for what it is and does.

I don't know where this comes from. The Maximite is about as simple and cheap as they come for a "build-it-yourself" computer. The Altronics kit is expensive but that is due to excessive profit, not the design or BOM.

I'd have to agree with that - everything is on the one chip, and that chip is only about fifteen bucks or so - pretty cheap, it has to be said.


yes, i was referring to the altronics kitset, which seems to have been the most widely advertised form. i do believe there are other colour maximite offerings out there that are somewhat cheaper, but still none beat the price of the RPi model A+ at us$20. this is not a clearance price, but reflects the actual cost of production and distribution. the A+ was only released late last year and is very much a current product.



some might have missed the point that there are SIX distinct variants of the RPi. the A+ consumes the least power (100mA to 150mA @5v), and is built on a PCB that is close to being square. if the underlying linux OS was stripped back to the bare metal, i see no obvious reason why near-RTOS performance could not be achieved. my understanding is that MMbasic on the 32MX695 currently only achieves usable granularity down to around 100us at the best.

i do hope none are offended. i am trying to be pragmatic. i would absolutely love to see a 32MX695-based colour maximite retailing for us$20, but there is every indication that this is not doable. can someone prove otherwise?


cheers,
rob :-)
Edited by robert.rozee 2015-02-17
 
MicroBlocks

Guru

Joined: 12/05/2012
Location: Thailand
Posts: 2209
Posted: 10:45pm 15 Feb 2015
Copy link to clipboard 
Print this post

I have looked into it, and came to the conclusion that a Maximite/Color Maximite is not popular enough to make a big enough production run to get the price point down to 20US$.
There was a kickstarter not long ago that proofed that again.

I have much more faith in a micromite and if possible i would like to see a version based on the 795 chip. Current efforts for a 470 already show interest.
Lots of good stuff in the 795 chip, six! UARTS/I2C/SPI and not to underestimate the importance 2x a CAN bus AND USB. 16 bit PMP very useful for lcd's.
As has been proven by the micromite a screen is not really a short coming, i dare say it is a feature.
Get rid of the VGA and use all that power of the 795 in the form of a micromite.
Maybe add support for ethernet although that is a tough nut to crack.

All of the code is already written. The 795 is familiar, as is the software stack.
Forget the MZ and get the largest and fastest MX.

I am busy with a project that uses an ARM with a 2.4" TFT 320x240 and can string together with RS485 that i sold for 45US$ per piece (with a nice enclosure). A micromite version of that will probably cost 30US$. I have 500 more of those screens on order and even then going down to a price of a Rpi is difficult. But then again the Rpi is completely unsuitable for direct hardware control, so what is the point of comparing with an Rpi when it is a totally other kind of computer.

Microblocks. Build with logic.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10247
Posted: 10:49pm 15 Feb 2015
Copy link to clipboard 
Print this post

  Quote   i would absolutely love to see a 32MX695-based colour maximite retailing for us$20, but there is every indication that this is not doable. can someone prove otherwise?


Of course it is doable if the volume is there. The component cost is going to be more or less the same as a pi and most of the cost is in things like the various connectors (USB, SD, KB, VGA). You would want to re-layout the board using surface mount and shrink the board. Also probably go to a switch mode regulators.

I built 5 Colour Maximites from Geoff's gerbers for a component cost of around £40 each, complete in boxes. This included having to buy 10-PCBs. In the UK the new pi sells for £24.90 +VAT = c£30 without a box. My component cost for the Maximite for even 100-off would have halved.

I do love the way everyone pontificates on how Geoff takes MMBasic and "mite" range forward.

I wanted a more powerful Micromite so with Geoff's agreement ported the code to the MX470 doubling the speed, and memory. Once the beta has finished this will become part of the formal "mite" offering and Geoff has said he may well look at then adding USB and SD to the code as the MX470 has plenty of flash to allow their inclusion.

If you want to get a STM32 running MMBasic just do it! Buy a STM development board - they are very cheap. Install the free development environment CoIDE (v1.7.8, not the new beta) and the GCC ARM compiler and start porting the code. It won't be very difficult as the MMBasic code is very well organised and the compiler should be completely compatible- BUT it will take a fair amount of slog work slowly going through all the peripherals and getting them working - my guess would be about 200-hrs of work if you are a competent developer.

Doing this on a M4 core would give you double speed and hardware floating point.

Otherwise, if you need a $20 Colour Maximite, build 100 and sell 99
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9593
Posted: 11:25pm 15 Feb 2015
Copy link to clipboard 
Print this post

  Wiktionary said  PONTIFICATE: To preside as a bishop, especially at mass. To act like a pontiff; to express one’s position or opinions dogmatically and pompously as if they were absolutely correct. To speak in a patronizing, supercilious or pompous manner, especially at length.


I'm not sure we were being quite like that, were we? I know there have been several suggestions on the subject though, so if any of my comments read like that - appologies. Not intended. I was just throwing ideas about.

Perhaps that is the way forward - the 470?
With perhaps the 795 as an alternative port later(as TZA hints at)?

Then if you want video output, you chose your options and drive THAT from the MicroMite chip, as it will have plenty of power and memory at that point.

...and I am not pontificating!
Smoke makes things work. When the smoke gets out, it stops!
 
     Page 1 of 4    
Print this page
The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025