Monday, March 26, 2012

On the bleeding edge of embedded app development

Its been along time since I found myself literally flying the edge of the envelope while developing applications. My work days for the week so far, and I include the entire weekend, have been in the pursuit of answers to problems in developing for NETMF 4.2 on a Fez Cerb40 system.

This great little machine boasts memory and IO to spare, it has UARTS and SPI connections, USB and general purpose IO and comes in a 40 in DIL package the same size as an old Zilog Z-80 processor.

It runs the .Net micro framework and can do a bunch of sophisticated stuff. The ARM processor is fast and competent and is going to spend its life inside an "object" that is smaller than an old-fashioned Nokia phone and will connect to a webservice once a day for however long its Lithium Polymer battery lasts and do cool stuff.

I feel like I'm back in the 1980's when developing was a challenge that included counting the number of bytes left in the system and wondering where you could squeeze a table of 90 values in. I feel like my skills as a software architect who feels quite happy with a massive database and a credit-derivative trading system are wholly inadequate to the challenge of making a colour LCD screen 2 inches across convey meaningful information to my user, although, i'll have a bloody good go!

Twenty five years ago I worked to create peripherals for Sinclair Spectrum home computers and various stand-alone gizmos with Z-80 and 8051 style processors. I find that in the intervening years. everything has got smaller, faster and more complicated inasmuch as I never had an IP stack to deal with but its all just the same!

I can tie a couple of transistors to a processor and drive a motor and I can drive a couple of hundred LEDs to make a cool light display. At the end of the day though, my success depends on my ability to take absolutely brand-new technology and adapt it so that anyone, from my six year old son to my eighty year old dad can look at it, understand it and use it to enhance their lives.

Ups and downs can be a good thing if you like roller-coasters!

Monday, March 19, 2012

Macbook and Keynote Presenter

What a job trying to connect these two.

Not really the fault of either the mac or the presenter remote running on my iPhone but a direct result of the hotel's really annoying wireless network policy.

The network logs out as soon as you stop using the browser so you have to log back in again. The information is never retained so if the phone goes to sleep after a few minutes the link between remote and mac is lost.

Sadly I don't see a way to use the remote via bluetooth. This seems to work if the presentation is running on an ipad but not on the mac.

In the end I discovered that I can create a wireless network on the mac, log into it with the phone, link the remote with keynote and (phew) it all works.



SoftwarePassion

If you want to check out the tweets from the SoftwarePassion conference where I will be speaking in the first slot tomorrow morning check out the hash tag #spse2012

This is a great little conference. Many speakers here from all over the world and the audience here really are getting their money's worth.

I just took in a great session by Nate Schutta and there is a session by Roy Osherove in a moment.

Scandinavian tech seems to be alive and kicking..

Friday, March 16, 2012

Electronics!

Even though I talk most about Software my true love and career training was, and is, in the fusion of electronics and code that can produce a tangible thing that fulfils a function.

Several months ago I made a decision to return to the career That started my professional life, turning down lucrative software contracts and studying up on the latest developments in electronic componentry. I was pleasantly surprised to find that aside from speed and size, not a whole lot has changed and I was able to readapt my thinking to the latest digital electronic systems with no problems.

A chance visit with friends that I had worked with for several years opened a door for me onto a project creating the hardware and software for a large and rather beautiful architects model designed to show off the client's smart grid technologies. Last week, our model was seen by many at the MIPIM 2012 property development conference in Cannes France.

The model featured buildings illuminated by hundreds of RGB LEDs showing sequences of visual effects which illustrate how energy is generated, transferred, controlled and stored in a futurists dream town. The final client, Bouygues Immobilier, a prominent French company, actually build whole towns with these capabilities. I think it true to say that the final rendition was one of a kind at the show and I admit that even though the design was mine the job was very much a team effort from some great folks with whom I worked.

The whole project was controlled by a single Gadgeteer embedded system which read the sequence data from a USB key and played it back on all the lights. In addition to the model itself, the system communicated via http to a server that showed content on four iPads that were available to viewers and that provided further explanation of the model.

As the construction was going along I took a few photos.

The initial layout

Just some of the wiring

The Gadgeteer and Fabrizio, the chap responsible for media design.

Intermediate construction phase with the "road" test program running.


Final form, installed at MIPIM in Cannes on the Bouygues stand.

NEW
Video.
This video was intended for my six year old son who asked why I had spent so much time away and when I would be coming home. The voiceover is simplistic for that reason.



Bouygues Immobilier: Client
Sensorit: Design and development
Archi Mini: Physical design and construction
Bouygues eLab: electronic hardware construction and installation
Symetrix: Content design and iPad client/server system.
Daraize Technologies: Software and hardware design, preliminary hardware construction and prototyping.

Thanks To: Dick Lantim, Fabrizio Musolino, Guillaume Lectez, Antoine Surmont, Jeremy Powell, Charles Powell.

Saturday, March 10, 2012

Mac trash won't empty?

I've had a trash can on my Mac that refused to empty for about a year. The reason being that a folder in the trash refused to disappear no matter what I did.
I followed all the Mac guides for what to do when this happens, none of them worked.
In the end I plugged the disk, my media store, into my Windows PC, ran Checkdisk; to no avail, then tried to manually delete the files.
It turns out that the Mac is happy to put nested directories with ridiculously long file names onto a Fat32 format disk thereby violating the MAX_PATH rules and rendering portions of the disk forever undeletable.
In the end I had to laboriously rename directories from 2345523000802340980980232452352398098123423 to "s" and eventually managed to arrive at a final directory name I could actually delete.
So. When your Mac file system seems screwed, fix it with a PC!