element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Raspberry Pi
  • Products
  • More
Raspberry Pi
Documents PiFace Home Timeswitch - turning a light on and off
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Raspberry Pi to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Engagement
  • Author Author: PEarle
  • Date Created: 23 May 2013 8:29 PM Date Created
  • Last Updated Last Updated: 8 Oct 2021 5:29 AM
  • Views 5254 views
  • Likes 1 like
  • Comments 46 comments
Related
Recommended

PiFace Home Timeswitch - turning a light on and off

** Update**

 

I've now implemented this using an Energie Pi Controlled mains Socket - see my blog at Home Automation using ENERGENIE - ENER002-2PI

 

For details on the Energie socket see ENER002-2PI - ENERGENIE - RF CONTROLLED MAINS SOCKETS, FOR | CPC


 

 

One of the things I wanted to do with my Pi from the outset was to be able to use it as a timer, to turn a light on and off at night when I was out, as a simple form of home security. Being something of a newbie when it comes to electronics, my biggest problem was how to wire it up to be able to turn the power on and off.

 

The Pi relays are rated at a maximum of 20v and 5amps - therefore I cannot connect the Pi directly to the 'mains powered' light !!!

 

What I am planning on doing is investigating using a to a commercial relay which can cope with the current. When I've done that I shall update this blog again with details of the how the Pi can safely control a mains powered device.

 

However, the rest of the blog is still valid as it explains how the relay on the PiFace is operated and will be used for the Timer application, when completed.

 

I've written a java program to control the light switching on and off which does the following;

 

  • Calculate a random wait time between two values that I have supplied (2 and 20 minutes at the moment)
  • Wait for that period of time to elapse
  • At the end of the wait time, toggle the relay - switch it on if it was already off, and vice-versa.
  • repeat the above ad infinitum

 

The result is that the light will keep turning on and off in a random pattern making it look as if someone is using the room even when I'm not there !

 

 

Java Code

I've already written a document about using Java on the Pi - see http://www.element14.com/community/docs/DOC-54112/l/java-on-the-raspberry-pi. The code that I used for this project is attached to this document (e.g. timeswitch.zip)

 

 

Running Automatically

My intention is really to have this as a 'black box' function so that the TimeSwitch application will run as soon as the Pi is switched on. This is accomplished quite easily - all I need to do is write a script to run the java application, and then add it to the initialisation script.

 

The script to run the java application is as follows ;

cd /opt/pi4j/examples
java -classpath .:classes:/opt/pi4j/lib/'*' com.phe.datetime.TimeSwitch

To run at start up I have edited  /tec/rc.local and added the following line

 

/opt/pi4j/examples/timeswitch.sh > /opt/pi4j/examples/timeswitch.log

 

This will execute the java app at start up and also pipe any log messages to timeswitch.log.

Attachments:
timeswitch.zip
  • Share
  • History
  • More
  • Cancel
  • Sign in to reply

Top Comments

  • Robert Peter Oakes
    Robert Peter Oakes over 12 years ago in reply to Problemchild +2
    Maybe a DANGER rating from Bunny minion through to Skeleton minion
  • mcb1
    mcb1 over 12 years ago in reply to michaelkellett +1
    If you look at the RCSwitch there is a RPi solution. Frederick also used these to interface as an I2C device. http://www.element14.com/community/community/design-challenges/forget-me-not/blog/2014/08/11…
  • mcb1
    mcb1 over 12 years ago in reply to eatojg +1
    This adds a piece for the RPI and while it suits the UK, there are many others using a similar 433 or 315 MHz RF control. The code in the Watts Clever have a 24 bit data stream, but in reality it only…
  • mcb1
    mcb1 over 12 years ago in reply to eatojg

    This adds a piece for the RPI and while it suits the UK, there are many others using a similar 433 or 315 MHz RF control.

     

    The code in the Watts Clever have a 24 bit data stream, but in reality it only uses the last few (I never explored how many).

    There is some special use codes for ALL ON or ALL OFF.

     

    I would keep and eye on the Forget me not challenge Forget Me Not Design Challenge

    You will probably see some more use of this type of control, but with feedback to know its ON or OFF. (ie manual)  image

     

     

    The whole point of this discussion was that the manner proposed was UNSAFE.

    It's probably time we forked this conversation and made it much easier for others to find.

     

    Mark

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mcb1
    mcb1 over 12 years ago in reply to michaelkellett

    If you look at the RCSwitch there is a RPi solution.

     

    Frederick also used these to interface as an I2C device.

    http://www.element14.com/community/community/design-challenges/forget-me-not/blog/2014/08/11/elro-coco-with-openhab

     

    Mark

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • eatojg
    eatojg over 12 years ago

    Yes they do come with sample software and very easy to program. I am currently using a 4 way socket to control lighting and ancillary pumps on my aquarium. It uses a 20 bit ident so no chance of false switching from other units. I am also testing some new software on the arduino to control this unit.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • michaelkellett
    michaelkellett over 12 years ago in reply to eatojg

    I've recommended that people hack radio controlled sockets in the past  -  it's nice to see that there is a ready made RPi solution. You say these work well which is nice to hear. Do they come with software ?

    I agree that this approach (no mains work at all) is best for the inexperienced and possibly cheaper even if you know how to do it (no boxes, clamps etc needed).

     

    MK

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • eatojg
    eatojg over 12 years ago

    Why not do switch mains voltage perfectly safe with one of these. They work absolutely great

     

    Energenie ENER002-2PI remote control sockets with Raspberry Pi controller board - white: Amazon.co.uk: DIY & Tools

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mcb1
    mcb1 over 12 years ago in reply to Robert Peter Oakes

    Earth is longest simply because it is the furthest from where the lead enters the plug

    Same here, but it doesn't make it last to be pulled out.

    It's great you have had instructions, they don't seem to worry here in NZ, which leads to some frightening discoveries. image

     

    Peter

    That seems a strange system and I'd heard it was floating but obviously not like an isolation transformer floats the 230v.

    Can you actually run an appliance at 110v.? Do they use the ground as the return in that situation ??

     

    Mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Robert Peter Oakes
    Robert Peter Oakes over 12 years ago in reply to mcb1

    15Amps either side, used often to power cookers and dryers so effectively 220V at 15A vs 110V @15A, centered around GND so nothing is ever actually much above 110V from gnd

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Robert Peter Oakes
    Robert Peter Oakes over 12 years ago in reply to kidiccurus

    As you will hear in "Dr Who" all the time.... Spoilers image, if you get enough points and show enough experience, you may one day discover

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • kidiccurus
    kidiccurus over 12 years ago in reply to mcb1

    Earth is longest simply because it is the furthest from where the lead enters the plug. In my school science class we spent more than an hour being taught how to wire a plug and select a fuse. This not including the time spent on the theory about why all this is done.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mcb1
    mcb1 over 12 years ago in reply to Robert Peter Oakes

    The black catches out so many people here.

    Green or Green/yellow is earth and but any other colour is allowed to be phase.

     

    • Not sure about your plugs, but here the earth wire should be the longest, so it remains intact after the rest are pulled.
    • The active and neutral wires should not cross over.
    • Strain relief is correctly tensioned and not damaging the cable.
    • Correct tension on the screw
    • Correctly filling the terminal by twisting and then doubling back the wire
    • No stray conductors hanging out

     

    So there are 6 things to ensure a plug is correctly terminated ... and then you have the fuse.

     

    there is a 110V on each terminal centered around gnd

    Is it simply floating or can you actually pull current

    Mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
<>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube