RoadTest: Microchip Multimedia Expansion Board
Author: Capper
Creation date:
Evaluation Type: Evaluation Boards
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: I've been working with the mbed platform and some Atmel processors lately, so I will compare features for each.
What were the biggest problems encountered?: The biggest problems are finding the documentation on the Microchip website for the particular task needed to be done.
Detailed Review:
I'm going to start this now and edit as I work through the various functions on the multimedia board.
The board itself is layed out nicely. The connectors are all at the edges, so the entire assembly can be mounted in a box if needed.
The PIC32 ethernet starter kit plugged right into the board and extends out the bottom of the multimedia board LCD display so the USB and RJ connectors are easy to get at. There was even a hole and a nylon bolt already on the multimedia board to secure the PIC32 board to. If you mount the assembly in a box, however, getting at the switches and seeing the LEDs may be difficult. It looks like solder pads for a SMB ant. connector may be available for the WiFi also.
The connector for the PIC32 starter kit is not a common hobby connector. Someplace like SparkFun needs to design an adaptor breakout board for this one. I had to remove two rubber sticky pads on the starter kit for the two boards to assemble correctly.
Here's the Wifi pcb antenna and the SMB connector pads.
No software and minimal printed data comes in the package. The user is required to find all the required documentation, drivers, and software/examples on the Microchip website. Here's where the fun starts.
Be prepared to spend several hours downloading and installing software for a clean install on a new machine. I installed MPLAB IDE v8.66, MPLAB C32 v1_12a compiler toolchain, Microchip application libraries v2010_10_19, the Graphics display designer V2.0.1.10, and downloaded a few dozen examples, library install notes, data sheets, and application notes/help files.
After installing all this and plugging the two boards together, I connected the board to the PC (running Window7). The correct USB device driver didn't get installed, so I had to search around the documents to find out where the correct driver was located and re-install it. After about an hour, I had the joystick demo loaded and running successfully.
I managed to make a new screen for the LCD using the Graphics Display Designer tool and replace the screen on the joystick demo. The colors are nice and sharp, they look better than this picture makes them out to be.
I found that a cell phone charger makes a good temporary 5VDC power supply to power the boards from the USB port.
** Update 4/6/2011 **
I tried to run the TCPIP WiFi Demo, and got the following error:
"Executing: "C:\Program Files\Microchip\MPLAB C32 Suite\bin\pic32-gcc.exe" -mprocessor=32MX795F512L -x c -c "MainDemo.c" -o"Objects - TCPIP WiFi Demo App-C32\MainDemo.o" -MMD -MF"Objects - TCPIP WiFi Demo App-C32\MainDemo.d" -I"." -I".\Microchip\Include" -I"..\Board Support Package" -D__DEBUG -D__MPLAB_DEBUGGER_PIC32MXSK=1 -g -DPIC32_STARTER_KIT -Wall
In file included from ./Microchip/Include/TCPIP Stack/TCPIP.h:284,
from MainDemo.c:94:
./Microchip/Include/TCPIP Stack/Helpers.h:64: error: conflicting types for 'ultoa'
***update 5/1/2011
I've tried a few more of the demo programs from Microchip. The 3-axis accelerometer demo worked rather well, and also uses the touch screen feature. The accelerometers are DC, so you can tip the PCB in whatever direction and get a result on the screen. It seems to work up to a few hz, but I haven't been able to really calibrate the device or check limits yet.
The TCPIP and WiFi demos are getting on my nerves. I haven't been able to successfully compile the demos yet, all sorts of library/file location/declaration errors. I've spent several hours on them so far, and may just quit trying soon.
***update 7/4/2011
I started working with this board again because I have a project that it could be very useful for. To fix the "ultoa" problem, I had to comment out the declaration in stdlib.h:
//extern char * ultoa(char * buf, unsigned long val, int base);
and keep the one in Helpers.h:
void ultoa(DWORD Value, BYTE* Buffer);
I also had to modify the file "TCPIPConfig PIC32 Internal Ethernet.h" to match the range of IP addresses used by my router. After that, the demo program built and loaded ok. The server html file assumes a different hardware configuration, however, so some of the features work, and some don't.
It's clear to me that two different groups must have coded the demos for the PIC32 Ethernet starter kit, and the MEB. I will attempt to detangle this web.
.......to be continued.