Microchip Arduino thing interview questions?

Anything not related to a specific project.

Re: Microchip Arduino thing interview questions?

Postby pingbat » Thu May 26, 2011 11:25 am

How do you plan to support libraries with strict timing requirements?

I noticed that the board is 80Mhz. Maybe the default operating speed should be set to 64Mhz enabling easy porting of such libraries? Do you have a different solution in mind?
pingbat
Newbie
Newbie
 
Posts: 2
Joined: Thu May 26, 2011 10:55 am

Re: Microchip Arduino thing interview questions?

Postby tcmichals » Thu May 26, 2011 11:34 am

The issue is not the gcc compiler, it is the PCI32 libraries, I was changing them to use standard gcc pragma's etc.

Putting the fuse bits into flash areas etc.
tcmichals
Newbie
Newbie
 
Posts: 8
Joined: Mon May 02, 2011 9:52 am

Re: Microchip Arduino thing interview questions?

Postby LisandroP » Thu May 26, 2011 11:38 am

tcmichals wrote:Also it would be nice to take the PICkit3 and add it to openocd. Then you have a complete open source solution.


IIRC the PICkit3 schematic has been available for a while now in its official user guide. Couldn't find any information on how it is licensed though...
LisandroP
Newbie
Newbie
 
Posts: 19
Joined: Thu May 19, 2011 1:22 am

Re: Microchip Arduino thing interview questions?

Postby stephenK » Thu May 26, 2011 11:50 am

I would love to get one of the new boards. Since I an new to microprocessors this seems to be a great way to start.
stephenK
Newbie
Newbie
 
Posts: 3
Joined: Thu May 26, 2011 11:46 am

Re: Microchip Arduino thing interview questions?

Postby Markus Gritsch » Thu May 26, 2011 11:59 am



Does this contain all the code? If so, how can Microchip demand that you buy a license to be able to use optimization levels above O1?
User avatar
Markus Gritsch
Sr. Member
Sr. Member
 
Posts: 297
Joined: Tue Feb 09, 2010 6:54 am

Re: Microchip Arduino thing interview questions?

Postby jamodio » Thu May 26, 2011 12:04 pm

What are Microchip plans to join the open source community and get rid of the developer unfriendly licensing terms included in their application libraries and protocol stacks ?

Clear example USB and TCP/IP, the current terms are very discouraging for freelance developers.

TIA
Jorge
jamodio
Newbie
Newbie
 
Posts: 7
Joined: Thu May 26, 2011 11:58 am

Re: Microchip Arduino thing interview questions?

Postby ian » Thu May 26, 2011 12:07 pm

Clear example USB and TCP/IP, the current terms are very discouraging for freelance developers.


You better bet this will come up :)
User avatar
ian
Crew
Crew
 
Posts: 10803
Joined: Mon Jul 06, 2009 6:14 am

Re: Microchip Arduino thing interview questions?

Postby jamodio » Thu May 26, 2011 12:18 pm

ian wrote:
Clear example USB and TCP/IP, the current terms are very discouraging for freelance developers.


You better bet this will come up :)


Excellent !!

Jorge
jamodio
Newbie
Newbie
 
Posts: 7
Joined: Thu May 26, 2011 11:58 am

Re: Microchip Arduino thing interview questions?

Postby ian » Thu May 26, 2011 12:36 pm

Here's the full text of the license posted in the compiler directory (with no compiler source):
Microchip Non-Exclusive Compiler License

Subject to the terms of this agreement, Microchip Technology Incorporated and its subsidiary, Microchip Technology (Barbados) II Incorporated, grant to Licensee a non-exclusive, worldwide license to use, but not modify, the accompanying compiler (“Software”) and any related documentation with Microchip 32-bit microcontroller products and the modified version of the Arduino™ IDE (the “Modified IDE”) created by Fair Use Building and Research Labs. This Software and the Modified IDE are not supported by Arduino LLC.

