Skip to content

macbellota/IoTMyAdmin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

IoT MyAdmin

IoT MyAdmin is a responsive web app designed to upload data to a MySQL database in a easy way from different devices. It was designed specially for Arduino projects, but data can be uploaded from different devices, other web sites or scripts, with a simple HTTP request. The code for data upload is in the web and it's automatically generated for each device.

Furthermore, IoT MyAdmin have some tools to represent the uploaded data using different type of charts or maps.

This web app have also some tutorial pages to show you with details how it works. Three Arduino project are also included. Two of them upload data to the web, one using a WiFi shield and the other one using an Adafruit FONA GSM/GPRS module.

The responsive design allows an easy and friendly navigation using different devices, including computers, mobile phones, tablets, etc.

Installation

This is a web site, so you need to create or use a web server to access to it. There are a lot of tools for create your own server using your computer (Apache, Wamp, AppServ, ...) and there are many tutorials about this on the web.
If you don't want to use your computer as a server or you don't know how to do it, using a free web server (like Hostinger for example) is an easy and quick solution.

The main process has 3 steps:

  1. Create the database importing the "IoTMyAdmin.sql" file from the "Database_SQL" folder. Really easy using PHP MyAdmin for example.

  2. Open the "Web_Code" folder and copy the whole "IoTMyAdmin" folder into your server public folder.

  3. Go into "IoTMyAdmin/includes" open the "dbConfig.php" file with your text editor and edit these lines with your database parameters:

    define("HOST", "localhost"); // The host you want to connect to.
    define("USER", "root"); // The database username.
    define("PASSWORD", "root"); // The database password.
    define("DATABASE", "IoTMyAdmin"); // The database name.

Now you can log in into your IoTMyAdmin accessing with your web browser to the URL "youtHostName.com/IoTMyAdmin".

Usage

First of all, you need to register your new user. You can use your real email or a fake one. There is not email confirmation process. By default a test user is registered, so you can log in as testuser@test.com/Password123 (be careful with the capital 'P')

Once you are logged in, a simple menu on the left side allows you to navigate between the different pages.

  1. Home: Summarize content statistics
  2. List: list of registered devices
    • Clicking on "Add Device" you can register new devices
    • Clicking on "Details" you can customize some device features and copy the custom Arduino code for data insertion
  3. Last Logs: Shows a table with the last logs
  4. Data Tables: Shows the data tables for each device
  5. Charts: Represent device data with different charts
  6. Maps: Represent uploaded coordinates from location devices using google maps
  7. Tutorials: Some tutorials about how to use the web site and upload data
  8. Arduino projects: Some Arduino projects. Two of them upload data using a WiFi Shield or a Adafruit FONA GSM/GPRS module
IMPORTANT NOTE: Each device has its own password, which is needed to change its features or upload data.
Two devices are registered by default. Both have the same password "password".

For more details, follow the tutorials in the web.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

History

14/Jul/2015: First version released

Future goals

  1. Add different profile roles
  2. Add profile clusters for device sharing
  3. Allow web-device communication
    • Custom HTTP response can be interpreted by Arduino
  4. Profile messaging services
  5. Improve charts representation
  6. Add statistics
  7. Code for other devices (Android, iOS, Desktop apps)

Credits

Written by Rafael López Martínez in 2015

Libraries, frameworks and other tools used:

  • SB Admin template (link).
  • Twtter Bootstrap (link).
  • JQuery (link).
  • Google Charts API (link).
  • Google Maps API (link).
  • phpSecureLogin (link).
  • Font Awesome Icons(link).

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

About

Web app for data upload and representation. Arduino projects for data uploading inside.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 38.2%
  • PHP 31.6%
  • CSS 26.9%
  • Other 3.3%