Project:Nanode: Difference between revisions

From London Hackspace Wiki
 
(281 intermediate revisions by 44 users not shown)
Line 1: Line 1:
New page for [[User:Monsonite|Ken's]] new project ''''Nanode'''' (formerly '[[Project:Ethernet_Arduino|Ethernet Arduino]]') For full background and earlier work please see [[Project:Ethernet_Arduino|Ethernet Arduino]]
[[File:Nanode5_red.png|320px|right|thumb| Nanode 5]]


[[File:Nanode_running.jpg|320px|right|thumb|Functioning Nanode!]]
=Nanode=


==Open Source Collaborative Projects==
==We have been nominated for an award ==


The Nanode is ''possibly'' the first open source collaborative hardware design project at the London Hackspace- conceived, designed, manufactured and coded by Hackspace members - for Hackspace members.  As an exercise in the design and building of a simple but useful microcontroller product, Nanode will introduce minimum cost web connectivity.
9-12-2011


Nanode has been nominated for an award as the Best Internet of Things Open Source Project 2011.  You can support Nanode with your vote here http://postscapes.com/best-iot-open-source-project-2011


==About the Nanode - Some Background==
Thankyou for your support.  Team Nanode.


The Nanode is a low cost entry device aimed at Internet Connectivity projects. It has been designed to be built easily for under £20 - so that it will appeal to those on a tight budget.
==A 30 second pitch==
Nanode is an open source Arduino-like board that has in-built web connectivity. It connects to a range of wireless, wired and ethernet interfaces.
It allows you to develop web based sensor and control systems - giving you web access to six analogue sensor lines and six digital I/O lines.
It costs under £20 as an easy build it yourself kit. Nanode was designed with Hacking in mind.


It is based on the Arduino environment so will be familiar to many. It will accept Arduino shields, if necessary with longer pins to improve clearance between the Magjack connector and the underside of the shield.
==How to get one?==
Here is a [http://shop.nanode.eu list of websites] where you can purchase a Nanode kit.


It consists of a small PCB which has the ATmega328 microcontroller, some glue logic, the ENC28J60 ethernet controller and a Magjack ethernet connector. The board only uses through-hole and DIL conventional components - so that it can be easily assembled by anyone who has basic solderng skills.
==What can you do with it?==
Update to Pachube


It makes an ideal project for a teaching workshop on web connectivity, and as such will appeal to Hackspaces for advanced Arduino workshops.
Anything you can do with an Arduino, and an Arduino+Ethernet shield


==Where else to look==
'''FAQ''' here's a list of [[Project:Nanode/FAQ | Frequently Asked Questions]] about the Nanode


Yes - but ''what'' does it do?
'''Registration''' -  Add your newly built Nanode to the [[Pledges/Nanodes/Details#The_Complete_List |  Register of Nanodes and Users]]


Nanode uses a Ethernet code library developed by [http://blog.thiseldo.co.uk/?p=504 Andrew Lindsay]. Andrew has provided examples for a Twitter Client (using supertweet.net), a Pachube Publisher and Pachube Subscriber. Andrew has also developed code to allow DNS Client queries and sending UDP packet to a local network.
'''Documentation'''  PCB Files, schematics and other useful pdf [[Project:Nanode/docs | Documents]]


Nanode can be used as a micro web-server for simple home automation and control, be used to build web connected sensor networks and many other web connected applications.
'''Nanode 5 Build Guide''' - this shortcut takes you to the [[Project:Nanode/Building_a_Nanode | Pictorial Building Guide]] This is the definitive assembly guide in photos - which replaces more traditional parts lists, schematics and component insertion lists - please read this before you start soldering!


For those wanting to tinker with M2M applications, two Nanodes can communicate data or commands via a web data service such as Pachube.  
'''Nanode RF Build Guide''' - here is a [[http://ichilton.github.com/nanode/rf/build_guide.html Pictorial Building Guide for the Nanode RF]]


Another unique feature is that several Nanodes can be connected together on a multidrop serial bus and used for distributed control tasks, such as energy montoring or home automation. The wired network supplies communications and power and can be made from low cost 4 core telephone cable. Individual Nanodes can communicate via this network back to an ethernet connected "Master" unit. With RS485 driver ICs, the Nanode can be adapted as a DMX lighting controller, MIDI network or other serial control system.
'''Wi-Node Build Guide (Standalone)''' - here is a [[http://ichilton.github.com/nanode/wi-node/build_guide.html Pictorial Building Guide for the Wi-Node as a standalone board.]]


By removing the ethernet controller and Magjack, it becomes a very low cost Arduino "work-alike".  
'''Wi-Node Build Guide (Backpack for Arduino/Nanode 5)''' - here is a [[http://ichilton.github.com/nanode/wi-node/backpack_build_guide.html Pictorial Building Guide for the Wi-Node as a backpack/shield for an existing Arduino or Nanode 5 board.]]


'''Applications''' - Here's a list of [[Project:Nanode/Applications | Applications]] currently under development on the Nanode


Nanode is an Open Source Project.
'''Nanode News''' - the latest happenings on the Nanode Project [[Project:Nanode/News | here]]


==Test Drive a Nanode at the Pachube Hackathon April 8th/9th==
The previous version of this page [[Project:Nanode/scratch]] - this has a vast amount of content. search in here for help/info/problems


[[User:Monsonite|Ken]] I will be hosting a Nanode build session at the space on Saturday 2nd April from 10am.
Ian Chilton has started to maintain a page of [http://ichilton.github.com/nanode useful Nanode links], including pointers to [http://github.com/ichilton/nanode code] and libraries for the various functions of the Nanode and Nanode RF.


There will be the opportunity to build up 2 pairs of Nanodes and get them talkng to each other via Pachube. There will be 4 Nanodes available for the Pachube Hackathon, with priority given to LHS members. Even if you are not at the event, but want to play with the Nanode at the space, during that event, let me know.
==What we need help with==
Sorting out the vast amounts of info that have been dumped here.


==Board waiting list==
The idea is to have lots of project pages with the Project:Nanode namespace. Each project page would have a bunch of info+links. The intention is to make them into 'chapters' that people can refer to, or download. Most content resides in [[Project:Nanode/scratch]]. It just needs splitting up.
[[User:Teabot|Elliot]] has started a [http://wiki.hackspace.org.uk/wiki/Pledges/Nanodes Pledge Page] so that we can pool component purchasing and get the best price. The cost is £18 per Nanode which is a full kit of parts including pcb.


I would like to do a special London Hackspace branded version with a custom LHS logo on the screenprint. If anyone with EagleCAD experience would like to assist with this artwork please get in touch. As soon as we have this artwork and a minor board update, we can order the next batch. --[[User:Monsonite|Ken]]
[[Category:Projects]]
 
Now that we have reached 30 boards, we should consider collecting some money and getting a batch of pcbs ordered from Spirit Electronics.  I think that 2 square feet of board will just about fit 40 boards. --[[User:Monsonite|Ken]]
 
==The First Prototypes==
 
Here are the two boards each connected to a network port. The orange and brown wires between the boards is so that they can share the 5V power from the FTDI cable.
 
[[File:Putter_Getter.jpg|320px|center|thumb|Putter and Getter Nanodes]]
 
The upper board is the Publisher (Putter) and the lower board is the Subscriber (Getter). Every few seconds the Putter sends a new packet of data up to Pachube feed 8729, and at regular intervals the Getter subscribes to this feed to retrieve the data. In this case the data is a simple comma separated list of 6 arguments, which could be six readings from the ADCs on the Putter device, or a numerical command to which the Getter will respond.
 
==Building a Nanode==
 
The complete step by step build sequence can be found on my [http://sustburbia.blogspot.com/2011/03/nanode-just-make-it.html blog]
 
==Parts List==
 
All parts are readily available.  I recommend Cool Components in South London for several of the key items. Interested parties should try to pool component purchasing to access volume discounts.
 
    * 1 ATmega328 microcontroller (with Arduino bootloader) - CoolComponents £5.00 (£2.81 without bootloader)
    * 1 ENC28J60 ethernet controller - CoolComponents 1.99
    * 1 Magjack  - CoolComponents £1.99
 
The remaining parts were found to be considerably cheaper from Rapid Electronics giving a kit cost of £18 if parts are purchased in 10 off. This includes all parts, pcb, shipping and VAT.
 
    * 1 74AHC125 quad buffer 174-9617
    * 1 16MHz crystal 161-1761
    * 1 25MHz crystal 161-1783
    * 4 22pF ceramic capacitors 114-1760
    * 8 100nF ceramic capacitors 121-6444
    * 2 10nF ceramic capacitors 121-6435
    * 3 10uF electrolytic capacitors 945-1056
    * 1 7805 5V regulator 156-4483
    * 1 78L33 3V3 regulator 146-7768
    * 1 2K resistor 934-1480
    * 4 51ohm 1% resistors 934-3342
    * 3 270 ohm resistors 933-9353
    * 3 10K resistors 933-9060
    * 1 tact switch 181-3689
    * 2 8 way 0.1" SIL Sockets
    * 2 6 way 0.1" SIL Sockets
    * 1 6 way 0.1" right angle header
    * 1 2.1mm dc jack socket
    * 1 1N4001 diode
    * 1 3mm LED
    * 2 32 pin 0.1" header strips (for optional I/O connectors). 
 
You will also need:
 
    * 1 Nanode pcb - available shortly to Hackspace members
    * 1 FTDI USB-serial cable - becoming a standard bit of kit for talking to microcontrollers.
    * or similar USB to serial converter such as Sparkfun/Cool Components
    * 1 CAT5 network cable to connect to router
 
==Current Build Files==
 
The prototype is Nanode2j and has a couple of minor layout bugs, these have been corrected in 2l. The EagleCAD pcb files have been uploaded to [http://www.thingiverse.com/Monsonite Thingiverse ] as a starting point, but potential users should read the bug-list on the schematic page.
 
I've now corrected the pcb errors and made some improvements. The Version 3c files are here on [http://www.coolcomponents.co.uk/catalog/resources/19154.pdf Thingiverse]
 
1. Fixed the incorrect connections on the Magjack
 
2. Moved the reset switch to edge of board and allow for a vertical switch which can be pressed even if shield is fitted.
 
3. Moved the LED to board edge so that you can see it
 
4. The local comms bus and power now comes out on a 4 pin screw terminal for easy-peezy connection
 
5. Added auto reset capacitor C17 on pin 6 of FTDI connector
 
6. Added pull-up resistor to /RXEN so that it defaults to FTDI connection
 
7. Removed surplus connectors
 
8. Added a H as a place keeper for the proper Hackspace Logo
 
9. Added text "London Hackspace NANODE 3" and Arbour Wood (c)2011 (My Firm).
 
10. Improved position of 3V3 decoupling capacitors on ENC28J60
 
11. Analogue input connector J12 now has GND pin
 
12. Implemented [http://www.obdev.at/products/vusb/index.html Virtual USB] with connector P7 on end of the pcb - saving cost of FTDI cable!!
 
14. I think that these would be so cool on blue pcb board with white Hackspace "H" Logo
 
==Nanode: Applications and Brainstorming==
 
This section is for all potential applications and wild ideas of what can be done with the Nanode.
 
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.
 
[http://openenergymonitor.org/emon/ 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 [http://www.sparkfun.com/products/9530 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.
 
==Questions & Answers & Feedback==
 
If you have any queries - please put them here.
 
Is the local bandwidth between two nanodes enough to create an ethernet bridge in software? -- Answer to myself: the multidrop bus is in the range of 9600 baud.
 
The ATmega328 is not limited to 9600 baud serial. If the distance between nodes is short then 115,200baud may be possible. You could also connect nodes together with I2C or SPI. [[User:Monsonite|Ken]]
 
Can non-members join the PCB batch?
 
Yes - but note that we are currently only offering a full kit consisting of pcb and all components.
 
> Thanks.  And the same deal in joining in with the full parts order? (£18.00+donation).  Do we just add names to the list above?
 
We have been looking at the practicalities of providing a full kit, and think this is the best way to proceed, at this time.
 
Bare boards may be available at a later date, but for now the £18 kit is the only option being offered. A small donation to the Hackspace from non-members would be appreciated. [[User:Monsonite|Ken]]

Latest revision as of 21:09, 14 August 2013

Nanode 5

Nanode

We have been nominated for an award

9-12-2011

Nanode has been nominated for an award as the Best Internet of Things Open Source Project 2011. You can support Nanode with your vote here http://postscapes.com/best-iot-open-source-project-2011

Thankyou for your support. Team Nanode.

A 30 second pitch

Nanode is an open source Arduino-like board that has in-built web connectivity. It connects to a range of wireless, wired and ethernet interfaces. It allows you to develop web based sensor and control systems - giving you web access to six analogue sensor lines and six digital I/O lines. It costs under £20 as an easy build it yourself kit. Nanode was designed with Hacking in mind.

How to get one?

Here is a list of websites where you can purchase a Nanode kit.

What can you do with it?

Update to Pachube

Anything you can do with an Arduino, and an Arduino+Ethernet shield

Where else to look

FAQ here's a list of Frequently Asked Questions about the Nanode

Registration - Add your newly built Nanode to the Register of Nanodes and Users

Documentation PCB Files, schematics and other useful pdf Documents

Nanode 5 Build Guide - this shortcut takes you to the Pictorial Building Guide This is the definitive assembly guide in photos - which replaces more traditional parts lists, schematics and component insertion lists - please read this before you start soldering!

Nanode RF Build Guide - here is a [Pictorial Building Guide for the Nanode RF]

Wi-Node Build Guide (Standalone) - here is a [Pictorial Building Guide for the Wi-Node as a standalone board.]

Wi-Node Build Guide (Backpack for Arduino/Nanode 5) - here is a [Pictorial Building Guide for the Wi-Node as a backpack/shield for an existing Arduino or Nanode 5 board.]

Applications - Here's a list of Applications currently under development on the Nanode

Nanode News - the latest happenings on the Nanode Project here

The previous version of this page Project:Nanode/scratch - this has a vast amount of content. search in here for help/info/problems

Ian Chilton has started to maintain a page of useful Nanode links, including pointers to code and libraries for the various functions of the Nanode and Nanode RF.

What we need help with

Sorting out the vast amounts of info that have been dumped here.

The idea is to have lots of project pages with the Project:Nanode namespace. Each project page would have a bunch of info+links. The intention is to make them into 'chapters' that people can refer to, or download. Most content resides in Project:Nanode/scratch. It just needs splitting up.