It's been awfully slow on the blog here, but we've been busy working on some of the SW libraries as well as various projects like the LPC1114/AT86RF212-based 802.15.4 wireless sensor node mentionned earlier (which has taken more revisions to get right than expected, sigh).

The LPC1343 Code Base was just updated to v0.50, and includes a number of new drivers and examples such as how to generate PWM output (using CT16B1 and P1.9 by default), a very basic driver for ST7565-based 128x64 pixel LCDs (such as the one's sold here at Adafruit.com), and a simple example of driving a bi-polar stepper motor using GPIO (based on the Arduino library).

If you are using the UART or USBCDC-based CLI (#CFG_INTERFACE), please note that the commands have been completely reorganised. Each command is now located in it's own .c file in the "/project/commands" folder, and the cmd_tbl.h and commands.c files have also been moved to "/project". The purpose of this was to seperate all project-specific code and files from the core drivers and code base to make upgrading a bit easier. A simple eeprom wrapper was also added in "/project" to try to make EEPROM access a bit easier for people. The full changelog can be see here on Google Code.

An update to the LPC1114 Code Base will follow shortly, but we are waiting back for what will hopefully be the finally revision of the RF board to test it with first.

I really wanted to call this entry: "Chibi Meets Mr. Dislocated Green Thumb: Or, How to Suck a Bit Less and Gardening", but it didn't quite fit in the title. In any case, gardening isn't exactly a topic you find on most engineering-centric sites ... but since I'm determined to try not not to kill every green and leafy thing that I come into contact with this year, I thought I'd try to compensate for my decidely non-green thumbs with technology. How am I going to do that? With a bunch of RF transceivers, sensors galore, and a gratuitous graphical desktop-based data logger of course!

We recently published a couple brief tutorials on Chibi, a light-weight, open-source 802.15.4 stack from Freaklabs. Chibi is wonderfully easy to use, and the AT86RF212 is a perfect match for this project since 868/915MHz provides excellent range and signal penetration (compared to 2.4GHz), and can safely make it through brick and concrete walls into the house or apartment.

We're just doing some final testing on an LPC1114-based wireless transceiver we made with this project in mind. They're relatively small (~3x5cm), and are designed to run off small 1200mAh LIPO cells. They have an on-board temperature sensor for accurate analog conversion of non-linear temperature-sensitive devices, and we've broken out the I2C pins, 4xADC inputs, and UART so that a variety of analog and digital sensors can be connected and logged. The UART is convenient since it provides a means to communicate directly with the board, update the firmware via ISP, or figure out why something isn't working.

The idea goes something like this: We'll have one central PC-connected 'Garden Monitor' acting as a hub (based on the LPC1343 Reference Design with an AT86RF212 antenna attached), which will receive all incoming messages and data, logging and manipulating it as required. Complimenting this will be numerous battery powered sensor nodes out in the garden (see the photo above) checking things like soil humidity, ambient temperature, and the amount of sunlight being received per day. The communication will be largely one way -- from the sensor nodes to the hub -- since the nodes will spend most of their time in deep-sleep mode to conserve battery power. They'll take sensor readings at appropriate intervals, and every 15 minutes or so send the collected data to the hub and check if there are any relevant messages waiting for that specific node.

In theory, we'll have one node for every type of plant (since they all have different requirements and are in seperate containers), and can monitor the key information on the PC or via alerts on a simple webpage or via twitter <sigh and roll eyes here /> or something similarly already-been-done-2.0.

We're just finishing off the HW and the firmware for the devices, and have been writing drivers and lookup tables for things like the Vegetronix Soil Moisture Sensors and some analog and digital sensors for ambient light, etc. Once the HW has been tested a bit more, and we have a chance to start working on the SW client we'll add a new project page with all the files. We'd like to try to make something as generic as possible to allow people to log any kind of information later on.

In any case, we'd be glad to hear what other people might like to see in an open-source wireless data logging system like this. It has a lot of fun-factor potential, but can probably be quite useful as well. Feel free to drop us a line and let us know what you think!

The LPC1343 Code Base and LPC1114 Code Base both include wireless support thanks to Chibi, an easy to use, open-source 802.15.4 wireless stack from Freaklabs. Unfortunately, this didn't make its way into the documentation yet. To try to explain the basics of how to take advantage of it, we've put together a couple tutorials, and will try to add some more wireless content and projects in the near future:

We're currently working on adding new wireless functionality to the code base for the LPC1114 and LPC1343, and an easy to use .zip file will be added to the relevant project pages when things have been tested a bit. You can always check the appropriate google code page, though, to see what's new.

After a lot of wringing of hands trying to decide on a model and figure out the right combination of reels, holders, options, etc., we finally took delivery of an MDC 7722FV Pick and Place machine last week (sold under the Manncorp label if you are in North America). After a few days at the airport working it's way through customs, this sufficiently daunting looking crate ended up in reception. It was a herculean task to open it up -- and no small task to dispose of the box afterwards -- but at least the machine itself is just under 80cm wide and fits into most elevators and doorways.

It was surprisingly easy to set everything up (probably about an hours work, aside from the physical labour involved). The mechanical construction and attention to detail is impressive, and definately lets you breath a sigh of relief after spending so much money on an 80x80cm box of metal parts.

Once we had the air compressor connected (a Michelin MCX 20), we had the camera whizzing around in no time trying to learn the software (which took a few days to start to understand, but P&P software kind of stinks universally). You can see the inside of the machine on the photo to the left, with the bottom vision visible in the upper-right hand corner, some cut tape feeders on the bottom right, and two lonely little 8mm reels on the left (we've since added many more).

The actual head that picks the pieces up (which also contains the top vision camera) can be seen to the right. There's a large hole visible where an optional paste dispenser can be inserted, but we opted to stick to manually applying to paste with stencils since the automatic dispenser is fairly slow, requires nightly cleaning, and allowed us to put a bit more money into the reels, which are what you really want to get as many of as possible.

Our first trial with a real board had mixed results, and there were a few misses, and the cut tape feeders weren't properly configured (meaning we had to manually adjust the position during assembly), but after a couple small adjustments we had the LPC1343 Reference Design Base Board assembling in 114 seconds ... and impressive change from the 30 or so (dreadfully dull) minutes it would take by hand.

It will take a bit more time to learn the ins and outs of the software, but it's nice to have the option to effectively make small runs of boards (30-40 at a time) without having to resort to tedious manual placement (generally, outsourcing assembly only becomes cost-effective at around 250 boards, though it depends on the profit-margins and number of components). It also opens up a number of possibilities such as using BGA components ... most ARM9 chips, for example, are BGA only. You can expect to see some fun new products in the next 6 months or so thanks to that added in-house capability (though BGA reflow with lead-free solder is still non-trivial).

We'll try to post some more details on the machine as we get used to working with it ourselves, particularly because there isn't a lot of information out there for 'micro-manufacturers' trying to setup a basic assembly line (with restricted budget, and possible limited physical space). Until then, though, here's a video of our first (somewhat successful) attempt at assembly: