Wireless sensor/actuator network with CC430

Easily scalable home automation solution using RF SoC

Similar projects worth following
Hardware for wireless data acquisition and control in the automated greenhouse. Other than that it could be used in any sort of automation project.

The main idea of the project was to create a wireless network of sensors and actuators (grouped into arbitrary nodes) for data acquisition and control in the automated greenhouse. Although initially it was intended to be used in a hydroponics greenhouse the project is made with adaptability in mind so that it could be used in most cases where small-scale automation is required. All data is collected from sensors and sent to the gateway node connected to web server, where processing of the obtained information takes place. Commands to actuators follow the same route in the opposite direction. This structure allows flexible and versatile solution for automation with modular approach that can be deployed quickly to any greenhouse.

A place to deploy the system was fortunately found in my own university, where senior students built a hydroponics greenhouse to test various automation solutions (if memory serves me, the last thing that ran this greenhouse was PLC).

The general diagram of the network that I've devised is shown in the figure below:

Each sensor/actuator is equipped with a microcontroller that uniquely identifies this sensor in I2C network and allows the user to easily plug them to nodes in any order and any quantity (not exceeding the I2C address space size, obviously). The bidirectional link is established via radio with the gateway node, which sends the commands to nodes and receives data from sensors relaying it to the server. The server could be any single-board computer (like Rappberry Pi) or even an actual PC running the application which handles the link to gateway node.

Each node is equipped with CC430F5137 RF SoC, which is responsible for RF link between the nodes and connection to I2C network of nodes. Frequency was chosen to be 433MHz, that is, an unlicensed frequency for ITU Region 1. The schematics of each node is shown below:

The balun circuit was taken from TI app notes and is designed specifically for reception and transmission of 433MHz radio waves. Programming of the board is done via Spy Bi-Wire interface (J2) inherent to all microcontrollers of MSP430 series. J3 connects the node to its sensors and actuators (you'll see later how a bus connection allows to use only one connector to join virtually unlimited number of sensors/actuators).

Each sensor/actuator module is comprised of MSP430G2230 uC and the sensing element itself. The sensors chosen are all cheap and widespread, at the cost of low precision. Most amateur projects and greenhouses in general don't need high precision anyway (plants are supposed to be resisient to changes in temperature within +/- 5 degrees).  Figures 5 to 8 are the schematics of sensor/actuator modules already implemented:

Mains switching module (BT139 TRIAC + MOC3041 driver).

Air temperature and humidity sensor (DHT22).

Light intensity sensor (Merely a CdS photoresistor).

Water temperature sensor (DS18B20 in waterproof enclosure).

Here are some pictures of assembled PCBs:

Physical manifestation of a WSN node.

Even more of them!

Node connected to mains swithing modules

Mains switch (BT139 TRIAC + MOC3041)

Left to right: water temp. module (with the sensor sticking from below), light int. sensor, air temp. and humidity sensor.

Air temperature and humidity sensor (DHT22).

Light intensity sensor (CdS photocell).

Water temperature sensor (DS18B20).

  • 5 × CC430F5137 Application Specific ICs / Telecom ICs
  • 1 × CdS photoresistor Connectors and Accessories / Board-to-Board and Card Edge Connectors
  • 1 × DS18B20 Sensors / Temperature, Thermal
  • 3 × MOC3041 Opto and Fiber Optic Semiconductors and ICs / Optocouplers and Optoisolators
  • 3 × BT139 Discrete Semiconductors / Thyristors (DIACs, SIDACs, TRIACs, SCRs)

View all 8 components

View project log

  • 1
    Step 1

    The assembly is pretty straightforward - order the PCBs (which can be found linked at the Blogspot page, they are Eagle CAD files),

  • 2
    Step 2

    order the parts needed for PCBs,

  • 3
    Step 3

    and simply solder it all together according to schematics! Node circuit board is populated with predominantly surface mount components therefore you should heat gun (if available) or an oven/skillet/whatever can heat things (not microwave).

View all 3 instructions

Enjoy this project?



Justin wrote 11/25/2014 at 00:42 point
I might look into this hardware for my software-focused project on here. I like the SoC solutions, and that chip has built in encryption which is nice.

  Are you sure? yes | no

Eric Tsai wrote 07/20/2014 at 07:14 point
Nice project. It's very similar to what I'm trying to do! I'm using an open sourced project called OpenHAB for my server...I don't know node.js, so it's a simple short cut.

  Are you sure? yes | no

panovvv wrote 07/20/2014 at 08:15 point
Yeah, I've noticed your project too. My project lacks software component, and OpenHAB looks like a great aid to code-impaired hrdware engineers like me :)
I might try to bind my hardware with OpenHAB (or redesign it so that it fits OpenHAB). Thanks for pointing this out!

  Are you sure? yes | no

Adam wrote 07/11/2014 at 15:35 point
This project looks great!

  Are you sure? yes | no

panovvv wrote 07/11/2014 at 15:48 point
Thanks, this was my thesis project so I really put lots of work into it.

  Are you sure? yes | no

David Cook wrote 07/11/2014 at 04:19 point
Great write up so far! I look forward to following it. With Chicago winters, our family could use an automated greenhouse.


  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates