Studio711.com – Ben Martens

Gadgets

Light Timer

Every night since moving in, I have been doing battle with the external light timer. The previous owner left instructions, and I found the manual online, but no matter what I did, I couldn’t get them to work correctly. Even when I set the program, the timer drifted and would be wrong by the next day.

I finally gave up trying to get it working and ordered the fanciest light timer I’ve ever seen: a Honeywell Econoswitch. It’s a digital timer that fits right into the light switch panel. You can do a separate program for each day to turn the lights on and off, or the really cool feature is that it will calculate the sunrise and sunset based on the latitude and longitude that you enter in. The installation was simple and this one is a breeze to program. It’s well worth the money!

Windows Media Center LCD Arduino Project

JimM got me interested in Arduinos. They are simple electronics boards that contain almost everything you need to get started with your project. When it arrived in the mail, I connected it to the computer via USB, opened up the development environment, uploaded a small program to the board and boom, I had a blinking light. Simple, yes, but the time to results was extremely low.

My overall plan was to build a display for the Media Center PC in our living room. I wanted to be able to easily see when it was recording something or when one of the tuners was being used by one of the extenders. There are some premade solutions that would have probably worked, but this seemed like a great starter Arduino project and I would end up with something that was completely customizable.

In addition to the Arduino, I got a 20×4 character LCD screen and some small supplies like resistors, wire, buttons, and a potentiometer. This is the point where I should show a schematic for the whole thing, but honestly I never drew one. I built little portions of it as I went and ended up with something that works and hasn’t burned down the house yet.

Basically, the Arduino Uno sends power to the LCD and a 10K potentiometer controls the contrast of the screen. The board also sends the text for the screen through four wires along with a couple extra wires for enabling the screen, etc. The board powers the backlight for the LCD but I hooked up a resistor there to dim the backlight a bit. I had originally planned to have the backlight be controllable from software but I gave up after a couple failures trying to get a transistor hooked into the circuit. There is also a simple button hooked in, but I haven’t needed to use that in the software yet.

Once I got it all soldered together, I stuck it into a plastic hobby box from Radio Shack. I had to cut out a rectangular hole in the front for the LCD. That was done freehand with a Dremel and looks pretty bad when you get up close. Luckily it hides in the shadows and you can’t really tell. I have ideas to do that better next time.

The box now sits by the Media Center and is connected to the PC via USB. That cable provides power and communications. A C# application gathers status from the Ceton InfiniTV tuner and sets the display for the LCD in the box. (For the curious, there is a JSON interface to get to the InfiniTV status.) When a tuner is in use, the box displays the channel call sign and the name of the show that is being recorded. I get that info by mapping the channel number from the tuner to a call sign and then looking for the corresponding file in the Recorded TV folder. That file has the show name. When a tuner isn’t in use, it shows the temperature of that tuner. I’ll probably come up with something better for unused tuners in the future.

This was my first real electronics project so I learned quite a few things that are probably obvious to other people:

  • Use a bread board. Soldering everything to see if it worked was a pain.
  • Use header pins so you don’t have to solder directly to the LCD screen.
  • This whole thing could have been done in a couple minutes by buying a pre-made LCD shield that plugs in on top of the Arduino. I’m glad I did it manually the first time, but next time I’ll probably go for the shield.
  • Buy an introductory electronics book.
  • Take more pictures along the way! I was so excited to get this working that it somehow slipped my mind.

What’s next? I have quite a few project ideas but I think the one I’ll tackle next is making a tilt/pan mount for my camera that is controlled by an Arduino and will automatically take big panorama pictures. I’m also going to build an intervalometer into it for time lapse. This project will involve more buttons, motor control, and power from a battery.

Canon T2i Review

