Thursday, October 6, 2011

Arduino pellet boiler data logger and controller

My Stoker datalogger is based on arduino, i use a freeduino from nuelectronic, and a ethershield from nuelectronic.

This post is about my BETA StokerArduino v1.0

All software found on this page is open source protected under the GNU General Public License

The open source software (all) from this site is placed in, you can embed on you own site, please   do not remove link to my blog, thanks.

Software to this project consist of: arduino code, php code for the webserver, database setup and more.

** Working on the document ** Updated 6 oktober 2011

Code in the project:
Arduino datalogger code used, 'stokerarduino v1'  Grab arduino v1 code here
flaschcharts and xml files
save.php placed on webserver
index.php and more files to view data
stoker datalogger project on it's Danish homepage also code pieces for direct download

Functionality in StokerArduino v1.0

This version 1.0 update data on my mysql database every 2 minuttes from the boiler, you can change this as you need in the arduino software.

The datapackaged from arduino datalogger includes:

  • Outdoor temperature 
  • Boiler temperature 
  • Pellet level(ultrasonic sensor) 
  • Some status switches: alive or not 

Presented in a status.txt file on webserver as:|2009-10-13 16:49:41; temperatur-stoker 44.81|2009-10-13 16:49:41; temperatur-ude 05.93|2009-10-13 16:49:41; pille-niveau 000044

Pellet level is in cm from ultrasonic sensor to pellets. This means the higher read in cm, the lower the pellet level are in real life in my stoker pellet container. You might need to make some changes to fit your own installation.

All data are avaiable from any webbrowser any where supporting flach.

Version 1.0 Also send a low level alert as sms message.

Data are presented as raw data and as flashcharts.

I also made a small windows program (.NET/C#) to view data from boiler.

I am in a optimization process and working on v2.0, includes webcontrol, remote shutdown from android, air inlet control, flue temperature measuring for boiler temperature control.

Android based APP will be used as remote control in v2.0. Also webacces as in v1.0

Webbrowser view StokerArduino v1.0:

Language is Danish

Language is Danish

This is how it looks in real life 

The hardware setup

This is my very old very good stoker pellet boiler and pellet container

Ultrasonic sensor connected to Arduino board

The 'one wire' temperatur sensor from dallas

Here you see the ethershield with a 'nerd' shield to connect sensors

One temperature sensor placed in boiler top 

The ultrasonic level sensor cost was approx $10 including shipping, very cheap ;)
It sends out data in serielt/ttl/pwm .

The sensor is called URM3.2 and i found it on, this page no longer exsist, but try find something similar on ebay ;)

Pin connection on ultrasonic sensor URM3.2

1: +VCC – +5V Power
2: GND – Ground
3: RST – Reset
4: PWM – PWM Output 0-25000US,Every 50US represent 1cm
5: MOTO – Servo control signal output
COMP – On/OFF mode, when the detecting distance is smaller than a pre-set value, this pin pulls low.
TRIG – PWM or RS232 trigger pin
7: PWR_ON – Enable pin, enable the sensor when high
8: RXD – RS232,TTL communication
9: TXD – RS232,TTL communication

There was a URM V3.2 Arduino Library, if you can't find it anywhere, just leave a reply below ;)

About the ultrasonic sensor, specifications

This sensor is perfect for any number of applications that require you to perform measurements between moving or stationary objects. Naturally, robotics applications are very popular but you’ll also find this product to be useful in security systems or as an infrared replacement if so desired.sensor measures distance using sonar; an ultrasonic (well above human hearing) pulse is transmitted from the unit and distance-to-target is determined by measuring the time required for the echo return.

URM37 V3.2 Ultrasonic Sensor uses an industrial level AVR processor as the main processing unit. It comes with a temperature correction which is very unique in its class.

Direct control through RS232, easy to control by PC.

All URM 37 V3.2 is shipped with PWM mode Enabled.  Plug on your MCU and play with it!

This URM V3.2 Rev2 has a jumper which allows user to select RS232 level output or TTL level output.  The previous one doesn’t have this function.

Power: +5V
Current: <20mA
Working temperature: -10 ~ +70 C
Detecting range: 4cm-5m
Resolution: 1cm
Interface: PWM, RS232 or TTL (via Jumper)
Servo control: One servo control output
Operating Mode: Serial (PWM) passive control mode; Autonomous Mode; On/OFF Mode
Temperature sensor: 12 bits reading from serial port
Size: 22mm × 51 mm
Weight: 30g


  1. Hej,
    Jeg roder også med Arduino som stoker styring og kunne godt tænke mig at vide lidt mere om din løsning. Har du en e-mail adresse jeg kan skrive til ?

  2. hey, jo da det har jeg , men vil ikke lige have den liggende frit her, du ved, spam :)

    du kan skrive en besked her:

    og indtaste dig email, den bliver holdt skjult, så kan jeg maile dig den vej.

    mvh ;)

  3. At the first time i saw the inside part of the boiler . It's really attractive . I think above pictures are picture of boiler repair which is so much attract me .

  4. BlueHost is the best hosting provider with plans for all of your hosting needs.