Project:Nanode/Skunk Works

From London Hackspace Wiki
Jump to navigation Jump to search

This page is for all your ideas of how we can modify and improve Nanode.

Because of the open source nature of Nanode - others are free to modify and improve upon the basic design, provided that they share their improvements with the whole community.

At LHS there will be a small operating budget to develop some of the best ideas, and possibly hold some sort of a competition held every few months for the best ideas, applications or improvements submitted.

Here's your opportunity to contribute to the future of Project:Nanode and possibly have some of your ideas adopted on future pcbs.

Some other ideas planned or on the wish list: - please feel free to add your own ideas/wishes. If you want to contribute to any of these ideas - go ahead!

Ideas / Wish List

1. A low cost, plug-in wireless shield using popular RFM12 wireless module would allow the Nanode to form the basis of wireless networks - as well as have compatability with JeeNodes and some of the CurrentCost Energy Monitoring devices. I'm currently working on this shield layout - Ken

2. Use of virtual USB to eliminate the FTDI cable - implememted on Version 5. Hardware done on V5 - firmware & bootloader need to be tested.

3. A serial configuration program. Allows the IP address and other configuration parameters of the Nanode to be easily programmed from PC/MAC. Nanodes could be given unique MAC and sub-address. Sam Carlisle and Matt Gaffen worken on this at the Pachube Hackathon.

4. A position for a surface mount SPI memory (either RAM or EE) on the underside of the board to allow web page storage or much needed RAM buffer space. Microchip 23K256 adds 32K RAM for £1. One SMT device as an option should be acceptable to most constructors. Done - on V5, will also work with non-volatile FRAM memory. Provision on V5 for Microchip 11AA02E48 - unique MAC address from tiny 3 pin chip. - Ken

5. An energy monitoring shield for electricity and gas meter pulse counting - working on this with Glyn Hudson and Trystan Lea of -Ken

6. Define a simple serial network protocol to allow Nanodes to communicate

7. Improved firmware to allow easy access to and from Pachube for data exchange

8. Firmware to allow MQTT messaging

9. Experiments to define maximum data transfer rates across the various networks

10. Dedicated web forum / wiki for all Nanode co-developers:

11. #nanode IRC channel with searchable archive - done 10/6/11.

12. A very small format Nanode using SMT and about the same size/footptint as an Arduino Nano. Because of SMT devices would need to be professionally built.

13. Please can we have PCB markings for +V and Ground as well as all the pin numbers!

14. One or two simple solder-bridges which lets one use pin 36/78 as a poor mans PoE.

15. Move the two vias a bit so that the crystal can be soldered flat on the board. Or supply Xtal insulator like Farnell 4695471.

16. Use SMD R's. 0805 SMD's aren't difficult to solder....honest! Would release a lot of real estate. Intermediate to 12. above

17. Change to make all 3v3 conversion easy. Consider a new VUNREG rail which can be fed from USB or PWR in, solder bridge selection (diode volts drop too much for wired OR). Solder bridge for VUNREG to VCC or regulator inputs (reg IC3 change to LDO 3V3). New/change regulator for 5V VCC/VUNREG to Shield?

As a simple example, a Nanode could read up to 6 analogue sensors, connected to its ADC inputs - such as temperature sensing thermistors or LM35 thermometer ICs. These temperature sensors are located in different rooms of the house, or outside, or on the hot water tank. Between them they give an indication of the state of the home heating. The temperature readings are published up to a Pachube feed, where they can be accessed by other devices. A Nanode subscribing to the feed reads the temperature data as a CSV string, strips out the numerical data and acts on its content. For example controlling a user display, operating relays which control the boiler for heating or hot water as it is required.

The CSV format which Pachube uses is flexible enough to cope with many types of data, or even direct numerical commands. A string of comma separated, numerical commands passed up to Pachube could be simply interpreted by any subscribing Nanodes to perform a specific action. The first number could be the address of the Nanode which you want to command, for example the one which controls the boiler relay.

Openenergymonitor have developed some very low cost Arduino based devices to read electricity and gas meters. One of these will shortly be released as an Arduino shield and could use the Nanode as its connection to the net.

The other main application of the Nanode is in Master/Slave wired networks. Several Nanodes are connected to a wired serial bus and distributed about the environment where they run sensing or control tasks - such as a home automation system or DMX lighting control system. Each slave can be addressed individually by a Master controller, which then connects via its ethernet connection to the web.

Slaves could store sensor readings in RAM (limited to 2K on the '328) and periodically be polled by the Master device to connect to the serial bus and upload its data. Data could be recorded straight off the serial bus using the Openlog serial data logger concept from Sparkfun Electronics. The Openlog code runs nicely on an Arduino fitted with a SDcard shield, so could be run on the Master Nanode. The Master could act as a SDcard based file server or storage to the serially connected slaves.