RoadTest: Element14 / Microchip PIC18F26J50 EVK Flowcode Development Kit
Author: bodgy
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?: Microchip DM164130-1 Eval Platform F1 (E-14 #1761253) Microchip PIC 24 Starter kit.
What were the biggest problems encountered?: Poorly written user manual
Detailed Review:
First I would like to thank Element14 for allowing me to RoadTest this kit.
he Flowcode evaluation kit arrived in a thick CD style case containing the board itself, a USB cable, a CD with the FlowCode software and a leaflet stating the contents.
Contents:
The board is quality 2 layer PCB, 4 sticky feet are on the underside of the board so the board is safe from shorting on something laying about the workbench. There is a standard ICSP programming header, a row of pins for a Pickit programmer bringing out the I2C and TX/RX lines and a connector for external 3v3 power. Not populated on the board is the portb header which is aimed at add on E-Blocks, the 9 pin DB9 and EEPROM chip.
On my sample the board house had placed one of the sticky feet squarely over the pads for the DB9 connector meaning it will need to be removed if the connector was to be installed. With some care at the board house the serial number could be moved down the board and the sticky foot placed just behind the E-Block pins.
Installing the software:
The CD doesn't autorun (tried in XP and Windows 7) so will need to be accessed via a file browser. Under the Software folder lurks the Flowcode V4 (Free edition) installer and a zip file with the USB bootloader program. The Flowcode software installs easily, the USB programmer (called HIDBootloader) file has to be unzipped and installed separately. It is important to note that dotNet 4 needs to be pre-installed on the PC in order for the USB programmer to work, if it isn't installed, the bootloader installer will complain. The user manual is in PDF format and is in the Datasheet folder along with the datasheet for the PIC18F26J50. Whilst the Flowcode IDE will automatically use the USB programmer it is possible to use the programmer to program any hex file to the chip, however you need to remember where you installed the programmer on your system as unlike with the Flowcode IDE no Windows shortcuts are installed.
The User Manual:
The manual runs to 21 pages and covers installation, hardware setup, how to download and run the demo firmware (my board had the firmware already installed), an attempt on how to use Flowcode, a fuzzy schematic, PCB layout and a BOM that lists al the components that can be fitted to the board.
The manual I found to be most disappointing it shows the layout of the IDE and has a very perfunctory lesson on how to program using Flowcode which consists of lighting an LED on port B0 and that is it! I would recommend Element14, Matrix Multimedia and Microchip review this and perhaps consider using the excellent Flowcode guide produced by Microchip (document 41381B on Microchip's website) which takes the user through three Labs showing how to write programs using Flowcode. The PDF would need to be rewritten as the Microchip version covers using a PIC16F690 and uses an old version of Flowcode, but updated to reflect the 18F and Flowcode4.
Flowcode program:
It is a pity that there is no copy of the actual demo program in Flowcode on the CD. This seems to me to be an important oversight for someone learning this method of coding seeing how the demo program was constructed would be most useful along with the supplied hex file.
Nothing in the resources on the CD explain what the restrictions are concerning the Free version of Flowcode, the obvious one is the 5 second delay timer on opening the IDE and on closing it. On the MatrixMultimedia website there is some information that it is restricted to 2K but I'm unsure whether that refers to the version that is on this CD and what the 2k refers to,2k in size of C code or 2k in size of resulting hex file (so far I've only made a 1.06kB hex file). The IDE also reported a couple of times that this version only runs for 28 days and has now disappeared, again I am unsure whether this restriction applies to this Element14 version of the program or if it has 'activated' itself and just some code size restriction remains. The C compiler is from Boost C and appears to have an 8kB code limit if the compiler licence details are correct for this particular version.
MatrixMultimedia state that if one wishes the HiTech C compiler can be used instead, I could not get the Lite version of Hitech C, v9.80,9.82 or xc8 to compile Flowcode using the instructions from MatrixMultimedia's forum, though the instructions are for Flowcode v4.2 and HiTech C v9.70, whether this is why I couldn't get it to work I don't know.
There is Flowcode v5 available on the MatrixMultimedia website but as I'm not sure if the restrictions on the version I have are different to those trial versions on the website I haven't installed v5 to try.
Running the demo:
There are 4 demos installed, temperature, voltage, capacitance and a LED chaser. To run the demo, just connect up power via the USB connector and press button 1 to move onto the next demo, once demo four is reached the board needs to be reset to get back to demo 1. Because pins RB4 and RB5 are the I2C pins they are pulled high by two resistors, this has the side effect of the LEDs connected to these pins are always on, this makes discerning changes in the temperature/voltage and capacitance very difficult. In my case it resulted in just two LEDs flickering.
Overall I'm a little disppointed with this kit, though of course the board can be used for many other purposes.
This is just my first impressions and I intend to give the Flowcode itself a thorough going over and will report back later on what I thought.
I have just discovered that the datasheet provided on the CD is incorrect, you need to download the latest version from the Microchip website (39931d.pdf).
To switch off the analogue pins the following is needed
ANCON0 = 0xFF, ANCON1 = 0x1F
NOT what the included datasheet says.