[chbot] Digilent ChipKit Uno32

Volker Kuhlmann list0570 at paradise.net.nz
Wed Aug 15 11:09:31 BST 2012

On Tue 14 Aug 2012 03:10:36 NZST +1200, Michael Pearce wrote:

> Correction to the following:
> > * It's from Microchip. The licensing is dubious, with plenty of the
> > Arduino/gcc material they supply being peppered with "you may run this
> > only on Microchip hardware". Well I'm not interested in vendor lock-ins
> > and non-portability.
> It was NOT designed by Microchip and is NOT a Microchip product!
> But Microchip (and many others) do sell it.

I know that. You're missing the point. The board comes as a whole. Who
designed which part doesn't concern me. What is relevant is what is
available for my use, and under what conditions, and that is determined
by the CPU on it, and consequently the C library and compiler required
to run it. Which very firmly says Microchip.

If Microchip wants to put certain license conditions on their software
that's fine by me, but the software available for the chipkit boards
doesn't make clear which parts are Microchip's to put their license on
and which are not. The way it was done implied that gcc and the Arduino
IDE were Microchip's, which is offensive and of questionable legality.
That's what I mean by dubious licensing terms.

Personally I am not going to spend a lot of my time writing software
that's dependent on "must only be run on Microchip" to avoid vendor
lock-in and portability problems as much as possible.

The value of the chipkit boards is in their Arduino-compatibility,
commenting on that is relevant. Where the necessary libraries come from
(Microchip, Digilent, community) doesn't interest me, the only thing
that matters is whether they are available - and what license they are
under. The measurement stick here is Arduino. If Microchip doesn't like
that than they should have promoted open source communities 10 years
earlier instead of jumping on the bandwaggon now it's going strong.
Before you get going at Atmel - they're not that hot in open source
either, but fact is, it's available for AVR.

> Code size issue is mostly because of C++ bloat... and 32bit wide
> instructions at the moment... but will reduce if people put more
> effort into the compiler, and even use the MIPS16 option for the
> assembler.

My comparison used the same source(!) and the same compiler, just
different Arduino hardware, and thus is directly valid. Chipkit boards
compare themselves to arduino boards, fact is the code space advantage
is only a fraction of that implied by the relative flash sizes.

That "C++ bloat" is actually pretty non-existing on AVR. If it was
different for MIPS (which I doubt), it's a point against chipkit.

> It does run lightning fast in comparison to an 8 bit ARM though..

Sure. I forgot that on my positives.

> And don't blame Microchip for the lack of library ports or the SPI
> thing....

I didn't. I said it's not there. I don't care where it comes from.

Upscaling a bursting AVR arduino into a chipkit only works well if the
libraries are available. Digilent did a really good job there, and
that's despite Microchip, not because of

My posting was a more detailed review of chipkit than Michael Field's.
If you don't like the negative points I listed (and which I stand by)
that's your problem. I never said "don't use chipkit", I said it's good
for X if you can put up with Y, thus providing information for making a
more informed decision.

I still think pity that Digilent didn't use an ARM, for the same reasons
Charles put yesterday and to which I might add that arm-gcc is likely to
be a lot better than pic32mx-gcc, but that's as it is...


Volker Kuhlmann
http://volker.dnsalias.net/	Please do not CC list postings to me.

More information about the Chchrobotics mailing list