I’ve been longingly reading dSLR reviews for the past year, and it all paid off because Tyla and I got one for our Christmas gift to each other. The hardest part of the whole thing was deciding between Nikon and Canon. I got a lot of recommendations for both sides, but we ended up going with the Canon T2i. To me, this camera is the leading candidate in the $700-800 range. The picture quality is impressive and the video features beat most of the competition. That being said, you can’t really go wrong either way.

I’ll start with a shopping list of what we bought:

I’ve been very impressed with the T2i up to this point. The battery lasts forever. We took ~450 photos saving in JPEG+RAW and about 30 minutes of 1080p30 video before the battery needed to be recharged.

The best accessory that we picked up was the Caselogic SLRC-206 bag. Click that link and watch the video review from Amazon. It has a pouch in the back to hold a laptop and the inside is full of adjustable compartments to hold all your gear. This bag doubles as our storage bag at home as well as our carry-on when we travel. The smaller Zoom Holster bag from Caselogic is made of similar materials but it will protect the camera a bit when it’s in my pack during hiking.

The 55-250 lens was a cheap pickup because Canon had a $150 rebate for that if purchased with a T2i kit. It’s not a spectacular lens, but for $60, it was a no-brainer. The next lens that I have my eye on is the 50mm f/1.8 prime lens. I also have my eye on a timer remote (for time lapse photography) and a wireless remote (for easy family portraits or night sky BULB shooting.)

If you’re looking for something in this price range, I whole-heartedly recommend the Canon T2i. Are there other cameras that would make you happy? Sure. But I haven’t used the others. All I can tell you is that I’ve been researching this steadily for a very long time and the T2i was my choice. In fact, it has exceeded my expectations.

I’m still learning my way around the camera, but I’ve already got some shots which look pretty good to my eye. I’m starting a photo gallery called “dSLR Favorites.” I won’t make a post every time I come up with a good photo, but I’ll stick them in this gallery. I’m also adding another three picture strip to the sidebar so you can easily see when I add new photos there. I’ve included a couple below, but check out the photo gallery to see all of the ones I’ve added so far. If you want larger versions of any of the pictures, let me know!

PS. I’ve seen the photos that some of you have shot and know that I have a LOT to learn. If you have advice for me, I’d love to hear it! Please shoot me an email and don’t worry about hurting my feelings. I want to learn!

P.S. Tim and Chelsea got a T1i recently and Tim has started a photo blog. His posts will appear in my “Friends’ posts” section on the right side of this page.

Ceton InfiniTV Media Center Demo

About a month ago, I wrote a post about the guts of my Media Center PC. But what does it really do? Why did I build it? Since you can’t all stop by and check it out in person, I’ve put together a demo video.

It’s dorky, I know. The various cameras aren’t calibrated the same and my shirt sleeve kept flipping up. But by the time I noticed all these things, I was too far in to start over. So enjoy this (amateur) video showing just a few of the reasons why I love my Windows Media Center PC.

If you’re running just about any version of Windows 7 or Vista, you have the Media Center app. You won’t be able to do the live TV portion, but everything else is available to you for free.

Ceton InfiniTV Media Center

I’ve always been intrigued by the beauty of Windows Media Center. It comes with virtually every SKU of Windows now, but how can I get my cable TV hooked up to it? There have been various methods for the past few years, but nothing was good enough for me to take the plunge of killing the Tivo and switching to Media Center. I’m planning a couple posts about this project, but the first one will be on the hardware side of things.

The magic card that makes this all possible is the Ceton InfiniTV 4. It’s a PCIe card that accepts a cable card and records 4 HD streams simultaneously. One PCIe slot, one cable card, four TV streams. The cards came out towards the beginning of the summer and I watched as people worked through some of the early bugs. Ceton had trouble manufacturing enough cards to meet the demand. That meant that once I decided to take the plunge (8/31), I had to wait over two months for my card to arrive.

The next question was what hardware I needed around the Ceton. I had a four year old Core 2 Duo E6600 (2.4GHz) with 4GB of RAM. I didn’t really see how that could handle that much HD video processing, but I decided to start there and see what happened. The only upgrade I needed immediately was a new video card with HDMI out. The HDMI out would give me HDCP and multi channel audio.

