an arduino and nokia 3310 based sms power failure alarm
C++ C Ruby Arduino Gnuplot
Switch branches/tags
Nothing to show
Latest commit 880610b Apr 24, 2014 @mehdilauters Delete LICENCE
Permalink
Failed to load latest commit information.
configuration
embedded
lib/Settings
.cproject
.gitignore
.project
CMakeLists.txt
LICENSE
README.md

README.md

arduinoPowerFailureAlarm

alarm picture

This is the source code for an arduino and nokia 3310 based power failure alarm. Designed to be reliable chip and modulable.

The embedded program is working and tested on arduino Uno and Micro The configuration tools to be run on the computer is not finished. It is based on Qt

Features of the alarm:

  • contact list stored in eeprom
  • count of all power failures stored in eeprom
  • delay between power failure and sms alert stored in eeprom
  • eeprom reset if data not valid
  • sms indicating the failure, and the battery status
  • sms indicating that the power is back and the time of failure
  • debug serial commands to switch on/off the phone, reset settings, simulate alert...
  • debug messages can be enabled at compilation time

Hardware schematic used is hardware layout

More information available at http://lauters.fr/blog/arduino-power-failure-alarm/

All project uses CMake.

To build and upload the software:

  • update the source to set up your contact list embedded/src/EmbeddedSettings.cpp at void EmbeddedSettings::defaultValues(void)
    • this->m_contactList[i] = new Contact(i, "contact1", "3366XXXX");
    • i++;
    • this->m_contactList[i] = new Contact(i, "contact2", "3367XXXX");
    • i++;
  • create a build directory and go into it
    • mkdir /tmp/build
    • cd /tmp/build
  • build the embedded project
    • cmake /path/to/the/sources
    • make PowerFailureAlarm
  • upload the binary to the arduino
    • make PowerFailureAlarm-upload

Your alarm is ready to use

Attention : because the n61sms library is not well debugged and arduino has a very small amount of RAM, sms with more than several words may leads to a reboot.