Posts

Showing posts from 2013

Live Streaming TV for the Dodge Caravan

Image
The 2010 Dodge Caravan SXT I recently acquired has an interesting feature - a built in "Vehicle Entertainment System" complete with two rear screens, two DVD players, two aux video/audio inputs, and multi-channel IR headphones. This is all cool, but who wants to be stuck watching things they happen to be carrying around on DVD?  This is 2013, the age of streaming media!  Immediately, I started pondering how I could bring this system up to date with the current state of ADD-inducing, "always-on" streaming media entertainment! I. Video in Motion First thing's first.  The Chrysler/GM "MyGig" system has a Lawyer-induced feature of disabling any video from the head unit when you put the vehicle in drive.  That's rather annoying!  I don't condone watching a movie while you're supposed to be driving, but I'd rather that I dictate to the technology what to do, not the other way around.  Thankfully, there are a couple of companies that mak...

Digispark and programming a raw ATtiny85 with Arduino

I was a backer of the Digispark last year, and love these little devices.  For those who haven't seen them, the Digispark is a tiny ~ 1 inch square board with an Atmel ATTiny85 microcontroller, male USB pins, and custom bootloader to allow it to be programmed directly from a computer USB port. More succinctly- It's the smallest, cheapest, and easiest way to build a simple Arduino project that doesn't require the larger Atmel microcontrollers. After playing with my initial three Digisparks for a while, I started coming up with uses for the ATtiny85 that made even the Digispark overkill.  For these simple circuits I didn't want (or need) the bootloader or the USB IO.  I just wanted a way to flash my code onto the raw ATtiny85 and move on.   Enter littlewire - a simple Atmel AVR programmer based on the ATtiny85 and it's ability to implement USB in firmware. Littlewire uses the same IO pins as the Digispark, so you can actually just flash the existing littlewir...
phreakmonkey.com is now hosted on Blogger! For those of you who follow my (neglected as of late) blog, you may have noticed some downtime lately.   My previous web hosting provider was being rather fascist about controlling the DNS for the domain names that I own, so I decided to re-take control of them and move my blog elsewhere. Blogger seemed like the easiest choice, as I have tired of maintaining WordPress on my own and never really liked it anyway. The move required me to export all my old posts, modify them to re-link all the static content that I had hosted elsewhere, convert it to Blogger-compatible format, and then import it into Blogger.  It seems to have gone relatively smoothly, but feel free to send me a message if something you're looking for is gone or doesn't work. On the positive side, I will probably go back to blogging cool stuff again, since I'm back on an easier platform to do it from. Cheers!  - K.C.

Accessing Google Cloud SQL externally from Python

I started playing with Google Cloud SQL recently, hoping to use it to tie together a data collection application I run on a home server with an Google AppEngine interface for querying the data.  The problem came when I realized that the only external interface into Cloud SQL is via a JDBC driver, and my program was written entirely in Python. After some toying around, I successfully got the Google Cloud SQL JDBC driver to work from within Python 2.7 under the Python JayDeBeApi module and jpype. I'm documenting the final steps here in case I need them later.  YMMV Set up a Google Cloud SQL instance and database. This will also require you to register a project in the developer console, and enable billing if you haven't already.  I'm using the temporarily available free trial of Cloud SQL, but you have to have billing associated with the account in case you exceed the free trial quota. On the system you want to connect to Cloud SQL from: Make sure you have a working JV...