I picked up the PowerColor Radeon HD 4350 512MB 64-bit DDR2 PCI HDCP Ready Video Card.  I thought I only had one PCIe slot which would be used for the Ceton card so this was one of the few PCI options. What a train wreck this ended up being. The PC would blue screen when I tried to install the drivers, and even when they were installed, I couldn’t play back live or recorded TV. After blowing an entire weekend trying to debug the thing, I shipped it back and headed to Fry’s to get something from the NVidia camp. I ended up with the Evga GeForce GT 430 1 GB DDR3 PCI-Ex card. Note that it’s a PCIe card. Stupid me, I had missed a PCIe slot because it was hidden behind/underneath some other junk in the PC. Once I removed it all, I had a clean shot to two PCIe slots which gave me a lot more options for the video card. The GT430 was super simple to install. Everything worked right away, and while it’s not passively cooled, it’s very quiet and the fan rarely runs.

The machine is an old Dell and the only fan is a VERY large fan at the front of the machine directing air over the CPU cooler. It runs very quietly but I was concerned about whether the video card and Ceton card would generate too much heat. I added an 80mm to the back of the case to pull air out, but it’s a bit noisy and I’m doing some testing to see if it’s really necessary.

The Ceton card was pleasantly simple to install. I called Comcast with a bit of dread, but that was very smooth. They asked directly if I was installing it into a Media Center or Tivo (an option I’ve never heard before) and then transferred me over to their Media Center guy. In theory there shouldn’t be any difference so maybe he’s also the Tivo guy. Either way, he was the most informed cable card guy I’ve talked to at Comcast. When it didn’t work the first time, I was able to give him precise feedback through the excellent Ceton diagnostic tool and he was able to debug/retry on his end. In about 15 minutes we had everything working beautifully.

The machine isn’t terribly loud, but the OS drive is the noisiest part. Since this is going to sit in the living room, noise matters. I ordered an Intel X25V 40 GB Solid State Drive to serve as the OS drive. It’s a bit slower than their top of the line SSD but it’s still faster than a platter drive and it will be perfectly silent. Plus, it’s just the OS so it’s not going to have a lot of writes other than the page file.

The last piece of the puzzle was hooking this thing up to my Harmony One remote. It’s the cornerstone of my whole setup so it needed to work with this PC. There are some “Media Center compatible” remote/IR receiver combos available, but you have to be careful because they don’t all support the RC6 Media Center standard. I ended up getting one of the original IR receivers that came with the Dell Media Center machines back in the day. I found it on eBay (first time I’ve used that site in YEARS) but it worked very well. I programmed the Harmony remote to think it was talking to one of the Linksys extenders. It works like a champ. When we drop out of the Media Center interface, I’ll use a regular wireless mouse and keyboard.

For now the machine is sitting in the computer room and we watch it via the Xbox360 in the living room. I’ve been running it through it’s paces and once I’m convinced that it performs well, I’ll swap out the Tivo. The only bug I’ve found so far is that when I record NFL football games on the local Fox affiliate, it will cut out every once in a while with a copy flag error. There’s a beta firmware available from Ceton that fixes this. I had a very good experience with Ceton support and was added to the beta. Hopefully this fixes my issues without adding too many other ones. Once I ditch the Tivo completely, I’ll be much less likely to get on betas or apply any other updates/patches to the machine. Windows Update is even turned off. I’ll do that myself at specific times after I’ve made a backup to my Windows Home Server.

As for whether or not the older machine could handle it, I have been very pleasantly surprised. Even at full load (recording 4 HD streams, playing back one locally and streaming another to the Xbox360 extender), it uses less than 40% of the CPU and there is plenty of memory overhead. Almost everything is happening at the hardware layer. Note that all of the video is on a single hard drive. The bandwidth required for four HD streams doesn’t come close to the overall throughput of the drive, but there are a lot of seeks going on. RAID seems like overkill at this point but it’s still on my radar if I hit little glitches. I’d definitely recommend putting the OS on a separate drive though.

