[OpenTRV-dev] Pluggability

Kevin Wood kevin at the-wood-family.com
Thu Jun 25 17:46:21 BST 2015

Hi Damon,

I wonder if it would be possible to make the device drivers "pluggable"
blocks of code, so that they occupy a standard memory footprint and all
implement a common API?

Then, use a bootloader with a bit of intelligence to scan the hardware
and, using informatio reported by it, download only the required drivers
into the device when it is flashed?

In other words, move much of the device scanning intelligence, and all of
the redundant drivers, out of the memory map of the device and into the
build / downloading process.

You'd then either selectively build each of the "drivers" for the segment
of memory in which it's going to reside, make them all position
independent, or declare a small number of segments that each of them could
occupy and build a version for each, then select the correct one.

This does assume a device keeps the configuration it was created with, and
doesn't need to be "plug and play" except by flashing it again.

Just an idle thought that hasn't been fully fleshed out, so I'm sure there
will be snags...;-)



> Hi,
> I would very much like comments on what I am overlooking or getting wrong
> here:
> http://www.earth.org.uk/note-on-IoT-sensor-set.html#pluggability
> which is pretty much at the core of our Launchpad project, but applies
> also to making OpenTRV adaptable and extendable and easy to hack.
> Rgds
> Damon
> _______________________________________________
> OpenTRV-dev mailing list
> OpenTRV-dev at lists.opentrv.org.uk
> http://lists.opentrv.org.uk/listinfo/opentrv-dev

More information about the OpenTRV-dev mailing list