PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Let us know what you think about the chipKIT, and what can be done to make it better!
Post Reply
jsaily
Posts: 6
Joined: Tue Aug 05, 2014 10:41 am

PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Post by jsaily » Mon May 09, 2016 10:06 am

Hi, I would like to code using the Arduino IDE + Chipkit Core libraries for PIC32MZ2048ECG144 (Olimex PIC32-HMZ144). There are no compatible boards in the Chipkit Core libraries for Arduino IDE, closest is Chipkit WiFire with PIC32MZ2048EFG100 processor. I noticed that there are some Olimex boards already on the core library, so why not the PIC32-HMZ144 ;-)

User avatar
majenko
Site Admin
Posts: 2165
Joined: Wed Nov 09, 2011 7:51 pm
Location: UK
Contact:

Re: PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Post by majenko » Mon May 09, 2016 10:48 am

Because it is way too new and none of us have one. Send me a free one and I will make a config for it ;)

MZ chips can be quite tricky to make configs for since the ADC is incredibly complex in them.
Why not visit my shop? http://majenko.co.uk/catalog
Universal IDE: http://uecide.org
"I was trying to find out if it was possible to only eat one Jaffa Cake. I had to abandon the experiment because I ran out of Jaffa Cakes".

jsaily
Posts: 6
Joined: Tue Aug 05, 2014 10:41 am

Re: PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Post by jsaily » Mon May 09, 2016 10:56 am

Maybe Olimex could support you with one ;-) I tried the MPLAB-X Harmony example from Olimex and it compiles ok but the Harmony configurator is way too complex for me. I'd like to port my existing code to MZ using four SPI buses and PLIB I/O calls, and preferably add a USB host for fast data transfer to a PC. I wonder if the USB host will work without Harmony libraries?

Hopefully your Chipkit32 form factor MZ-board is advancing well...

Marevealous
Posts: 17
Joined: Tue Jul 19, 2016 10:41 am

Re: PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Post by Marevealous » Tue Jul 19, 2016 10:47 am

I'm also interested in MZ chips in chipkit.
Not particulary this one, anything, especially in TQFP64 package would be great.
Are there any plans for it?

User avatar
majenko
Site Admin
Posts: 2165
Joined: Wed Nov 09, 2011 7:51 pm
Location: UK
Contact:

Re: PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Post by majenko » Tue Jul 19, 2016 12:11 pm

There's so many new PIC32 chips around now it's impossible to keep up. As each of us design boards with specific chips on support for those chips is added to the core.

I'm working on a board with the PIC32MZ2048EFH144 on it, so support for that will be coming in the core when I get to the prototyping stage.

A board with the PIC32MZ2048EFM100 on it is also being integrated into the core, so support for that chip will be coming as well.

Then of course there's all the new PIC32MM chips that have been released (lower spec than MX but also lower power - ideal for IoT and battery applications) that support for will have to be worked in.

Microchip don't sit idle twiddling their thumbs like others do ;)
Why not visit my shop? http://majenko.co.uk/catalog
Universal IDE: http://uecide.org
"I was trying to find out if it was possible to only eat one Jaffa Cake. I had to abandon the experiment because I ran out of Jaffa Cakes".

Marevealous
Posts: 17
Joined: Tue Jul 19, 2016 10:41 am

Re: PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Post by Marevealous » Tue Jul 19, 2016 7:44 pm

What about something powerfull but in TQFP64?

So there is no PIC32MZs yet for chipkit?

User avatar
majenko
Site Admin
Posts: 2165
Joined: Wed Nov 09, 2011 7:51 pm
Location: UK
Contact:

Re: PIC32MZ2048ECG144 support in Arduino IDE core libraries?

Post by majenko » Tue Jul 19, 2016 7:56 pm

I did make an MZ version of the Fubarino SD once, but the power circuitry wasn't really up to the job - needs a complete redesign with a buck regulator on it. That, AFAIK, has been the only 64-pin MZ that has been tried with chipKIT. It was the PIC32MZ2048ECG064 along with all the major bugs that were with it.

Currently the core supports these MZ chips without needing any modifications:

#define _CPU_NAME_ "32MZ1024ECG064"
#define _CPU_NAME_ "32MZ1024ECH064"
#define _CPU_NAME_ "32MZ1024ECM064"
#define _CPU_NAME_ "32MZ2048ECG064"
#define _CPU_NAME_ "32MZ2048ECH064"
#define _CPU_NAME_ "32MZ2048ECM064"
#define _CPU_NAME_ "32MZ1024ECG100"
#define _CPU_NAME_ "32MZ1024ECH100"
#define _CPU_NAME_ "32MZ1024ECM100"
#define _CPU_NAME_ "32MZ2048ECG100"
#define _CPU_NAME_ "32MZ2048ECH100"
#define _CPU_NAME_ "32MZ2048ECM100"
#define _CPU_NAME_ "32MZ1024ECG124"
#define _CPU_NAME_ "32MZ1024ECH124"
#define _CPU_NAME_ "32MZ1024ECM124"
#define _CPU_NAME_ "32MZ2048ECG124"
#define _CPU_NAME_ "32MZ2048ECH124"
#define _CPU_NAME_ "32MZ2048EC124"
#define _CPU_NAME_ "32MZ1024ECG144"
#define _CPU_NAME_ "32MZ1024ECH144"
#define _CPU_NAME_ "32MZ1024ECM144"
#define _CPU_NAME_ "32MZ2048ECG144"
#define _CPU_NAME_ "32MZ2048ECH144"
#define _CPU_NAME_ "32MZ2048ECM144"
#define _CPU_NAME_ "32MZ0512ECE064"
#define _CPU_NAME_ "32MZ0512ECF064"
#define _CPU_NAME_ "32MZ0512ECK064"
#define _CPU_NAME_ "32MZ1024ECE064"
#define _CPU_NAME_ "32MZ1024ECF064"
#define _CPU_NAME_ "32MZ1024ECK064"
#define _CPU_NAME_ "32MZ0512ECE100"
#define _CPU_NAME_ "32MZ0512ECF100"
#define _CPU_NAME_ "32MZ0512ECK100"
#define _CPU_NAME_ "32MZ1024ECE100"
#define _CPU_NAME_ "32MZ1024ECF100"
#define _CPU_NAME_ "32MZ1024ECK100"
#define _CPU_NAME_ "32MZ0512ECE124"
#define _CPU_NAME_ "32MZ0512ECF124"
#define _CPU_NAME_ "32MZ0512ECK124"
#define _CPU_NAME_ "32MZ1024ECE124"
#define _CPU_NAME_ "32MZ1024ECF124"
#define _CPU_NAME_ "32MZ1024ECK124"
#define _CPU_NAME_ "32MZ0512ECE144"
#define _CPU_NAME_ "32MZ0512ECF144"
#define _CPU_NAME_ "32MZ0512ECK144"
#define _CPU_NAME_ "32MZ1024ECE144"
#define _CPU_NAME_ "32MZ1024ECF144"
#define _CPU_NAME_ "32MZ1024ECK144"
#define _CPU_NAME_ "32MZ2048EFG064"
#define _CPU_NAME_ "32MZ2048EFG100"
#define _CPU_NAME_ "32MZ2048EFG124"
#define _CPU_NAME_ "32MZ2048EFG144"
#define _CPU_NAME_ "32MZ2048EFH064"
#define _CPU_NAME_ "32MZ2048EFH100"
#define _CPU_NAME_ "32MZ2048EFH124"
#define _CPU_NAME_ "32MZ2048EFH144"
#define _CPU_NAME_ "32MZ2048EFM064"
#define _CPU_NAME_ "32MZ2048EFM100"
#define _CPU_NAME_ "32MZ2048EFM124"
#define _CPU_NAME_ "32MZ2048EFM144"

I guess you want the 32MZ2048EFH064 with the FPU and *working* ADC ;) which is supported fine by the core - you just need to create a set of board files to go along with it, and grab the EFADC.c file from the WiFire Rev C+ board defs. In fact it's probably simplest to take the WiFire Rev C+ defs and adapt them to suit your own board.
Why not visit my shop? http://majenko.co.uk/catalog
Universal IDE: http://uecide.org
"I was trying to find out if it was possible to only eat one Jaffa Cake. I had to abandon the experiment because I ran out of Jaffa Cakes".

Post Reply