Giter Site home page Giter Site logo

zhoumingchun / iot-gateway Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lab11/iot-gateway

0.0 1.0 0.0 1.51 MB

Implementation of the gateway architecture described in "The Internet of Things Has a Gateway Problem".

Home Page: http://dl.acm.org/citation.cfm?id=2699344

Java 72.99% JavaScript 7.19% CSS 0.02% HTML 4.10% Python 0.11% Makefile 0.43% C 15.17%

iot-gateway's Introduction

iot-gateway

Our implementation of the gateway described in "The Internet of Things Has a Gateway Problem".

  • /app/Gateway : the Android Gateway app implementing BLE Profile Proxy.
  • /app/Peripheral : an Android Peripheral app to advertise & test API for BLE peripherals.
  • /datacloud : a simple responsive server implemention using NodeJS; demonstrates API for servers.
  • /squall : squall apps that use Gateway API.
  • index.html : log of received data at the gateway, data cloud, and incentive cloud
  • example.html : example visualization of data from the Tessel app
  • raw.html : raw output of data sent to data cloud (when received at GATD)

API

To use Gateway, a peripheral specifies the following in the advertisement service data:

  • Shortened Destination URL (up to 14 characters), sans protocol [14 bytes]
  • Incentive Program Level (0-15) [.5 bytes]
  • Reliability Level (0-15) [.5 bytes]
  • Gateway Services Requested [1 byte]
    • Time Access (0/1)
    • GPS Access (0/1)
    • Accelerometer Access (0/1)
    • Ambient Light Sensor Access (0/1)
    • User Text Input Request (0/1)
    • User Camera Input Request (0/1)
    • Web UI Display Request (0/1)
    • IP Over BLE Request (Reserved) (0/1)
  • Custom App Data (up to 10 bytes)

For instance, if a peripheral advertised 676f6f2e676c2f6a524d7845300077C0BEEF, it would be parsed as:

  • Destination: 676f6f2e676c2f6a524d784530000 -> "goo.gl/jRMxE0"
  • Incentive Program Level: 7
  • Reliability: 7
  • Gateway Services Requested : C0 -> Time Access & GPS Access
  • Custom App Data: BEEF

iot-gateway's People

Contributors

tzachari avatar bradjc avatar nklugman avatar

Watchers

Zhou Mingchun avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.