Project

General

Profile

Proof of Concept » History » Version 5

Hammel, 24 Jan 2016 10:18

1 1 Hammel
h1. Proof of Concept
2
3
This page will contain the plans for the Proof of Concept.
4
5 2 Hammel
{{>toc}}
6
7 4 Hammel
h1. Summary
8 1 Hammel
9 3 Hammel
Show a server node managing an IoT node.  The server node should be a Raspberry Pi running PiBox with the Media Server UI and the IoT should be a board utilizing an Atmel or similar chip capable of controlling a physical device. The physical device should be a vent whose fins can be opened and closed with the IoT device.  The server node and IoT node should communicate over WiFi or, possibly, Bluetooth.
10
11 1 Hammel
The goal of this phase of development is to prove we understand enough about the following concepts to produce a minimal viable product (MVP).
12 4 Hammel
13 3 Hammel
* Server OS
14
* UI implementation
15
* Wireless communication
16
* Microcontroller platform hardware integration
17
* Microcontroller programming
18 1 Hammel
* Control of mechanical devices, specifically motors
19 3 Hammel
20 4 Hammel
h1. Block Diagram
21 1 Hammel
22
!proof-of-concept.png!
23
24 4 Hammel
h1. Components
25 1 Hammel
26 4 Hammel
h2. Server Node
27 1 Hammel
28 4 Hammel
PiBox will serve as the server node OS.  This platform already supports Wifi and the Media Server release has a simple, easy to see (for demos) custom UI that should be easily extendable using examples like PiClock.
29 1 Hammel
30 4 Hammel
h3. UI
31 1 Hammel
32 4 Hammel
The UI will require a new app developed.  This will be a GTK+ 2.x app that conforms to the app specification for PiBox's Media Server, which just means it provides its app icon for the navigation and installs an app configuration file with its opkgs.
33 1 Hammel
34 4 Hammel
The app will consist of two buttons and a text window.  The first button will be use to open the vent.  The second to close it.  A text field will show the current status of the vent provided by the IoT Node.
35 1 Hammel
36 4 Hammel
h3. Wifi
37
38
Wifi setup can either use a router or use PiBox's configuration option for running as an access point.  The latter may be more useful for demos.
39
40
h2. IoT Node
41
42
h3. Hardware Components
43
44 5 Hammel
There are three hardware components in the IoT node.
45
# The WiFi interface
46
# A microcontroller board
47
# A stepper or similar motor for control of an mechanical device.
48
49
The WiFi interface will be an ESP8266 or Bluetooth or BLE interface.  An ESP8266 will be tried first as it may also serve as the microcontroller platform.
50
51
The microcontroller platform must have GPIO pins for the motor.  
52
53
The motor must be allow for at least 4 settable states.
54
55
Power for the hardware will come from 3 AAA batteries.  All three devices will draw power from the same power source.  There must be sufficient power to perform short demos lasting no more than an hour.  
56
57 4 Hammel
h3. Software Components
58 3 Hammel
59 5 Hammel
There are two sofware components to the IoT node.  The first is the WiFi interface.  This will handle all communications traffic between the server node and the IoT.  
60
61
The second software component in the IoT node will handle control of the hardware device.  This software must accept commands via the WiFi interface to set a level on the motor it controls.
62
63 3 Hammel
h3. Mechanical Device
64 5 Hammel
65
The device under control of the IoT node will be a simple air vent.  A stepper (or similar motor) will be used to open and close the vent fins.