The Smart Dashboard Project
Saturday, December 30, 2017
It all started with attempting to control our security system with our phones… Initially we thought we should avoid keypad and tablet solutions. The reasoning was ‘We can save money if we use just our phones’, and I believed we should be able to leverage the ‘coolness’ of presence capabilities available in today’s phones and home automation systems to meet our needs. After months of fumbling around for our phones, dropped packages, failed and forgotten arming/disarming, and false alarms, the ‘coolness’ lost its luster.
Our needs are simple: Provide a reliable method of activating and deactivating our security system, keep false alarms to a minimum, and reduce required interactions (to ‘zero’ if possible). Our previous ‘adventure’ demonstrated the limitations of current presence systems (overly large geo fences, limited-distance dongles, reliability) to meet those needs, thus I started look for more reliable and cooperative (i.e. work with presence capabilities) solutions. Initial research suggested a keypad (or potentially a tablet) could be a solution.
The next step was to come up with (from my perspective) a reasonable set of requirements:
- Reasonably reliable (taking into account potential failures related to Internet connectivity, cloud, geofence, power, false alarm, and other risks)
- Reasonably secure (taking into account physical and technical security limitations and risks)
- Accommodate current and near-term smart home considerations (e.g. SmartThings, Sonos, security pin pad, wired and wireless contacts, etc.)
- Well-supported by manufacturer and user community (no ‘lone wolfs’)
- Preferably inset (flush with the wall),
- Visually pleasing installation: No dangling cords, wall damage or ‘out of place’ aesthetic
- Total cost <$300
With the initial research and requirements in hand, I dove into finding what was available. While scouring the internet several potential solutions were found. There are complete solutions (costing significantly more than we budgeted) and ‘piecemeal’ options: keypads, cameras, tablets, improved sensors and software, all requiring a fair amount of effort or additional cost to implement. The list is long, but our requirements quickly shaved the list down to keypads and tablets. After a failed attempt to implement a keypad with Lock Manager (it didn’t meet requirements 3, 5 and 6), we moved on. Shortly after we found an inexpensive tablet combined with kiosk software might meet our requirements.
During my research it became obvious there is also no one place to go to find the majority of links, a list of the software and hardware considerations, or basic configurations needed for this type of effort. This article is intended to help me and others find most of the reference information needed in one place. If you think something should be added, please add to this thread.
To make it more manageable, the work was broken into categories, e.g.
- Finish work
- Selections, Installation, Configuration
- Testing/bug fixing
The remainder of this post groups information into these categories. Where it seemed appropriate, information is provide in bulleted lists with the intention of keeping information concise.
Hardware specifications were created using my own experience and includes recommendations from a few online communities. Thanks to XDA Developers for extensive information on Google and Amazon (Android based) tablets.
- Inexpensive (less than $100)
- 8+ hour battery life (in case of power failure)
- Enough performance to run all required software and provide <3 second response time for all operations
- Respectable level of quality and support from manufacturer and community
- 6-8 inch size range
- New or used
- Per building code
Recessed receptacle box and outlet
- Recessed 1-2 inches behind surface mount tablet enclosure (to provide space to hide USB charger behind enclosure)
Flat USB charger with appropriate cable
- Flat enough to easily fit in 1-2 inch space provided by recessed receptacle
Service-mount enclosure for tablet
- This required modifying our last requirement (Inset Screen) to allow for surface mount options, as there were no inset mounts that were reasonably (<$300) priced.
- Secure (Not easily damaged if bumped. Highly unlikely to drop tablet)
- Very ‘slim’ design
- Hides power cable
- Visually pleasing
With many of the hardware and software specs dependent on the tablet chosen, the tablet was selected first. Given our budget, tablet options were limited. In the end we chose a Fire HD 8 due to manufacturer and user community support, size, mount availability, the platform/OS supports necessary software, and price point ($50).
- Tablet: Fire HD 8 Tablet with Alexa, 8" HD Display, 16 GB, Black - with Special Offers - $49.99
- Cable: 5 feet, 12 gauge 3 conductor (from previous project) - $0.0
- Recessed receptacle box: Arlington DVFR1W-1 Recessed Electrical/Outlet Mounting Box, Single Gang - $17.39
- Receptacle outlet: Leviton 15 Amp Duplex Outlet, White - $0.68
- Flat USB charger with appropriate cable: Nekmit Dual Port Ultra Thin Flat USB Wall Charger with Smart IC - $11.99
- Service-mount enclosure for tablet: VidaMount On-Wall Tablet Enclosure / Mount - $99.99
Hardware installation and finish work:
Key considerations were easy access to 110v power, proximity to the most frequently used entry and spouse-approval of the aesthetics. After the mounting location was determined:
- A hole was created in the drywall to accept the recessed receptacle
- Wiring was run from nearby switch power to the receptacle
- The receptacle was wired
- The receptacle box was installed
- Paint, cleanup and final power testing was completed
- The tablet mount was installed over the recessed receptacle
Progress pictures are included below. Installation of the recessed outlet was the most time consuming part of the installation (it took a little over an hour). After cleanup and paint, the VidaBox mounting took less than 15 minutes.
Recessed receptacle roughed in
VidaBox with flat USB converter and cable
VidaBox with tablet and Trim
First a quick caveat: There are many reasonably good smart home controllers available in the marketplace today. Because of my experiences (I’ve been involved in multiple smart home installations using various platforms over 20 years) and my biases (I prefer ‘open’ systems with standards-based gear and highly active communities of practice, along with low cost of entry), for this project I chose a SmartThings controller using WebCore as the ‘rules engine’. Although this shouldn’t affect the hardware choices previously described, it definitely affects software selection.
Software specifications were created using my own experience and recommendations from several online communities. A special thanks to SmartThings and WebCore forum members for their extensive articles and (very active) support. Their insights and examples saved countless hours on this project.
- SmartThings controller
- WebCore as the extensible ‘rules engine’
- Secured interface:
- Only admin users should be able change or exit the (limited) selections
- Some (but not all) selections must be password protected
- Ability to adjust the interface remotely
- Hierarchical menus
- Easy to edit and use
Selections, Installation, Configuration
Several selections were required to address specific issues or limitations. Significant issues or limitations are mentioned in the related sections below:
Google Play Store - $0.0
- Required because the Fire HD 8 does not natively have access to Google Playstore. Playstore (and/or sideload) access is required to install software not available on Amazons Appstore
- No coding required
- Installation and configuration instructions are included in the link above
ActionTiles - $28.99
- Used to develop and manage the user interface and hierarchical menus on the tablet. This is a web host component
- No coding required.
- Configuration instructions are available here. Installation through Fully Kiosk is covered in the Fully Kiosk section below
Fully Kiosk - $5.88
- Fully Kiosk is an interesting app… It attempts to ‘lock down’ a tablet interface without rooting or changing the tablet OS. This limits user access to only defined user interface elements (ActionTiles) and a small set of defined applications. This is the client component, installed on the tablet
- LANnouncer is utilized to create a ‘beep’ and other sound-file-based alerts at the tablet. This is a client component, installed on the tablet
SmartThings SmartApps - $0.0
- All the SmartApps were loaded through the SmartThings online management app. Several articles are available online that explain how to setup and load these apps.
- SHM Delay: As currently deployed, users of SmartThings cannot use an internal device to start or stop alarm activations without causing the alarm to be set off as people exit (or enter) a building. This is a known SHM limitation. SHM Delay and SHM Delay TrueExit (or fairly complex custom coding) are currently required to address these exit-delay limitations
- SHM Delay TrueExit
- LANnouncer: LANnouncer is utilized to create a ‘beep’ and other sound-file-based alerts at the tablet. This is the smartapp component, installed in SmartThings
- Big Talker: Used to send text-based verbal warnings through Sonos (or other) speaker systems
SmartThings Devices - $0.0
- Simulated Contact Sensor, created to support the SHM Delay solution. See specific instructions SHM Delay and Creating a virtual Device.
SmartThings Routines - $0.0
The following routines were created to leverage new methods either required or desired due to the new system. Primarily referenced by ActionTiles to run specific routines within SmartThings
- Armed (AWAY): Sets Smart Home Monitor to Armed (Away). We included turning off lights, locking doors, etc.
- Armed (HOME): Sets Smart Home Monitor to Armed (Home). We included locking doors, etc.
- Disarm Alarm: Sets Smart Home Monitor to Disarmed. We set this up to require a pin to activate
- Goodbye Delay: ‘Dummy’ routine used in SHM Delay
ActionTiles Media - $0.0
- A Weather media tile was created to provide weather information. This required customizing a URL and adding it to a media object in ActionTiles. Instructions are straight forward and included in this link
ActionTiles Shortcuts - $0.0
These ActionTiles Shortcuts were created to expose apps through the ActionTiles interface as tile selections. You can use the ‘Absolute URL’ from the screenshots to reference Sonos or SmartThings on your local network.
ActionTiles Panels - $0.0
- ActionTiles Panels were created to meet specific menuing and usage models. Home was used as the main menu, with the others as selections (sub menus) from the main menu
- Battery Levels
Due to the number of components and interactions, bug fixing all the software took a few days. Most fixes centered around idiosyncrasies of Fire OS. Most issues were centered around the audio components (LANnouncer and Big Talk), and getting the entry/exit routines working properly in SHM.
Work continues on the Dashboard Project, but the first deployment is complete and working reasonably well. We’ve already ‘tweaked’ a few things: I’ll update this thread as more is learned/added.