This document discusses the Empanada project, which aims to create a simple and hackable dashboard software using a Raspberry Pi. The project involves setting up a Raspberry Pi, connecting devices to it, and developing software to power an informative workspace. The software will retrieve news and metrics through web APIs and events, and display information on devices connected to the Raspberry Pi. It will also allow bidirectional communication by sending and receiving signals through the Raspberry Pi's input/output pins.
1. Informative Workspace with
®
Raspberry Pi
Chris Hansen, New Relic - @cxhansen
Jonathan Thurman, New Relic - @jthurman42
https://github.com/newrelic/empanada
Raspberry Pi is a trademark of the Raspberry Pi Foundation
Tuesday, October 15, 13
4. Empanada Project
•Simple, open, hackable, dashboard software
•Raspberry Pi setup instructions
•Instructions for adding devices to Raspberry Pi
•Budget-conscious
Tuesday, October 15, 13
7. What’s Important to Us
•Heads-up to when something breaks
•Heads-up to current team activity
•Window into tech community news
Tuesday, October 15, 13
8. Empanada Goals
•Good support for metrics and news
•No service fee
•Simple to hack
•Generic event service for integration
•Deployable anywhere
•Accessible from anywhere
Tuesday, October 15, 13
10. Browser
<div id="feedTechCrunch"/>
index.html (Dashboard Main Page)
function initialize() {
loadFeed("feedTechCrunch");
...
}
TechCrunch
New Relic
Spring
...
dashboard.js (Dashboard App)
Company Network
News Feeds
Tuesday, October 15, 13
Google
Feed API
Internet
12. Browser
<div id="feedTechCrunch"/>
<div
ng-controller="GitHubCtl">
index.html (Dashboard Main Page)
function initialize() {
loadFeed("feedTechCrunch");
...
}
function GitHubCtl(…) {
...
}
Google
Feed API
Proxy
auth
config
dashboard.war
(Java App)
Proxy Service
dashboard.js (Dashboard App)
Company Network
Protected Web APIs
Tuesday, October 15, 13
TechCrunch
New Relic
Spring
...
Protected
Web APIs
GitHub
New Relic
HipChat
...
Internet
13. Proxy Service
• Allows our Angular app to get results from protected web APIs
• Restricted to GETs
• For a given external Web API, the proxy service must know:
• URL prefix path to forward (otherwise 401 status)
• Where to fetch the access token
• token insertion strategy (usually HTTP header)
Tuesday, October 15, 13
14. Browser
<div id="feedTechCrunch"/>
<div
ng-controller="GitHubCtl">
<div
ng-controller="BuildCtl">
index.html (Dashboard Main Page)
function initialize() {
loadFeed("feedTechCrunch");
...
}
function GitHubCtl(…) {
...
}
function BuildCtl(…) {
...
}
dashboard.js (Dashboard App)
Company Network
Events
Tuesday, October 15, 13
Google
Feed API
Proxy
auth
config
dashboard.war
(Java App)
Proxy Service
Event Service
TechCrunch
New Relic
Spring
...
Protected
Web APIs
GitHub
New Relic
HipChat
...
Internet
22. Why Raspberry Pi?
•Full Linux stack
•HDMI output
•Cheap and Hackable!
http://www.raspberrypi.org/wp-content/uploads/2011/07/RaspiModelB.png
Tuesday, October 15, 13
23. Caveats
•CPU / Memory constraints
•Need to customize HDMI settings
•Overclocking issues
•New Out Of Box Software
Tuesday, October 15, 13
24. Extreme Feedback Devices
•Devices that manipulate your environment
•Force you to take notice
•People lose interest over time, remind them!
Tuesday, October 15, 13
42. Next Steps
•Buy some hardware
•Get out our soldering iron
•Share your awesome hacks
•Check out Empanada - Soon!
Tuesday, October 15, 13
43. Empanada Project
•Raspberry Pi setup instructions
•Instructions for wiring the devices
•Software described here (by end of October)
•https://github.com/newrelic/empanada
Tuesday, October 15, 13