An emonBase is a web-connected base-station that receives energy monitoring data from the emonTx and posts to a remote or local server for web-based logging and visualisation. This server could be an installation of emoncms or a service like Pachube.
Nanode RF
As of December 2011 we will be using the NanodeRF board as an emonBase. The NanodeRF was designed by Ken Boak with design input from OpenEnergyMonitor developers. The Nanode RF has been designed to work perfectly as an emonBase.
Click here for older documentation for using the original Nanode 5 as an emonBase
Hardware
The NanodeRF is an Arduino clone board running at 3.3V with the addition of an ENC8J60 etherent controller chip and a RFM12B wireless transceiver module.
The RFM12B wireless module is avaialbe in 3 different ISM band frequencies: 433Mhz (worldwide), 868Mhz (Europe), 915Mhz (USA & Australia only) . The frequency of a module is set in software, for best performance the frequency set should match the intended hardware frequency of the module.
Note: RFM12B modules of the same frequency should be used on the emonTx, emonBase and emonGLCD. Ensure the correct frequency is set in the the Arduino sketch before uploading.
Nanode RF step-by-step pictorial build guide - many thanks to Ian Chilton for compiling this
For more information on the NanodeRF see Ian Chilton's Nanode information page.
Software
A 5V FTDI cable is required to upload Arduino code to the NanodeRF. The Mini-USB is for 5V power only.
emonBase Arduino code examples for receiving data via wireless from an emonTx and posting to emoncms or Pachube can be found on the OpenEnergyMonitor GitHub.
Currently (December 2011) the OpenEnergyMonitor emonBase code examples use the EtherShield library. As of November 2011 the EtherShield library has been dropped in favour of the JeeLabs EtherCard library . See Andrew Linsey's blog post which discusses the reasons for the change and the differences between the libraries.
We will be migrating emonBase examples to the EtherShield library soon. Any feedback regarding the stability and performance of the EtherCard library would be much appreciated. Please post on the forums.

