Arduino pulse counting with multiple Energy Meters and logging to Emoncms

This project measures multiple energy meters to check its consumption rate. Its key features are to

  • monitor power consumption using multiple counters
  • store the collected data through a net connection to an Open Energy Monitor instance



-Energymeter (One or more)

– IBOARD W5100 Ethernet Module for Arduino Development Board with POE / Xbee and SD Card Slot Expansion Free Shipping


URL & Code :

Display the power consumption of the day – Arduino power meter

This project is a power consumption monitoring application using ethernet shield and XivelyPachube ※ 2 to the upload + accumulate the data in anywhere and at any time.

Using the accumulated data “Today’s power consumption” or “highest and lowest power of today” are displayed.





– Prototype

It makes a part that measures the voltage and current required for the power calculations.

Power meter /w Arduino Power meter /w Arduino


– Circuit

Power meter /w Arduino 回路図 rev3


– 100V Transformer

The power transformer of 100V side of the wire, parallel connect the varistor in, put a fuse in series.



– Using Ethernet shield

Data measured by the Arduino power meter to Pachube (patch bay).

Pachube’s a web service that can be shared, such as environmental data and sensor data via the Internet.



– Product.

P1020691 IMGP2907 IMGP2908


Source and detail tutorial description can be found from below link.

Original link =

W5500-EVB Development Configuration

W5500-EVB is based on W5500 (WIZnet Ethernet Controller chip) and NXP ARM Cortex M0 MCU. It is usually used for evaluating W5500 and starting the IoT device development project.

To start the IoT development, we will set up the development configuration of W5500-EVB

  1. LPCXpresso Installation

LPC Xpress is development tool provided by NXP. It is based on Eclipse and using ARM-GCC compiler. If you go to, you can get the program. (It supports Windows, Linux, MAC OS)


  1. Flash Magic Installation

Flash Magic is the flash programming tool for NXP MCU. If you go to below link, you can get the program.

Get the installation file according to your PC operation system. (In here, we will explain with windows version)


If you execute the download file, you can see below windows. Just by clicking the “Next” button, install the program.






Click the “Install” button.


Click the “Finish” button



Run the Flash Magic program. If you can see the below window, the installation is correctly done.



  1. How to create the new project

We will explain how to create the new project by using open library that provided by NXP. LPC11E36 MCU is used for the W5500-EVB. As NXP does not provide the open library of LPC11E35, we will modify the “LPCOpen for KPC11E68” library. You can download the modified library from below link.


You can get the LPC Open library from below link.

Run the LPCXpress and go to File -> New -> Project. You can see below window. Select “LPCExpresso C Project” and click “Next” button.


Select “LPC11/LPC12 -> LPC11Exx -> LPCOpen – C Project” and click “Next”.


Input the project name.


Select the target MCU (LPC11E36)


