08/20/2014 at 20:55 •
I've been working on the hardware side of things.
Signal runs on an Arduino Uno and communicates wirelessly using a Bluetooth v2.1 module I picked up from ebay. It needs to run on battery power for a long time - about the same or even longer than a regular television remote would last (roughly 6 months).
The plan is to put Signal (the Arduino) to sleep for most of the day, when people aren't watching TV (or even in the house). That condition is determined by the server, and it sends sleep/wake-up commands to the arduino. Combined with a high amp-hour, rechargeable lipo battery pack, this ~should make the arduino last for quite a bit.
However, since the actual client-side software isn't very complex, I've been thinking of programming straight onto a bluetooth chip - that could possibly cut down a lot of power consumption. I'm not entirely sure how to go about doing that, but it is something to think about.
08/20/2014 at 16:13 •
A few weeks ago I signed up for the Rovi TV API services, and I've been working to integrate the API with CASTLE /Signal's server so I can more easily access content.
Thanks to Rovi, I have access to three important things: listing schedules, provider-channel lookups, and content info. Schedule and content info is great for making it a useful experience, but provider-channel information is a godsend.
Now I can get the specific channel number linked to the tv schedule content - via the provider-channel lookup service. From there, it's a simple matter of splitting the code and assembling an IR-sequence from the IR codes for every number.
07/26/2014 at 16:08 •
For the past month I've been working on the Signal node.
The hardware consists of an Arduion Uno hooked up to a Bluetooth transceiver, a generic IR Led and IR Receiver, a push-button and an indicator Led.
The client software running on CASTLE acts as a messenger for CASTLE. It allows you to train the system w/ your remote control buttons (though I'm looking for a decent online repository besides ircentral and LIRC), and then sends them over to CASTLE with a reference and the actual infrared code value, which is then saved for later use.
Following from the output of the speech interpretation system, a command data structure is sent over to the signal server for parsing and breakdown, which then generates/look-ups the series of IR codes it needs to send over to Signal to execute the cmd. Ex. With the TV on and at another channel, 'Show me CNN' would (when a generated cmd gets to the server script) build and a series of button codes for the manufacturer and based on the CNN channel code from the provider which would then be sent to Signal to transmit to the TV.