MPIDE

Revision as of 06:08, 20 May 2014 by LubOlimex (talk | contribs) (FAQ)

Introduction and purpose of the IDE

MPIDE (Multi-Platform Integrated Development Environment) is an Arduino-like project of chipKIT™, which allows you to reprogram the board with different custom sketches. The IDE is free and can be downloaded from their official site.
It is used to reflash the program memory of the microcontroller without an external programmer after a bootloader (check Software tab) is uploaded.

IDE features

As a difference of the other similar IDEs (like Arduino, Maple, Pinguino etc.) this one gives you the opportunity to work with different kind of microcontrollers. You don't have to change the IDE, in case you need to work with another family of microprocessor.
MPIDE inherits all the core functions from Arduino IDE. In addition to these it has some specific libraries.

Without any modifications MPIDE 0.023 provides the following libraries:
- EEPROM
- Ethernet
- Firmata
- LiquidCrystal
- Matrix
- MAX6675
- OneWire
- SD card
- Servo
- SoftPWMServo
- Software Serial
- SPI
- Sprite
- Stepper
- Wire (I2C)

and for chipKit there are few additional libraries:
- DSPI
- SoftSPI

Detailed information about all of them can be found on the page chipKIT™ Libraries

For all those libraries chipKit™ also provides an examples to demonstrate functionality of all of them. In addition to all these they have also simple examples like blinking LED, push button, serial communication etc.

Inside the IDE there is an embedded Serial Monitor which allows you easily to communicate with the host computer via virtual USB COM port. This is possible only when the board is not in programming (bootloader) state. So with this feature you don't need an external terminal program like PuTTY, Siow, HyperTerminal, TeraTerm etc. in order to transfer data between the host and the device.

Documents

Software

In order to adapt bootloader for your custom board, chipKIT™ are providing source code of their projects on GitHUB: chipKIT™ bootloaders Uploading of the bootloader requires external programmer (for example PicKit3).

For this moment Olimex provides support for 6 of our boards:<br\> 1) PIC32-Pinguino and MPIDE Library<br\> 2) PIC32-Pinguino-OTG and MPIDE Library<br\> 3) PIC32-Pinguino-Micro and MPIDE Library<br\> 4) PIC32-T795H and MPIDE Library<br\> 5) DUINOMITE-MEGA and MPIDE Library<br\> 6) DUINOMITE-eMEGA and MPIDE Library<br\>

Each of these libraries consist of:<br\> 1) Demo (dir)<br\> 1.1) Demo description.txt - description about the demo and the menu displayed on the terminal<br\> 1.2) Demo.pde - this is the sketch witch to be compiled and uploaded with MPIDE<br\> 2) Olimex_<board name> (dir) - the files inside contain the pinout of the board<br\> 2.1) Board_Data.c<br\> 2.2) Board_Data.h<br\> 3) MPIDE board selection.txt - this text should be appended to "..\MPIDE 0.023\hardware\pic32\board.txt". When this is done the board will be visible inside the MPIDE<br\> 4) MPIDE <board name> bootloader.hex - this is the prebuilt hex file of the bootloader for the respective board<br\> 5) ReadMe.txt - a short help file which describes the pins of the board and the steps to make this library work<br\>

FAQ

Q: Why I can't upload to the board the sketch which I just compiled?

A1: Check your serial port through you are trying to upload. Is it recognized as "chipKIT USB Serial" in the Device Manager? If no - did you install the drivers for it? The drivers are located inside the MPIDE folder --> drivers

A2: Did you select the right Serial port number inside the MPIDE?

A3: Is the device in programming state (bootloader mode)? Is the Green LED blinking? If no - then reset the board while you hold the user button.

A4: Close any kind of terminal programs that uses the same serial port (including the the embedded terminal of MPIDE).


Q: Why I can't find the board I want from: "Main menu --> Tools --> Board --> ..."?

A1: Did you append the content of the file "MPIDE board selection.txt" to the end of "..\MPIDE 0.023\hardware\pic32\board.txt" file?

A2: If you have already done it - restart the MPIDE. The changes will not take effect until reboot.


Q: Why I get errors when trying to compile a simple project (or the demo) with any of your boards?

A1: Did you copy the folder with pinout description (Olimex_<board name>) to the directory: "..\MPIDE 0.023\hardware\pic32\variants"?

A2 If you have already done it - restart the MPIDE. The changes will not take effect until reboot.