Import the LPC Open library. For the open library, use the librarythat modified for W5500-EVB (File Name : Click import button.




Select Chip/Board Library and click the Finish button.

Chip/Board Library

  • lpc_chip_11exx : Chip Library
  • wiznet_evb_w5500evb_board : Board Library


Click “Next” button





If you click the Finish button, a new project is created.project13


As shown in below , you can see the project has been created.


WIZnet Technology Online Store (

In order to purchase WIZnet produts, please visit the following links.

Compact Size Network Module: WIZ850io


WIZ850io is an compact-sized network module that includes W5500(TCP/IP & Ethernet MAC & PHY) & MAG-JACK (RJ45 with X’FMR) with other glue logics. As it is hardware compatible with WIZ820io, you can easily replace the WIZ820io with WIZ850io just by updating the firmwware.

For more information, please refer to the following link;

Network Watch with 7 Segment

This posting explains how to make the network watch with 7 segment. The watch will acquire the network time information using SNTP (Simple Network Time Protocol) and displays the current time on the 7 segment using RTC (Real Time Clock)

7 segment display is a form of electronic display device for displaying decimal numerals that is an alternative to the more complex dot matrix display. If you want to know more about 7 Segment, Click below link.

About 7 Segment (Wikipedia)

SNTP (Simple Network Time protocol) is the network protocol to synchronize the time on Internet. RTC provides the current time information. It counts the date, time, minute and second by operating independently from the MCU or CPU


  • WIZwiki-W7500 : 1EA (Cortex-M0 Platform board)
  • Common-Anode Type, Array 7 Segment : 2EA
  • BC547 : 8EA
  • Tact Switch : 1EA
  • 220Ohm Resistor : 16EA
  • 1kOhm Resistor : 8EA
  • 10kOhm Resistor : 1EA
  • 1uF : 1EA
  • Jumper Wires
  • Bread Board

Hardware Circuit



As you see above circuit image, the A~G pins from 7 segment are connected to WIZwiki-W7500 in parallel. Common pins can be optionally connected 3.3V using npn transistor.



As you see the demonstration movie, when the WIZwiki-W7500 is reset, it acquires the time information from NTP server. If the RED LED is on, it means the time information is successfully acquired from NTP server. The time information is registered to RTC. The current time of RTC is displayed on the 7 segment.

Whenever you press the switch, the time and data information is alternately displayed on the 7 segment.

Firmware Code

The firmware is programmed on the mbed on-line compiler. If you click below link, you can get the source code.

WIZnet Technology Online Store (

In order to purchase WIZnet produts, please visit the following links.


Have you ever heard about PiKon 3D Printed Telescope? It is the Raspberry Pi based telescope made by a physicist in England, and got £5,850 funding at the crowd funding site Indiegogo.

For more detail, refer to below

Pikon 3D Printed Telescope

One day, a WIZnet engineer decided to make the similar one, WIZKon – an Internet Telescope that its platform is WIZwiki-W7500. Let’s see how he made it. It is very simple and easy to follow.


The following board and electronic parts are required.


  • 3D CAD File : The main body of the telescope will be made by 3D printer. You download the CAD file from the link.
  • WIZwiki-W7500 : This is the mbed-enabled ARM cortex-M0 platform board. For more detail, click Here
  • Serial Camera : LJ-DSC02
  • LENS : SSG-B51
  • ETC : Rubber bands, 2mm x 10, 20 screw bolt, wire, black thick paper, plastic support, pin header socket and etc

3D Printed Bodies

If you use above CAD file, you could get the below bodies that printed by the 3D printer.


Serial Camera Wiring

As shown below images, connect the wires to the main board of the serial camera. We are going to use this board to compress the image data from telescope into JPEG format and transmit it to the main platform board, WIZwiki-W7500.

  • Prepare the serial camera, Wires and Pin headers.
  •  serial_wire_1
  • Take off the screws from the back panel of the camera PCB
  • serial_wire_2serial_wire_3
  • Connect the wires by soldering to the PCB as below.
  • solder_wire_4
  • solder_wire_5
  • Connect the pin headers to the end of the wires as below.
  • solder_wire_6

Mounting the Camera Module

Mount the above camera module in the middle of the telescope.


Assembling the bodies

As shown in below images, we assemble the bodies of the telescope and lenses. For the exterior body of the telescope, we used the black paper to save the cost.



Assembling Everything



Connect the camera module in the body of the telescope, to the WIZwiki-W7500 as below.



You can download the mbed code about processing the camera image and Ethernet connectivity from below link.

Mbed source code repository



Below is the screen capture of the PC viewer. The PC viewer has been made with C#. If you need the source code, contact to


WIZnet Technology Online Store (

In order to purchase WIZnet produts, please visit the following links.

Online Data Analysis with Arduino and Plotly


Project Description

The service, ‘plotly’ visualizes your data in graphs or charts. The author introduces how you can use this service by using Arduino board.

It’s 2014 and the Internet-of-Things is flying along at a rapid rate with all sorts of services and devices that share data and allow control via the Internet. In the spirit of this we look a new service called plotly.
This is a “collaborative data analysis and graphing tool” which allows you to upload your own data to be analysed in many ways, and then graph the results using all sorts of plot types.
With plotly you can run your own mathematical functions over your data, run intense statistical analysis and use or edit one of the many APIs (Python, MATLAB, R, Julia, REST, Arduino, or Perl) to increase the level of customisation. Plotly works in conjunction with Google Drive to store your data, however this can be exported and imported without any issues. Futhermore plotly works best in Google Chrome.
For our review we’ll look at using plotly to quickly display and analyse data received from an Internet-connected Arduino – our EtherTen, or you can use almost any Arduino and Ethernet shield. The system isn’t completely documented however by revieiwng our example sketch and some experimenting with the interface plotly is very much usable, even in its current beta format.


original post(include Arduino source) :

WIZnet Technology Online Store (

In order to purchase WIZnet produts, please visit the following links.


Seeed Arch Link Board (VAR)

Arch Link is an mbed enabled development board based on Nordic nRF51822 and WIZnet W5500 ethernet interface. With Arduino form factor, Grove connectors and micro SD interface, it is extremely easy to create a bluetooth low energy device.


  • mbed enabled
    • Online IDE
    • Easy to use C/C++ SDK
    • Handy libraries
  • CMSIS DAP based on LPC11U35
    • Drag-n-drop programming
    • Debug using CMSIS DAP standard
    • USB virtual serial for communication
  • Arduino form factor with Grove connectors
    • I2C and UART connecter on board
  • Nordic nRF51822 Multi-protocol Bluetooth® 4.0 low energy/2.4GHz RF SoC
    • ARM Cortex M0 processor
    • 256kB flash/16kB RAM
    • Configurable I/O mapping for digital I/O
  • WIZnet W5500 Ethernet
    • Supports following Hardwired TCP/IP Protocols : TCP, UDP, ICMP, IPv4, ARP, IGMP, PPPoE
    • Supports Power down mode
    • Supports Wake on LAN over UDP
    • Supports High Speed Serial Peripheral Interface(SPI MODE 0, 3)
    • Internal 32Kbytes Memory for Tx/Rx Buffers
    • 10BaseT/100BaseTX Ethernet PHY embedded
    • with RJ45 connector
  • USB Micro B connector
  • Micro SD Card connector

Control a model car track with Azure and Arduino

This is a project to control cars using an Arduino and a Windows Azure service. The Azure service contains an AI speed controller to adjust the running of the cars to prevent them from breaking out of corners and bumping into each other. Also it will adjust the speed for the cars to run faster at the straights and slower in the corners and put a maximum speed on specific cars so trucks will run slower than passenger cars. I’ve split this objective into 3 phases.

Phase I

Run a single car on a simple oval track. Control the speed and gather metric data while the car is running or standing still.

Phase II

Run two cars on the oval track divided into six separate sections. Control the speed of the cars not to bump into each other’s backs based on the gathered metrics.

Phase III

Build a more complicated track with dozens of sections, crossroads and junctions and run half a dozen cars on it. Control the speed of the cars not only not to bump into each other’s backs but also not to bump in to each other at the crossroads and junctions based on the gathered metrics.

Below is some detail on the first phase I completed by now. I’m currently working on the second phase. In this article I’m not going into code details as it’s all plain C++ for the Arduino, C# for the Windows Azure service and SQL for the Sql Azure database.


The service runs in Windows Azure. For logging and collecting the metric data there are a couple of SqlServer Azure databases.

Basic Setup

Faller Ams Track

The Faller Ams track is connected to the Arduino via the electric components. Basic power supply is from an old Fleischmann model train track supplying between 0-17 volts

The Hall effect sensor:

Phase II

Now the track is divided into 6 separate sections, two straights and four 90° curves:

The multiplexer

To drive the 6 sections I’m using a multiplexer. This is an IC component designed to split one lead into multiple leads (demultiplexer) or the other way round to converse multiple leads into one (multiplexer).The Arduino has 6 PWM ports so I could wire each section into one of them. Apart from blowing up one PWM port during my experiments, leaving me with one short, this will also become a problem in phase three connecting dozens of sections. The multiplexer 4051 has 8 ports and is very cheap so this I will use. With 5 PWM ports still functioning this will drive 40 sections and that should be enough for now. The multiplexer sits on the left of the breadboard and on the right are the six MOSFET it controls. Below these are the optocouplers discussed in the next section. When you look closely at the attached video clip you can see the car already slowing down in the curves using this setup.

Phase III (Preparation)

I’ll have to look into several issues as preparation for phase 3:

  • Design a suitable more interesting track with the track sections I have available
  • Expand the available pins either with multiplexers or a bigger Arduino: The challenge will be to do this on a limited budget and without exploding the electronic complexity.
  • Refactor the current C# cloud logic to cope with increased complexity
  • Create better trace information to monitor the state of the track at any given moment.

These track sections are waiting to be connected:

And here are the cars (at least the ones that are still functioning):

For more details, visit the following website.

Source :

Arduino Mega Server: Fantastic software for your Arduino controller!

What is Arduino Mega Server?

It’s operation system for your microcontroller Arduino.

  • Easy-to-use interface
  • Support hardware
  • Network functions

★ Unlimited number of the sites

Supported web-technologies

  • Files without restrictions
  • Modern web-technologies
  • Change content on the fly
  • Dynamic interface
  • Rich graphics
  • Adaptive design

★ Conception 100 in 1

Basic set

Arduino Mega

             Arduino Mega

Ethernet Shield

             Ethernet Shield

microSD card

             microSD card


For more details, please check out