That’s about it for the hardware side of the setup. Once I get a little farther along in the process, I’ll put together a post about what I can do with this that I couldn’t do before. The scenarios are pretty impressive if I can piece them all together well.

CascadeSkier Windows Phone 7 App

Three years ago, I wrote a mildly successful Windows sidebar gadget (~6000 users) that shows local temperatures, 24 hour snowfall and total snowfall for all the local resorts. There are other data sources like that, but what sets this apart is that the data is updated hourly thanks to live feeds from the Northwest Avalanche Center. (Thanks again to the NWAC for letting me use their data!) While displaying all that data, the gadget cycles through web cam feeds from each resort. At the bottom of the gadget is a quick news line to keep people informed of local snow news. Version 4.0 just hit the Windows Live gallery yesterday so feel free to download it for free and try it out. If you want more details, check out gadget.studio711.com.

Many of the users asked if I had plans to make a Windows Phone 7 version of that gadget. I said no at first, but with time and a lot of requests, I changed my mind and decided to give it a shot. Microsoft also really encouraged employees to develop their own applications. I’m sure that’s a large part of why employees are all getting new phones (that and because we’ll make good marketers.) Anyway, I’m proud to say that if you go to the Zune Marketplace and flip through the Sports genre, search for “cascadeskier”, or click this link (with the Zune software installed), you’ll see my app!

The development process was interesting:

  • It costs $99/year to be a developer. Microsoft keeps 30% of the generated revenue. This all covers the cost of identity verification and unlimited application submissions.
  • A very nice suite of development tools is available in a single package. It includes Visual Studio 2010 Express, Expression Blend, and a WP7 emulator.
  • Code is written in Silverlight/WPF. It was my first foray into that world but I’m happy with the end result. Data binding was the most painful part, but after I learned some debugging tricks, that got simpler.
  • The application submission process is very nice. Fill out the form, click upload, wait for them to test it and then it shows up in the marketplace. If you fail the tests, you get a document back detailing exactly what tests you fail. If you clean that up and don’t break anything else, you’ll be in the marketplace. Your app will never be declined without an answer. It sounds simple but it’s a huge plus for developers and a big win over the Apple platform.
  • Updates are super simple. The developer uploads a new binary and the Windows Phone software takes care of the rest. It notifies the user that there is a new version available and points them to the download.

  

I have actually submitted two apps already, but I think the second one will be much less popular. I wrote it mostly for myself. It’s called DiamondStats. It’s a simple app that helps you keep track of your baseball or softball stats. It sound silly but I’m a numbers guy and I’m always thinking about stats while I’m playing rec league softball. (Yes, I know that’s bad. I didn’t do it when I was playing competitively in high school.) Having the app is nice because I can just walk back into the dugout, pop in the numbers and then forget about it. I wrote this for my old phone and then rewrote it for the new platform.

I plan to continue to release updates for the CascadeSkier application. Suggestions are already coming in and some of them have been pretty good. I think the first think I want to do is get rid of the start page where you select from a list of resorts. You should jump automatically to your favorite resort and be able to filter out the ones you don’t care about.

At some point I might port it over to Android, but that’s not real high on my list right now. It will very likely never be on iPhone since I won’t be buying a Mac just to write an app for that phone.

If you download it, please send me your feedback!

[UPDATE] You can view the most up to date information about this app at http://cascadeskier.studio711.com

AutoCom Super Pro Avi

I know I said I was going to wait a bit before buying the communications system for the bike, but I decided it was worth it and the numbers worked out in the budget. So yesterday an AutoCom Super Pro Avi arrived in the mail. I immediately dug into the bike to install it.

