Embedded software upgrade for remote-controlled vehicle

Since 2005 we have provided embedded software solutions for a range of industry sectors including military and aerospace, industrial automation and telecommunications. From embedded software and system development, to software porting and software optimisation, we can satisfy most requirements.

The following project showcases part of our extensive capabilities:

Customer need

Ability to do in-the-field software upgrades on the control system for a remote-controlled vehicle.

Control system ran VxWorks on an ARM7-based microcontroller, booting from NOR flash memory.

Software upgrades must happen automatically when the control system boots with a network connection to laptop computer containing updated software.

Software upgrade mechanism must include integrity checks.

The challenge

Laptop computers carrying software upgrades must not use any commercially-licenced development tools or non-standard software.

Limited memory resources on target hardware.

Fall-back mechanism to prevent the control system becoming inoperable if upgrade fails (for example, due to loss of power while programming flash memory).

Our solution

Discussed and refined requirements with client to establish best approach to field upgrade.

Designed “pull” mechanism for software upgrades based on using standard software (such as ftp) on the host in conjunction with a modified boot loader on the control system.

Designed method of packaging software images to include version information, integrity checks, etc.

Developed host-based program to convert system images (built by standard Wind River development tools) into packaged format for field upgrade.

Modified VxWorks boot loader to implement field upgrade in a modular, configurable fashion.

The outcome

Project requirements achieved and delivered on schedule.