Skip to content

Micro-Controller Based Home Automation for Smart Homes

Notifications You must be signed in to change notification settings

d4rk-lucif3r/Home-Automation

Repository files navigation

Home Automation

lucifer Google Phone java arduino HomeAutomation c++

  • Micro-Controller Based Home Automation for Smart Homes

To-Do List

  • Initial Build By 20-June-2020

    • Added Build_v1 on 17 June
    • Added Build_v3 on 24 June
    • Added Build_v5 on 7 July
  • Basic App Interface by 24-Jun-2020

    • Added Build_v3 on 24 june
    • Added Build_v5 on 7 July
  • To use Job Scheduler API rather than Alarm Manager in upcoming Builds for Switch on/off scheduling.(Pending)

  • Future Build will contain Scheduling task which will send turn on/off command to arduino on a Particular time selected by user.

    • Done in Build_v5
  • Future Build to include Device Number Addition as app supports 4 Devices Only till now.

Changelog

  • Build_v1

    • Added On/Off functionality to buttons by means of single and long click respectively.
    • Can be paired with the device whose address is hardcoded in app.
    • Added Digital Clock on main screen.

  • Build_v3

    • UI Revamping.
    • Can be paired with any device through app.
    • Removed clock.
    • Added Room Functionality.
    • Device Switching on/off scheduling(not enabled in this build).
    • New Bluetooth devices can be searched from within app.
    • App data is stored in Local Database.
    • Added functionality to connect to last connected device Seamlessly!!
    • New Rooms can be added from within app.

  • Build_v5

    • App only supports 5 Rooms.
    • Removed Room Table from Database. From now Room name will be carried by Shared Prefs file.
    • Added Device On_Off Scheduling (One time each for each device).
    • Added [Time Picker Dialog for selecting On/Off Time for scheduling.](https://github.com/arshanwar/Home- Automation/blob/master/Screensshots%20Build_v5/Scheduling%20time%20Dialog.jpg)
    • Removed Room Add Fragment.
    • Added Room Settings.
    • Added Extra Settings for buttons.
    • Device On_Off will be done by Switches rather than Buttons from now .

Working

  • This app utilizes 2 Activities. One is for Device Control and Other for device pairing Stuff.
  • This application makes use of:
    • Service Class: Bt_Connection which is used to Pair to device and sending Data over Bluetooth.
    • Data to Arduino based Device is sent in strings over Bluetooth.
    • A Database HomeAutomation.db is created upon Install. This Database contains two Tables Room and Address.
      • Room Table Stores Room Names which are shown in Main Activity.
      • Address Table Stores paired device address and its name. Address table is used to store previous connection Data. A prompt for connecting to last device connected with app Automatically will be shown after restarting app.
      • Address Table gets deleted after new data being entered.
    • A custom ListAdapter is used to display Room name Stored in Database on Main Activity.
  • As of Build_v3 All rooms send same commands in Device Control Fragment. I'll be fixing that in Future.
  • Single Press on button in Device Control Fragment will send turn on command to Arduino. A long press will send turn off command to Arduino.
  • As of Build_v5 Shared Prefs files are introduced so as to carry Button name and Room name.

ScreenShots

  • Build_v1

    • screenshot
  • Build_v3

    • Second Activity
      • SecondActivity

    • Pair New Device Fragment
      • New Device

    • Location Access Alert Dialog
      • Alert Dialog

    • Add New Room Fragmnet
      • New Room

    • Paired Devices Fragment
      • Paired Deivice

    • Device Control Fragment
      • Device Control

    • Last Connection Alert Dialog
      • Last Connection

  • Build_v5

    • Room Show
      • Room

    - Room Settings
    • Settings

    - Room Deletion Dialog
    • Deletion

    - Room Name Updation Alert Dialog
    • Updation

    • Button Extra Settings Alert Dialog

      • extra

    • Room Configurations Alert Dialog

      • conf

    • Device On/Off Scheduling Alert Dialog

      • on_off

    • Device On/Off Time Picker Dialog

      • time

    • Second Activity

      • second

About

Micro-Controller Based Home Automation for Smart Homes

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published