Notwithstanding the license grant above, Licensee acknowledges that certain components of the Software may be covered by so-called “open source” software licenses (“Open Source Components”). Open Source Components means any software licenses approved as open source licenses by the Open Source Initiative or any substantially similar licenses, including any license that, as a condition of distribution of the software licensed under such license, requires that the distributor make the software available in source code format. To the extent required by the licenses covering Open Source Components, the terms of such license will apply in lieu of the terms of this agreement. To the extent the terms of the licenses applicable to Open Source Components prohibit any of the restrictions in this agreement with respect to such Open Source Components, such restrictions will not apply to such Open Source Component.
Licensee agrees that the Software, related documentation and underlying inventions, algorithms, know-how and ideas relating to the Software and related documentation are proprietary information belonging to Microchip and its licensors (“Proprietary Information”). Except as expressly allowed herein, Licensee will hold in confidence and not use or disclose any Proprietary Information.

THE SOFTWARE AND DOCUMENTATION ARE PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP OR ITS LICENSORS BE LIABLE FOR ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES INCLUDING INCIDENTAL, SPECIAL, PUNITIVE OR CONSEQUENTIAL DAMAGES, OR ANY CLAIMS BY THIRD PARTIES (INCLUDING ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS. The aggregate and cumulative liability of Microchip and its licensors for damages hereunder will in no event exceed $1000 or the amount Licensee paid Microchip for the Software and documentation, whichever is greater. Licensee acknowledges that the foregoing limitations are reasonable and an essential part of this agreement.

THIS AGREEMENT WILL BE GOVERNED BY AND CONSTRUED UNDER THE LAWS OF THE STATE OF ARIZONA AND THE UNITED STATES WITHOUT REGARD TO CONFLICTS OF LAWS PROVISIONS. Licensee agrees that any disputes arising out of or related to this Agreement, Software or Documentation will be brought in the courts of the State of Arizona. If either the Microchip or Licensee employs attorneys to enforce any rights arising out of or relating to this Agreement, the prevailing party will be entitled to recover its reasonable attorneys' fees, costs and other expenses.


They don't exactly try to void the GPL aspect of the Arduino IDE. Except, they kinda do, then say 'takesies backsies' in the second ||graph, or whatever.
User avatar
ian
Crew
Crew
 
Posts: 10803
Joined: Mon Jul 06, 2009 6:14 am

Re: Microchip Arduino thing interview questions?

Postby ian » Thu May 26, 2011 12:37 pm

Anonymous writes:
Microchip folks told me that PPS is coming as a feature in the next PIC32 to be released soon, also heard some other rumors. I'll let you know what they tell me about timeframes.
User avatar
ian
Crew
Crew
 
Posts: 10803
Joined: Mon Jul 06, 2009 6:14 am

Re: Microchip Arduino thing interview questions?

Postby ian » Thu May 26, 2011 12:39 pm

Some impressions:

The amount of work that went into making the two compatible is obvious. Nice job, Mark.
All pins are 5V tolerant (this is a 3.3V processor) except for the analog pins (which includes the two TWI/I2C pins). These are made 5V tolerant through a 200 ohm series resistor on each pin and diode to 3.3V.
The biggest incompatibility is probably the lack of PWM on D11. Our Rugged Motor Driver and other motor driver shields expect PWM on this pin, but at least our shield can be cut/jumpered to use another pin. In any case, this is one to watch out for.
The ATmega328P can generate a pin-change interrupt on any pin, while the PIC32MX340 is limited to pin-change interrupts only on certain pins.
The UNO32 uses jumpers to select between certain pins. For example, you have to move jumpers to select TWI on pins D18/D19 or select analog inputs on those pins. A similar choice has to be made on pins D10-D12 to select SPI or PWM.
The analog comparator pins are not in the same place.


http://ruggedcircuits.com/blog/2011/05/ ... -analysis/
User avatar
ian
Crew
Crew
 
Posts: 10803
Joined: Mon Jul 06, 2009 6:14 am

Re: Microchip Arduino thing interview questions?

Postby pr0cj0n » Thu May 26, 2011 12:45 pm

Hello.
I would like to ask a general question:
how would Microchip convince me to choose the PIC32 platform for projects that really need a 32-bit architecture while having the possibility of using one of the microcontrollers based on the ARM Cortex-M3 core and consequently the opportunity to use of a fully free environment based on Eclipse CDT, SourceryG + + and OpenOCD on the other hand? Because price of MCU would not be a good reason the same situation with costs of development (bearing in mind STM32Discovery for example). So what makes their product better choice?
pr0cj0n
Newbie
Newbie
 
Posts: 1
Joined: Thu May 26, 2011 12:38 pm

Re: Microchip Arduino thing interview questions?

Postby WestfW » Thu May 26, 2011 1:07 pm

there seems to be a lot of confusion surrounding the status of the gcc compiler for PIC32. I'd like to see a definitive and clear statement of exactly what is and isn't "free open source" about the development environment. At some level, you have "just" a MIPS gcc compiler, which has been fully open source for years (although perhaps not this particular "embedded" MIPS core.) Then there is rumored "improved global optimization" or something. Then there are added libraries and/or include files and/or linker scripts that are pretty much "necessary" for basic access to chip registers and such; the things that allow you to refer to peripheral addresses and bitnames from the datasheet in your C programs. Then there is whatever passes for "libc support" for PIC32 (in AVR land, this is a separately maintained open source avr-libc, but it would be possible for this to be closed source or separately licensed, especially if it is extended to include functions for manipulating all of the on-chip peripherals (like the "stellarisware" ARM libraries from TI?) And then there are the various value-added stacks that come with known restrictions (TCP stack, USB stack, etc?)

I have mixed feelings. A "restrictive" license on intermediate level libraries ("you can only use the Microchip chip-register libraries for accessing registers of Microchip chips") hardly seems very limiting. But higher-level library restrictions may cause proliferation of non-portable APIs, which is not a good thing. And the compiler itself really needs clarification.

Note that it would be possible for a build environment to be "Arduino compatible" without including quite a lot of libc and higher-level functionality. I've already noticed that the uno32 libc environment is different than avr-libc, for example...

(The existing license agreement seems to say "everything is as proprietary as we can make it except for the things we can't make proprietary", while putting the onus of figuring out which is which on the would-be modifier. That's ... not really very helpful.)

(I don't see the PIC32 MIPS based architecture being THAT dissimilar from the ARM situation. Even in ARM-land there are a bunch of vendors offering proprietary or semi-proprietary "enhanced gcc" environments. The main difference is that the large number of ARM vendors helps to clarify which pieces have which licenses...)
WestfW
Newbie
Newbie
 
Posts: 3
Joined: Fri Mar 25, 2011 12:37 am

Re: Microchip Arduino thing interview questions?

Postby schazamp » Thu May 26, 2011 2:02 pm

I was looking at the schematic and board layout, and it looks like they are using the FTDI FT232RQ (USB to Serial) chip. My question is, why didn't they use the built-in USB (on the Max32) or one of the PIC-based USB-serial converters (eg., 18F2550, 18F24J50) (for the Uno32 and/or the Max32)? The PICs seem relatively easy to source, and somewhat cheaper to me.
schazamp
Full Member
Full Member
 
Posts: 225
Joined: Wed Jan 19, 2011 9:51 am
Location: St. Louis, MO

Re: Microchip Arduino thing interview questions?

Postby Markus Gritsch » Thu May 26, 2011 2:09 pm

schazamp wrote:I was looking at the schematic and board layout, and it looks like they are using the FTDI FT232RQ (USB to Serial) chip. My question is, why didn't they use the built-in USB (on the Max32) or one of the PIC-based USB-serial converters (eg., 18F2550, 18F24J50) (for the Uno32 and/or the Max32)? The PICs seem relatively easy to source, and somewhat cheaper to me.


This is answered by Mark here: http://hackaday.com/2011/05/12/chipkit- ... ent-395667
User avatar
Markus Gritsch
Sr. Member
Sr. Member
 
Posts: 297
Joined: Tue Feb 09, 2010 6:54 am

PreviousNext

Return to General discussion