The installation wasn’t too difficult. Kawasaki provides accessory power leads from the rear of the bike. I soldered some bullet connectors onto the leads from the AutoCom and got it plugged in. The unit is mounted under the seat, but I really wanted to have my MP3 player in the glove box at the front of the tank. I took the time to dismantle the bike and get the wire routed cleanly up under the gas tank and inside the front fairings. I was a bit nervous when I started unbolting the gas tank but it all worked out just fine. The end of the audio lead now pokes out from inside the glove box. The rider headset lead comes out between the front of the seat and the tank, and the passenger headset lead comes out under the left hand grab bar in the rear.

The helmet install takes a bit to get right. The ear pads need to be placed directly over the ear and preferably behind the padding of the helmet. The microphones need to be touching the center of your lips. There is also a wind sensor that detects the ambient noise.

That wind sensor is really what makes this unit so nice. As your speed increases, it detects more noise and cranks up the volume. It’s also tied to the level of sound needed to activate the microphone. This means that you can talk at a normal voice at any speed and the mic will activate as you’d expect. When the mic is activated, the music quiets to 50% volume.

I probably could have opted for one of the cheaper models but I ended up with the top of the line model. It has a lot of expandability. For example, I can buy an adapter to connect to my phone via Bluetooth. I can also plug in an FRS radio for bike-to-bike communications.

All in all, I was very happy with the install and my test ride. I look forward to getting on the bike with Tyla and trying out the chat feature.

Ski Geek

Somehow, every activity I participate in is turned into a geek project. Skiing is no different. This season, I have been carrying around the Garmin GPS that I purchased earlier in the year. It keeps a signal inside my coat and dutifully tracks my position every few seconds.

I can load this into my National Geographic topographical map program and get an interesting view, but I wanted more. I want to know my top speed, how much time I spent in the lift lines, how fast the lift was moving, which lifts I rode the most, etc.

To that end, I’ve started writing a program to analyze the GPS data. The raw statistics are fairly simple and I was able to get a display churned out pretty quickly. Lately I’ve been stuck on trying to automatically figure out when I was on a lift. On the surface, it seems easy: you’re on a lift when you’re going up. That’s not always true. Runs have rises in them and lifts have dips in them. So then I tried to say that any time I’m heading in the same direction for X miles and Y vertical feet then I’m on a lift. Even that has problems. What happens when you get off a lift and keep skiing straight down the backside of the hill? What happens when you get a couple errant GPS points that aren’t in line with the lift? There is enough drift in the data to make it very complicated. If I can’t get the automatic solution figure out, I’m going to have the user tell me where the lifts are the first time and then I’ll save that data. I want to move on to getting either a 2D or 3D map working next. After that I’ll work out a good way to display all the statistics about the day and each individual run.

If you’re interested in seeing the code and/or helping out, it’s all available on codeplex.

The picture below shows the track from my last ski day at Crystal Mt in the National Geographic software. My software will end up looking something like this but with more data and information on the screen.

Photo Frame Update

On Sunday I took the shelves down from above the fireplace. I removed the fish tank about 6 weeks ago and the large gap has remained unfilled. I decided to rotate the shelves 180 degrees to move the hole up to the top left corner. It's not so bad up there because it's higher and you can't see through the shelves to the mess of wires behind. I'll fill it with big books or a plant or something like that.

The trick to this rotation was that I had to remove and rotate the LCD. That worked fine but I couldn't get the laptop to display on the LCD. I figured a reboot would solve it. Wrong. The laptop shut off and then refused to turn back on. I think the hard drive is dead but I'm not going to spend time fixing a free junk laptop. I quickly found a replacement on expo.live.com and picked it up on Tuesday. The new laptop got installed last night and everything is back to normal.

The laptop is a P2 400 with 128MB of RAM, a 12GB hard drive and a DVD drive. My first computer in 1998 was a P2 350 with 128MB of RAM, a 10GB hard drive and a CD drive and it cost me $2400. This laptop cost me $40.