I design and build small devices, usually for friends and family, using PIC microcontrollers. I would very much like to be able to make a decent living from it but I'm not a real software developer and have no formal training in the discipline.

My day job is as a software tester for such organisations as Symbian, T-Mobile, Psion, IBM, BT and quite a few others so I can tell people what is wrong with their software, it's just that I couldn't do any better myself!

 

To date I have a few nice little projects in the wild. A data logger for a racecar, a fuel computer for a dive boat, a security camera and recorder controller and last and most certainly the most exciting, a radio controlled firework ignition system.

 

It is the latter that finally convinced me that for speed of development, code quality, portability, ease of use, ram re-usability - need I go on? ...to use C instead of assembler. It was a tough decision as I had got pretty good at assembler, so good in my own opinion that I had finally figured out why they got around to writing C in the first place. Pointers were obvious to me, variables, arrays, you name it. So why not just make life easier and use C? Simple, I didn't want to pay for it, as I don't make any money out of it.

 

So, now skip forward a year or so. I had tried the free download restricted version of anyones compiler I could get my hands on. I eventually decided CC5X was the one as it claimed to be restricted but in such a way that by compiling several small modules, the restrictions could effectively be ignored. I persevered with this for some time until I finally decided to revert to assembler because the life of a poor C programmer was so miserable.

 

I couldn't tell you what made me take one last look at the contenders in the PIC compiler market but nevertheless I did and for some reason decided to spend hard earned money on SourceBoost IDE. It advertised itself to me as pretty much MPLAB but in C, with all the associated goodies such as a simulator, for not a large capital outlay.

 

The rest is history. I am totally converted. Life is bliss. I like my ideas to be manifested in a working device quickly, less I lose interest, and with this development environment that is easily realised. I re-coded my atrocious attempt at CC5X C code into decent standard C in no time at all and the results were almost instantaneous. Working code in hours instead of weeks. I then moved on to my star project, the fireworks controller, and because of the plummeting defect rates and speed of development I ported the whole lot to C in no time at all, and previously unidentified or unfixable problems were gone. I can now apply my professional software testing techniques to the code and then test the functional aspects of my own work and the results are great.

 

What caused me to start writing this report tonight was deciding to use the sample LCD code to update the boat fuel computer. I thought I would need the LCD plug in to test it, so I needed to post a report on my web site to get a free one! As it happened it was quicker to port the project to C than it was to write this report. I grabbed the sample code from the SourceBoost web site, changed a few config items, changed the target device, programmed my chip, connected 5 volts and it just worked! First time, no bugs, job done.

 

Thanks Pavel and Dave. Now can I please have a free plugin license?