{"id":361,"date":"2012-11-05T20:49:21","date_gmt":"2012-11-06T03:49:21","guid":{"rendered":"http:\/\/canadiangeek.net\/?page_id=361"},"modified":"2016-10-13T23:04:09","modified_gmt":"2016-10-14T06:04:09","slug":"wall-screen","status":"publish","type":"page","link":"https:\/\/canadiangeek.net\/?page_id=361","title":{"rendered":"Wall Screen (Version 1)"},"content":{"rendered":"<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/IMG_0206.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-363\" title=\"IMG_0206\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/IMG_0206-300x224.jpg\" alt=\"\" width=\"300\" height=\"224\" srcset=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/IMG_0206-300x224.jpg 300w, https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/IMG_0206-1024x764.jpg 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>I have always wanted to add a touch screen to my home.\u00a0 Recently my family and I moved into our current home where we plan to stay for a long time.\u00a0 This gave me the opportunity to cut some large holes into the walls for a touch screen install.<\/p>\n<p>The screen itself is a 17\" LCD made by ELO touch systems, purchased at auction for around $20.\u00a0 Installation was the easy part of this build, I cut a hole slightly larger then the screen between two studs.\u00a0 I then bent a piece of steel to mount to the screens Vesa mount and screw into the studs on each opposing side.<\/p>\n<p>This firmly mounts the LCD to the wall but leaves an unsightly unfinished edge all the way around the screen.\u00a0 My solution to this was simple.\u00a0 An $8 frame from Walmart partnered with a custom cut mat.\u00a0 I used sticky back velcro that is applied to the back of all 4 sides of the frame to attach it to the wall.\u00a0 This allows the setup to easily be taken apart and put back together when needed.<\/p>\n<p>To cable the screen to a remotely located PC I use a USB over cat5 adapter to run the USB 50+ feet away and a high quality 50 foot VGA cable to run the video signal.\u00a0 This runs down to my basement and over to a rack mounted windows PC that will handle a total of 3 of these screens spread across the rest of the house.<\/p>\n<p>Now for the hard part, what interface can I use for the front end.\u00a0 I did allot of research, tried allot of different applications and I came to the conclusion that they all suck at what they can do and are missing allot of what I would like them to do.\u00a0 The only solution moving forward was to build and interface myself.<\/p>\n<p>I new I wanted the interface to have the following features.<\/p>\n<ol>\n<li>Ability to work as every remote control in the house (if I loose a remote, I want to use the screen)<\/li>\n<li>Ability to load any media (music, movies, TV) to any TV or piece of stereo equipment)<\/li>\n<li>Thermastat controls with elaborate settings possible (has to work with PC off)<\/li>\n<li>Contacts database with phone integration (I want to click on a phone number and have all the phones ring and put through the call)<\/li>\n<li>Voicemail accessible from the screens<\/li>\n<li>Security system disarm\/arm from screen (also visible output from all motion sensors and door sensors)<\/li>\n<li>Traffic camera screen (shows the web-cams located on my home towns city streets)<\/li>\n<li>Front door camera (shows who is at the front door, triggered off the door bell)<\/li>\n<li>Lighting controls for the whole house (picture of floor layout, touching a room turns the lights on or off)<\/li>\n<li>Kitchen Screen: Recipe database<\/li>\n<li>Kitchen Screen: Egg timer<\/li>\n<li>Kitchen Screen: Grocery List (with integrated bar-code scanner)<\/li>\n<li>Yellow pages integration (I dont want to have to use the big book)<\/li>\n<li>Google, Maps, and Calendar integration<\/li>\n<li>Calculator<\/li>\n<li>Notes screen (like virtual post-it)<\/li>\n<li>Weather and inside house temperatures screen<\/li>\n<li>Pong clock screen saver (saw this on hackaday once, decided I needed one on my wall)<\/li>\n<li>Family photo screen saver (wall screens turn into a\u00a0digital picture frame)<\/li>\n<li>Screen API that allows my home automation system to load screens automatically (so when I wake up in the morning the screen wakes up the monitor and\u00a0shows me traffic cameras on my way out the door.<\/li>\n<\/ol>\n<p>So in short I want the screen to do everything I could ever imagine it should be able to do.\u00a0 Here is what I came up with:<\/p>\n<p>&nbsp;<\/p>\n<h1 style=\"text-align: center;\">Interface<\/h1>\n<p><center><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/IMG_02091.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"IMG_0209\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/IMG_02091-300x221.jpg\" alt=\"\" width=\"183\" height=\"150\" \/><\/a><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/menu-1.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"menu-1\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/menu-1-300x224.jpg\" alt=\"\" width=\"165\" height=\"150\" \/><\/a><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Menu2.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"Menu2\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Menu2-300x224.jpg\" alt=\"\" width=\"155\" height=\"150\" \/><\/a><\/center><\/p>\n<p style=\"text-align: left;\">\u00a0The basic interface concept is stolen from a certain phone\/tablet that I may own.\u00a0 Many of the icons had to be created or stolen from other sources.\u00a0 When possible I have stolen the graphics as I am not at all talented when it comes to anything artistic.<\/p>\n<p style=\"text-align: left;\">The interface has an arrow icon at the bottom of the screen with takes you to the next or previous page.\u00a0 I have also created a dynamic calendar icon that changes to reflect the current date and added a click to the bottom of the interface.\u00a0 There is also a hidden area that will bring the user back to the windows desktop if double clicked in the right pattern.<\/p>\n<p style=\"text-align: left;\">Once an option is chosen from the icons the interface moves to the upper portion of the screen in the form of a ribbon.\u00a0 That ribbon supplies all of the core functionality however some of the less frequently used icons are only available from the main interface page.<\/p>\n<h1 style=\"text-align: center;\">Media<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Movies.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-376\" title=\"Movies\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Movies-300x225.jpg\" alt=\"\" width=\"270\" height=\"173\" \/><\/a><\/p>\n<p style=\"text-align: left;\">\u00a0The basic media interface is selected by choosing the iphone \"utube\" icon.\u00a0 This loads an integrated web browser that opens to my preexisting media web page.\u00a0 This interface will be covered on this site under its own heading as it really has to many features to list here.<\/p>\n<h1 style=\"text-align: center;\">Thermostat<\/h1>\n<p><center><img loading=\"lazy\" decoding=\"async\" title=\"Thermostat\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Thermostat-300x225.jpg\" alt=\"\" width=\"239\" height=\"162\" \/><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/tempcreate.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"tempcreate\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/tempcreate-300x183.jpg\" alt=\"\" width=\"178\" height=\"115\" \/><\/a><\/center><\/p>\n<p style=\"text-align: left;\">\u00a0The thermostat page remotely controls an Arduino circuit that I build separately.\u00a0 This allows the furnace to work regardless this windows machine crashing.\u00a0 The interface has a vertical slider that changes colors as it slides up and down that allow you to set the current set point or override the current rule.\u00a0 There are radio buttons that will also let you set the current heading\/cooling\/fan modes.\u00a0 Where this system really starts to shine is in the elaborate rules engine where rules can be created based on an infinite set of parameters.\u00a0 (IE: If outside temperature is &gt; 20 and Month &lt; 5 and Month &lt;10 and day is Tuesday then enable the fan and set humidity to 30)<\/p>\n<p style=\"text-align: left;\">Such elaborate rules obviously wouldn't be required in reality but why not let the system be infinitely programmable.\u00a0 The graph toward the bottom of the first image shows the previous 24 hours of temperature data from each individual room.<\/p>\n<h1 style=\"text-align: center;\">\u00a0Calculator<\/h1>\n<p style=\"text-align: center;\"><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Calculator.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-384\" title=\"Calculator\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Calculator-300x224.jpg\" alt=\"\" width=\"237\" height=\"152\" \/><\/a><\/p>\n<p style=\"text-align: left;\">\u00a0Simple calculator application that can also handle full equations.\u00a0 This is very handy to have at your fingertips.<\/p>\n<h1 style=\"text-align: center;\">Calendar<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Calendar.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-385\" title=\"Calendar\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Calendar-300x225.jpg\" alt=\"\" width=\"222\" height=\"153\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Simple link to google calendar with an integrated keyboard (I have this keyboard integrated into many of the HTTP based integrations).\u00a0 This system will also auto log into google calendar when this page is chosen.<\/p>\n<h1 style=\"text-align: center;\">Cameras<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/cameras.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-386\" title=\"cameras\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/cameras-300x224.jpg\" alt=\"\" width=\"221\" height=\"167\" \/><\/a><\/p>\n<p style=\"text-align: left;\">I have not yet installed the front door camera at my new home however i have finished the camera application.\u00a0 This page contains the required camera control software.\u00a0 One of these days I will have time to install the camera \ud83d\ude42<\/p>\n<h1 style=\"text-align: center;\">Cartoons<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/cartoon.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-387\" title=\"cartoon\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/cartoon-300x225.jpg\" alt=\"\" width=\"207\" height=\"155\" srcset=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/cartoon-300x225.jpg 300w, https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/cartoon.jpg 1023w\" sizes=\"auto, (max-width: 207px) 100vw, 207px\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Where would the average morning be without reading the funny papers.\u00a0 This page strips the daily cartoon images from some online resources and saves them to one of my network drives.\u00a0 It then loads a daily set of images each day.\u00a0 Double clicking on the left of any cartoon will load the previous days cartoon and double clicking to the right will load the next (if its not up to current)<\/p>\n<h1 style=\"text-align: center;\">Contacts<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Contact.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-388\" title=\"Contact\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Contact-300x225.jpg\" alt=\"\" width=\"221\" height=\"147\" \/><\/a><\/p>\n<p style=\"text-align: left;\">The contacts page leverages a simple MySQL database and my current Asterisk installation to dial numbers directly from the screen.\u00a0 It does this by accessing the telnet based API on Asterisk and having Asterisk place a call to the destination number once a home phone is picked up.\u00a0 New contacts can be added directly from the wall interface using the onscreen keyboard that I have written into the application.<\/p>\n<h1 style=\"text-align: center;\">Email<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Email.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-389\" title=\"Email\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Email-300x215.jpg\" alt=\"\" width=\"212\" height=\"143\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Nothing special here, just a link to shaw's online email.\u00a0 Emails can be written and sent via the onscreen keyboard.\u00a0 Its good for fast email that need to be sent but wouldn't be that convenient to write a long email.<\/p>\n<h1 style=\"text-align: center;\">Google<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Google.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-390\" title=\"Google\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Google-300x225.jpg\" alt=\"\" width=\"213\" height=\"160\" srcset=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Google-300x225.jpg 300w, https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Google.jpg 1023w\" sizes=\"auto, (max-width: 213px) 100vw, 213px\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Simple link to google.<\/p>\n<h1 style=\"text-align: center;\">Pong Clock<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Pong.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-391\" title=\"Pong\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Pong-300x225.jpg\" alt=\"\" width=\"203\" height=\"132\" \/><\/a><\/p>\n<p style=\"text-align: left;\">I wrote this screen saver several years back after reading about a clock that someone created based on the pong video game.\u00a0 The clock works be playing both the player one and player two sides.\u00a0 Player one is a horrible player and misses the ball most of the time.\u00a0 Player two however is the king of Pong and and wins often.\u00a0 If you haven't figured it out already Player one wins only once per hour, Player two wins every minute.\u00a0 The screen saver knows which side is going to win before the match begins and it knows how many seconds the game needs to play before a winner is chosen.\u00a0 It uses this data to work out a game where the first player plays a fairly good game but will most likely loose.\u00a0 I spent allot of time writing code where the left game pad looks to suck at pong and often only just catches the ball at the last minute.\u00a0 The right game pad however plays a confident game almost always positioning itself in the perfect position ever time.<\/p>\n<h1 style=\"text-align: center;\">Lights<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Lights.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-392\" title=\"Lights\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Lights-300x225.jpg\" alt=\"\" width=\"214\" height=\"163\" \/><\/a><\/p>\n<p style=\"text-align: left;\">This page is far from complete and has had its back end written from scratch more then once.\u00a0 The first iteration worked using X10 technology and a CM11K however I found the X10 technology to be less then reliable.\u00a0 I plan on reworking this page again using Insteon or possible the new Phillips color changing bulbs that are being sold at the apple store.\u00a0 Once i finished the back end code I will replace this text based page with a floor layout diagram of my home with hot linked room regions.\u00a0 Clicking on any one region would turn the lights on or off and would color the diagram accordingly. Clicking and holding would Dim or Brighten the lights and would fade the layout diagrams room color to match.<\/p>\n<h1 style=\"text-align: center;\">Maps<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Maps.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-393\" title=\"Maps\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Maps-300x225.jpg\" alt=\"\" width=\"210\" height=\"147\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Handy on the way out the door as I look up the locations of destinations that i have never been to.<\/p>\n<h1 style=\"text-align: center;\">Music<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/media.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-394\" title=\"media\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/media-300x225.jpg\" alt=\"\" width=\"199\" height=\"154\" \/><\/a><\/p>\n<p style=\"text-align: left;\">I have been meaning to code this into the same interface for loading movies and TV shows but for now it remains separate.\u00a0 A nightly job indexes 300+GB of MP3's and FLAC files into a MySQL database.\u00a0 Once indexed this applications will allow me to play the audio files on any AppleTV\/XBMC\/VLC\/Winamp console within my home.\u00a0 I have coded in some options for creating playlists, saving playlists, loading series of playlists etc.<\/p>\n<h1 style=\"text-align: center;\">Phone Log<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/PhoneLog.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-395\" title=\"PhoneLog\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/PhoneLog-300x225.jpg\" alt=\"\" width=\"219\" height=\"172\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Leveraging Asterisk I was able to create a quick script that shows a log of all incoming and outgoing calls and an associated recording of the complete call (amazingly useful for replaying later with I forget what was said).<\/p>\n<h1 style=\"text-align: center;\">Remotes<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Remotes.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-396\" title=\"Remotes\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Remotes-300x225.jpg\" alt=\"\" width=\"208\" height=\"137\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Using a Slink-E device that connects to the server via RS232 I was able to save all of the IR codes from all physical remotes.\u00a0 Using the same device with the optional 8 zone expansion adapter I was able to put IR blasters in each room of the house.\u00a0 This allows any remote commands to be executed directly from the screen without a remote.\u00a0 I have also coded in direct serial control for my newer LCD displays to avoid some of the problems with IR reliability.<\/p>\n<h1 style=\"text-align: center;\">Notes (Scratch Pad)<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/ScratchPad.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-397\" title=\"ScratchPad\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/ScratchPad-300x225.jpg\" alt=\"\" width=\"215\" height=\"146\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Simple notepad utility where multiple text files can be created and saved.\u00a0 I use this to store allot of the information that i need to document and access often.<\/p>\n<h1 style=\"text-align: center;\">Security<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Security.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-398\" title=\"Security\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Security-300x225.jpg\" alt=\"\" width=\"186\" height=\"125\" \/><\/a><\/p>\n<p style=\"text-align: left;\">When I moved into my home there was an existing alarm system pre installed.\u00a0 Wiring the system into an Ethernet enabled arduino was an easy modification that allows me to integrate alarm arm\/disarm and monitoring directly from the display.\u00a0\u00a0 Alarm modes can also be controlled from this interface. (Home\/Away)<\/p>\n<h1 style=\"text-align: center;\">Shopping List<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/ShoppingList.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-399\" title=\"ShoppingList\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/ShoppingList-300x225.jpg\" alt=\"\" width=\"199\" height=\"135\" \/><\/a><\/p>\n<p style=\"text-align: left;\">This is another project that took on a mind of its own.\u00a0 I have an auctioneer friend that got me bar-code scanner on the cheap.\u00a0 The interface allows my wife to scan any items that are empty, the system will look up the bar-code online and add the item to the shopping list.\u00a0 Items can also be added manually.\u00a0 Where the system really starts to shine is in its ability to sort the shopping list by the isle layout in each store.\u00a0 If Co-op is chosen it will place all items in the order they would be found in the isles, if the store is changed to Costco it will change the item order to match.\u00a0 It does this by storing store profiles in the database that map to meta data pulled from the online bar-code database.<\/p>\n<h1 style=\"text-align: center;\">Slideshow<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Slideshow.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-400\" title=\"Slideshow\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Slideshow-300x220.jpg\" alt=\"\" width=\"191\" height=\"127\" \/><\/a><\/p>\n<p style=\"text-align: left;\">This screen saver turns the screen into a picture frame.\u00a0 It grabs random family photos from a network share and displays it on the screen for 2 minutes at a time before moving on to the next image.<\/p>\n<h1 style=\"text-align: center;\">Traffic Cameras<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Traffic.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-401\" title=\"Traffic\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Traffic-300x225.jpg\" alt=\"\" width=\"209\" height=\"149\" \/><\/a><\/p>\n<p style=\"text-align: left;\">The city I live in has dozens of real time traffic cameras available on the Internet for checking traffic congestion.\u00a0 This screen allows me to check those cameras on my way to work.\u00a0 I have coded this screen to automatically appear 5 minutes after my alarm clock goes off until after the front door is closed.\u00a0 This allow the screen to be seen on my way down the stairs in the morning.<\/p>\n<h1 style=\"text-align: center;\">Voicemail<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Voicemail.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-402\" title=\"Voicemail\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Voicemail-300x225.jpg\" alt=\"\" width=\"190\" height=\"150\" \/><\/a><\/p>\n<p style=\"text-align: left;\">A simple script that accesses the data stored by Asterisk and allows voice-mails in multiple mailboxes to be played via nearby phones, deleted, moved or reviewed.\u00a0 The remote playback is accomplished by using a custom IVR integrated into asterisk and leveraging the telnet remote interface for Asterisk.<\/p>\n<h1 style=\"text-align: center;\">Weather<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Weather.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-404\" title=\"Weather\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Weather-300x224.jpg\" alt=\"\" width=\"218\" height=\"156\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Simple Yahoo XML scrape and display, Shows the 2 day forecast and all current day stats.<\/p>\n<h1 style=\"text-align: center;\">Yellow Pages<\/h1>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" title=\"YellowPages\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/YellowPages-300x225.jpg\" alt=\"\" width=\"207\" height=\"143\" \/><\/p>\n<p style=\"text-align: left;\">Simple Yellow Pages integration by loading the page in a\u00a0browser control.\u00a0 This allows me to dispose of the massive book that I used to have to store.<\/p>\n<h1 style=\"text-align: center;\">Going to Sleep<\/h1>\n<p><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/PowerOff.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-407\" title=\"PowerOff\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/PowerOff.jpg\" alt=\"\" width=\"154\" height=\"149\" \/><\/a><\/p>\n<p>This icon places the monitor into power saving mode.\u00a0 (saves power).\u00a0 The system will do this automatically if the screen is not touched for an hour.<\/p>\n<h1 style=\"text-align: center;\">Items left to finish<\/h1>\n<p><center><img loading=\"lazy\" decoding=\"async\" title=\"Sync\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Sync.jpg\" alt=\"\" width=\"116\" height=\"113\" \/><a href=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Mario.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"Stopwatch\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Stopwatch.jpg\" alt=\"\" width=\"113\" height=\"113\" \/><\/a><img loading=\"lazy\" decoding=\"async\" title=\"Mario\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/Mario.jpg\" alt=\"\" width=\"115\" height=\"113\" \/><img loading=\"lazy\" decoding=\"async\" title=\"postit\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/postit.jpg\" alt=\"\" width=\"121\" height=\"113\" \/><img loading=\"lazy\" decoding=\"async\" title=\"reporting\" src=\"https:\/\/canadiangeek.net\/wp-content\/uploads\/2012\/11\/reporting.jpg\" alt=\"\" width=\"126\" height=\"113\" \/><\/center><center style=\"text-align: left;\">There are allot of ideas I have had but haven't made time for.\u00a0 In order of the icons above<\/center><\/p>\n<ol>\n<li>\n<div style=\"text-align: left;\">Sync, plugging a usb key or HDD into the USB port located under the screen would sync all incoming or outgoing content into its corresponding network folder.\u00a0 IE Movies\/Audio\/Documents<\/div>\n<\/li>\n<li>\n<div style=\"text-align: left;\">Kitchen Timer (Egg timer type interface)<\/div>\n<\/li>\n<li>\n<div style=\"text-align: left;\">Game timer (keeps track of how many hours of video games the children have played this day\/week\/month<\/div>\n<\/li>\n<li>\n<div style=\"text-align: left;\">Simple Postit (wife could leave me a message, screen would go to sleep but opening the front door or any motion on the motion sensors would turn the screen on and load this postit.\u00a0 Think \"I went to pick up the kids, be back in an hour\")<\/div>\n<\/li>\n<li>\n<div style=\"text-align: left;\">Statistics (reports of electical usage for the home by breaker, temp by room, etc)<\/div>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n ","protected":false},"excerpt":{"rendered":"<p>I have always wanted to add a touch screen to my home.\u00a0 Recently my family and I moved into our current home where we plan to stay for a long time.\u00a0 This gave me the opportunity to cut some large holes into the walls for a touch screen install. The screen itself is a 17&#8243; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":10,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-361","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/canadiangeek.net\/index.php?rest_route=\/wp\/v2\/pages\/361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/canadiangeek.net\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/canadiangeek.net\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/canadiangeek.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/canadiangeek.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=361"}],"version-history":[{"count":25,"href":"https:\/\/canadiangeek.net\/index.php?rest_route=\/wp\/v2\/pages\/361\/revisions"}],"predecessor-version":[{"id":1180,"href":"https:\/\/canadiangeek.net\/index.php?rest_route=\/wp\/v2\/pages\/361\/revisions\/1180"}],"up":[{"embeddable":true,"href":"https:\/\/canadiangeek.net\/index.php?rest_route=\/wp\/v2\/pages\/10"}],"wp:attachment":[{"href":"https:\/\/canadiangeek.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}