Skip to content
This repository was archived by the owner on Jan 3, 2023. It is now read-only.

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

README.md

Access control in Java*

What it is

Using a compatible Intel-based platform, this project lets you create a smart access control system that:

  • monitors a motion sensor to detect when a person is in an area that requires authorization.
  • can be accessed with your mobile phone via the built-in web interface to disable the alarm.
  • keeps track of access, using cloud-based data storage.

More information about this sample, how to set it up, and how it works can be found in the project README

First time setup

For all the samples in this repository, see the General Setup Instructions for required boards and libraries.

Hardware requirements

Grove

Sensor Pin
PIR Motion Sensor D4
Grove RGB LCD I2C

DRFobot

You need to have a LCD Display Shield connected to an Arduino*-compatible breakout board to plug all the DFRobot* devices into the LCD Display Shield.

Sensor Pin
PIR (Motion) Sensor A2

More details on the hardware requirements can be found in the project README

Software requirements

  1. Intel® System Studio
  2. MRAA and UPM
  3. Microsof Azure*, IBM Bluemix*, AT&T M2X*, AWS*, Predix*, or SAP* account (optional)

Configuring the example

Clone the repo

Clone the How-To Code Samples repository with Git* on your computer as follows:

$ git clone https://github.com/intel-iot-devkit/how-to-code-samples.git To download a .zip file, in your web browser go to https://github.com/intel-iot-devkit/how-to-code-samples and click the Download ZIP button at the lower right. Once the .zip file is downloaded, uncompress it, and then use the files in the directory for this example.

Set up the source files

You now need to copy the source files and the config file to the project. Drag all of the files from your git repository's "src" folder into the new project's src folder in Intel® System Studio IoT Edition. Make sure previously auto-generated main class is overridden.

The project uses the following external jars: gson-2.6.1, jetty-all-9.3.7.v20160115-uber, joda-time-2.9.2. These can be found in the Maven Central Repository. Create a "jars" folder in the project's root directory, and copy all needed jars in this folder. In Intel® System Studio, select all jar files in "jars" folder and right click -> Build path -> Add to build path

Now you need to add the UPM jar files relevant to this specific sample. right click on the project's root -> Build path -> Configure build path. Java Build Path -> 'Libraries' tab -> click on "add external JARs..."

For this sample you will need the following jars:

  1. upm_i2clcd.jar
  2. upm_biss0001.jar

The jars can be found at the IOT Devkit installation root path\iss-iot-win\devkit-x86\sysroots\i586-poky-linux\usr\lib\java

Set the kit

To configure the example for the specific hardware kit that you are using, either Grove* or DFRobot* you will need to change the INTEL_IOT_KIT key in the config.properties file to either GROVEKIT (this is the default) or DFROBOTKIT, depending on which hardware kit you wish to use. For example:


  INTEL_IOT_KIT=GROVEKIT

Configuring the access key

To configure the required access code to be used for the example app, change the CODE key in the config.properties file to whatever you want to use. For example:


  CODE=4321

Expected output

After running the program, you should see output similar to the output below.

Disabling the alarm

The alarm is disabled using a single-page web interface served directly from the target while the sample program is running.

The web server runs on port 8080, so if the target is connected to WiFi on 192.168.1.13 the address to browse to if you are on the same network is http://192.168.1.13:8080.

IoT cloud setup (optional)

You can optionally store the data generated by this sample program using cloud-based IoT platforms from Microsoft Azure*, IBM Bluemix*, AT&T M2X*, AWS*, Predix*, or SAP*.

For information on how to connect to your own cloud server, go to:

https://github.com/intel-iot-devkit/iot-samples-cloud-setup

Data store server setup (optional)

Optionally, you can store the data generated by this sample program in a backend database deployed using Microsoft Azure*, IBM Bluemix*, or AWS*, along with Node.js*, and a Redis* data store.

For information on how to set up your own cloud data server, go to:

https://github.com/intel-iot-devkit/intel-iot-examples-datastore

Running the example with the cloud server

To run the example with the optional back-end data store, you need to change the SERVER and AUTH_TOKEN keys in the config.properties file to the server URL and authentication token that correspond to your own data store server setup. For example:


  SERVER=http://intel-examples.azurewebsites.net/logger/air-quality
  AUTH_TOKEN="YOURTOKEN"

Now, when you run your program using the Run button, it should be able to call your server to save the data right from the target

IMPORTANT NOTICE: This software is sample software. It is not designed or intended for use in any medical, life-saving or life-sustaining systems, transportation systems, nuclear systems, or for any other mission-critical application in which the failure of the system could lead to critical injury or death. The software may not be fully tested and may contain bugs or errors; it may not be intended or suitable for commercial release. No regulatory approvals for the software have been obtained, and therefore software may not be certified for use in certain countries or environments.