I recently published a BSP layer to add support for Marvell Kirkwood devices to OpenEmbedded, the build framework for embedded Linux. The Kirkwood SoC is used in several common products including plug computers like the Sheevaplug, and the BSP allows you to run OpenEmbedded-based distributions such as Angstrom on these devices.
Using DaVinci DM365 Codecs Without Linux
Developers making Linux-based products with the Texas Instruments DaVinci DM365 or DM368 will find a plethora of example source code and libraries that allow you to easily build your own applications. However if you want to build a non-Linux product (to use your existing RTOS for example) you will find little guidance on where to start. Continue reading
IPv4LL Compliance Testing
I’ve been working on a compliance test suite for implementations of RFC3927 IPv4 Link-Local Address Selection, also known as AutoIP. It should prove useful to anyone implementing IP4vLL address selection on an embedded device by simulating a network environment with existing IPv4LL devices which the device will need to interoperate with in terms of address selection and conflict resolution.
Universal Device Driver Framework for Embedded Systems
Recently I’ve been considering how useful it would be if the embedded systems world had something similar to Perl’s CPAN: an open repository of software modules useful for embedded systems and portable across any RTOS. This was partly triggered by a thread on StackOverflow from someone who wanted to know why he couldn’t find a ready-rolled device driver to interface his CPU with a peripheral device.
RTOS for Raisonance RCSTM8
Atomthreads now contains support for Raisonance’s STM8 compiler RCSTM8. We now support all three available STM8 compilers (Cosmic, IAR and Raisonance) so you can choose to use Atomthreads for a project safe in the knowledge that switching compilers will be pain-free.
STM8 RTOS for IAR Embedded Workbench
This week Atomthreads became the first RTOS to support Embedded Workbench (EWSTM8), the STM8 compiler launched by IAR last month. EWSTM8 provides a full professional-grade development and debug environment with support for hardware debuggers including the low cost STM8S Discovery platform. IAR offer a 30-day evaluation of the full version, as well as a time-unlimited 8KB “Kickstart” edition (with a few non-core features disabled).
Atomthreads: Free RTOS for STM8
I have just completed a port of the Atomthreads RTOS to the STM8 microcontroller. Anyone interested in running an RTOS on the STM8 can download the source code from http://atomthreads.com.
Atomthreads: Open Source RTOS
Last week I released Atomthreads, a free RTOS for embedded systems. This project grew from a task scheduler I created some time ago and subsequently extended with semaphore, mutex, queue and timer modules. The result was a lightweight and portable set of kernel sources which can be dropped in to any embedded systems project to add a thread scheduler. It has been useful to me so I decided to open source it in case it proves useful to anyone else.
STM8S Discovery Evaluation Board
I came across the STM8S Discovery board today, which is selling at the notable price of just £4.25 from Farnell (also £4.22 from Future Electronics). With this pricing, ST are clearly trying to stimulate interest in the STM8 architecture by appealing to the tinkerer market. It will be interesting to see whether they can convert this into any serious design wins. Continue reading
What is Kelvin’s Thunderstorm?
If you arrived here while looking for information on Kelvin’s Thunderstorm, you can read a great introduction at Electropaedia. From the article:
Kelvin’s Thunderstorm is an amazing water powered electrostatic generator, which can be made from simple materials at home or school, capable of generating a potential of tens of thousands of volts at its terminals. It was invented by Lord Kelvin (William Thomson) in 1867 and has no moving parts, depending on electrostatic induction and positive feedback for its operation. He called the device his water-dropping condenser.
Omnima/OpenWRT and Xbee
I have recently connected up an Omnima Embedded Board to an Xbee device, using it as a low-cost and low-power controller for a home Xbee network. This article explains how to configure an Omnima with OpenWRT/Linux such that is capable of talking to an Xbee device using Python and Pyserial.
Omnima Embedded Controller and OpenWRT
If you’re in the market for a low cost embedded Linux development board then look no further than the Omnima embedded controller. £23 gets you a MIPS platform with Ethernet and USB host ports, 16MB of RAM and (via OpenWRT) a wide-ranging repository of pre-packaged Linux applications and libraries. Compared to the likes of the Arduino, this is a lot of bang for your buck.
Py2exe and Pygame DLLs
Recently when packaging up a Windows installer for PyKaraoke I came across a problem with Py2exe’s handling of Pygame DLLs.
eCos Synthetic Target with Ethernet
One of the convenient features of the eCos real time operating system is the ability to develop and test code on your Linux development PC without downloading to target hardware. This can be done using hardware emulation (via QEMU or VMWare) or just using the built in “Synthetic Target” support. I have documented here the various steps required to install and configure the Synthetic Target on Linux (Ubuntu). As well as supporting basic eCos threading you can even run networking applications in this environment via the bundled synthetic Ethernet driver.
Continue reading
Twitter Home Automation
If you caught the recent article I wrote about my Twitter Burglar Alarm you might be wondering what the point is in using a message broadcast service like Twitter for communicating with your home. Broadcast messages are pointless for most home automation purposes – and in some cases you may actually prefer the messages to be protected from viewing by the public.
Twitter Burglar Alarm
A burglar alarm that tweets when an intruder enters the house? What with the fashion for Twitter lately, I thought I’d give it a go, and this also gave me the excuse I’d been looking for to try out the Arduino hardware platform.

![[del.icio.us]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/delicious.png)
![[Digg]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/digg.png)
![[Google]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/google.png)
![[Reddit]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/reddit.png)
![[Slashdot]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/slashdot.png)
![[StumbleUpon]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/stumbleupon.png)
![[Technorati]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/technorati.png)
![[Twitter]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/twitter.png)
![[Yahoo!]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/yahoo.png)
![[Email]](http://www.kelvinsthunderstorm.com/wp-content/plugins/bookmarkify/email.png)