I was just about to buy a
I was just about to buy a Nanode when I noticed that they are listed (nanode.eu/buy) as being 868MHz while the emonTx is listed as using the 433MHz version (at least on the v1.4 page it is).
Can someon explain this?
Thanks
Mark
Re: OpenEnergyMonitor RFM12B frequency
We offer both options. Both 433Mhz and 868Mhz can both be used in Europe. 433Mhz can be used worldwide while 868Mhz cannot be used in the US. For more info see: http://openenergymonitor.org/emon/node/271
All OpenEnergyMonitor
All OpenEnergyMonitor products use the 433Mhz band.I think this is because you're not allowed to use the 868Mhz band outside Europe and it consumes less energy. If you buy a Nanode on this site, you get a 433Mhz version of the RFM12B.Setting time
How do you set the time (hour) if you have to change for winter time/summer time ?
parts needed for EmonBase
Hi, I'm following the excellent step-by-step pictorial build guide but in 'step 13' they use two 3.3v voltage regulators (MCP1702-3302) while there was only one in my package. I first thought this was a mistake but I start to doubt this because also in my second EmonBase kit, there is only one 3.3v voltage regulator present... (the kits are numbered 2051 & 2055). So my question is: which one do I need?
And another thing I would like to know is how you guys power the EmonBase.
update: No more need to answer this. I ordered 2 big voltage regulators on Ebay and placed them on the board. Everything works fine but it just doesn't look good... ^^
Re: emonBase/NanodeRF kit
Just seen your message. I apologise that you were missing a voltage regulator. Glad you got it sorted. We usually power the emonBase with a 5V USB power adapter, make sure you get a good quality one: http://openenergymonitor.blogspot.com/2011/08/not-all-usb-power-supplies-are-created.html
Testing Nanode RF
Well, just builded both emonTX, and EmonBase Kits, and downloaded Firmwares on both, I got this from the serial, It´s working properlly?? Why I have RF fail???
imageshack.us/photo/my-images/341/debugz.jpg/
On another hand, can i download Firmware for Pachube with the NanodeRF (With IDE ver 23)
Thanks in advance
Re: testing nanode rf
Hello xotet, when rf_fail = 0 this means that the rf packet was recieved. If rf_fail = 1 that would be a rf failure. So it looks like RF is working fine for you. However you are getting post fails, it is failing to reach the server. Is that an issue or are you just asking about rf_fail?
We dont yet have pachube firmware, however if you use the ethercard library there is nice pachube example included:
https://github.com/jcw/ethercard/blob/master/examples/pachube/pachube.ino
testing nanode RF
Hello Trystan, thanks for the info, finally get the nanode working I´m sending values to vis.openergymonitor.org.
I founded an Issue regarding NanodeRF code stability, It´s getting freezed when failing to connect to server.
I´m trying to contacto with you via email with no luck
Thanks in advance
Best regards
javier
Hello Javier, do you find it
Hello Javier, do you find it freezes on start up? or when trying to get a dhcp lease or dns lookup or after several successfull posts?
Hi Trystan It gets freezed
Hi Trystan It gets freezed after several successfull posts, randomlly after a few hours posting, also it's unable to reset the board with the pushbutton it only gets ive again by removing the power.
Best regards
Does the reset button work
Does the reset button work at any time? does it just stop working when it freezes?
The reset button works
The reset button works properlly when the board does not get freezed. Maybe a problem with the WatchDog??? I have a serious suspect, the fail appears when the Nanode Fails to get ack from the server.
Just for debug, I´m installed emoncms V3 on my server today and I have running since 15:00 to see what happens.
Javier
Trystan I´m worng same
Trystan I´m worng same problem with my server tonight after a few hours posting. I noticed that the board appears to be freezed but there is some ethernet activity because orange led blinks. Should be a problem with the dhcp routine.
I will try to edit the skecth to get it working with static IP to see it solves the problem.
Javier
Hello Javier, thanks for the
Hello Javier, thanks for the update on the issue, we now have four systems running here with the latest code and so far 3-4 days in its been reliable. So lets keep the monitoring going and see i when issues arrise.
Any luck with static IP so far?
Thanks Trystan
Hi Trystan thanks for the
Hi Trystan thanks for the input, today I´m looking to the board when the issue ocurred, I can see the red led on for a few of seconds, 30 aprox, then goes off and the red orange on the ethernet plug start to blink, this is the "freezed" status, can´t get the board alive until the power is recycled. Does it means that is a problem with the reset after the WDT? Have you experienced the issue??
Thanks a lot.
Javier
Trystan, did you experienced
Trystan, did you experienced the issue???? I'm getting frustrated with this trouble.
Re: Uno bootloader
Hi,
Is your Nanode running the Arduino Delianuova or Uno (optiboot) bootloader? The watchdog only works on the optiboot/uno bootloder. Follow instructions here and use JeeLabs ips_repair sketch which is included in the JeeLib JeeLabs library to upgrade the bootloader: http://jeelabs.org/2011/05/29/summary-of-isp-options/
Hi, Thanks for the input
Hi,
Thanks for the input Glyn, I really don't know what's the bootloader running on the board, I think shuold be the Duemilanove because of I select the Duemilanove on the Board menu on the IDE. If I understood you, I should replace the bootloader with the UNO. What I don't understand is the fact that I'm only experiencing the problem and all boards are supplied with the same Duemilanove bootloader.
Thanks Glyn
PD: Sorry for my bad english
Re: Nanode bootlaoder
Yes, you will experiance the same problem with ever board which is running the Duemilanove. You are running the Duemilanove bootloader if this is what you select on sketch upload in the IDE. Upgrading the bootloder is one option. An easier option for you is to disable to the reset watchdog function. It is only used to reset the board in case of a crash. The sketch wil run fine without it. If have updated the example on github to allow you to easily disable the watchdog. If you re-download the example from: https://github.com/openenergymonitor/NanodeRF/tree/master/NanodeRF_singleCT then comment out #define UNO on line 24.
This should work.
Pretty excited about this! I
Pretty excited about this! I am watching this whole project grow and get mature by the month
Great job you guys!
Also, to share a "find", check out Andrew's work on the TFTP remote scketch upload (EtherCard lib!)
https://github.com/thiseldo/EtherCardExamples/blob/master/EtherCard_TFTPServer/EtherCard_TFTPServer.ino
github.com/thiseldo/NanodeBootLoader/
He is one smart guy indeed, quite useful work there. The remote sketch upload is quite a feature and will come in handy for maintaining multiple remote locations.
I do have some ideas for my home build, basically my vision is
1) a NanodeRF, fully configurable thru WEB interface, saving configuration to EEPROM. Sensors configuration will take place on the NanodeRF
2) Treat EmonTX, JeeNodes and so forth as remote sensors. NanodeRF will qwery these using a JSON rather than payload structure, each remote sensor will be queried one at a time, according to the configuration @ NanodeRF. EmonTx and Jeenodes will have jumper configuration for the address and a firmware that allows typical sensors reading. They will respond to queries from NanodeRF rather than push the information. Depending on the information being queried, the remote node will use the respective software part to get the readings. This allows for comming up with pretty standartized firmware for the remote nodes that will work out of the box as all configuration will be done on the NanodeRF
3) NanodeRF will decide what to do with the information being collected based on configuration, i.e. push to remote web storage service, output to serial, output to SD card, react to pull requests (JSON)
4) a GLCD can poll the NanodeRF for time, various stats. The GLCD menus will be navigated via IR sensor with a standard remote control.
Re: pretty exited about this
Just one small comment to your plans - the reason the remote nodes use a payload structure, as opposed to JSON (and does push instead of pull) is to conserve power. Remote nodes will quite often run off battery, and your suggested changes will reduce battery life dramatically.
JSON is very "expensive" on bandwidth as well - reducing the amount of data/frequency you can send data with.
The original Jeenode sketches are extremely well written to make sure the remote nodes run in low power mode as much as possible, and keeping the radio on to receive asynchronous requests will defeat this.
Tor
truly valid; I am sure the
truly valid; I am sure the solution will present itself once I focus onto it.
In the mean time I am working on a project to control my air conditioner via a nanode; the web UI is ready, I will use that same approach for the other project as well.