UPnP Renderer Proof-Of-Concept

8 06 2011

Goal: A headless music player  to use in my music listening station in my room (No video or photo ability needed), re-use hardware if possible, as small and non intrusive as possible to the space.   The biggest key to the non-intrusive requirement is that there be no screen OF ANY KIND in my bedroom, not even for media selection.


Reading around I found exactly what I was looking for in the UPnP AV specification: a role called a “Media Renderer”.  It essentially is a player that takes commands from other devices. But it turns out a device or application that ACTUALLY fulfills the role of “UPnP Media Renderer” are the endangered species among UPnP AV devices! There are plenty of “Media Server” applications that house and share out media and most of the major devices are “UPnP Media Players” which means they can connect to a UPnP Media Server and play music but CANNOT be controlled remotely (not with a UPnP Control Point at least!).

Ideally, I would have loved to have a small box with an embedded linux distro that had a UPnP Media Renderer built into it.  Audio out on the back, along with a network cable and I would have been happy but it didn’t work out quite that way.   First of,  I was looking for functionality in a short amount of time over ideal implementation this time.  This is/was a project for to get me AWAY from screens and there is something about spending more time in front of screens to compile and make it all happen that the word ironic would start to describe. 


Anyway,  I did get a windows based device working within 36 hours of starting my search and here is the basic recipe:

Old Laptop + Windows XP + FooBar2000 + Foobar2000 UPnP Plugin + Windows 2k3 Resource Tool Kit = headless music upnp renderer solution

Essentially, I setup FooBar2000 to run as a service on a laptop that stayed on when the lid was shut and I could wake it using Wake-On-Lan. 

On the laptop I…

  1. Installed of clean version of Windows XP and patched the heck out of it.
  2. Installed Avira anti-virus as a lightweight AV option.  
  3. Installed FooBar2000 and the UPnP Plugin

At this point I had a working UPnP Renderer (as long as I turned off the Windows Firewall, was logged in, and launched FooBar2000). The rest of the steps are my ways of making it clean and essentially unmanaged/headless.

  1. Downloaded and Installed the Windows 2003 Resource Kit (To get Srvany.exe and Instrsrv.exe)
  2. Used Srvany.exe and Instrsrv.exe to run FooBar2000 as a Windows Service (Like This)
  3. Set the services to run as SYSTEM and Allowed to Interact with the Desktop
  4. Changed the Power Management Settings in windows for “When the Lid Closes” for the laptop to do “nothing” instead of going to sleep
  5. Set a scheduled task to shutdown the computer at midnight each night
  6. Enabled WOL in the bios

Now I have a laptop that sits on a shelf that I wake with a WOL packet, that I can control via ANY UPnP Control Point (Currently using the Samsung “allshare” app on my Android phone and KinskyDesktop Control Points).  It works really well as long as FooBar2000 shuts down nicely, sometimes I have to flip open the laptop and click “Start Normally” for it to open and be seen by the control points. 

This is by no means my ideal solution but it works, fills my criteria, and was a pretty quick build/poof-of-concept. I’d still love to find a linux based “one install” solution but for now… I can listen to my music without staring at a screen: SUCCESS!


Build Comments / Notes / Warnings to Others:

The hardest part of this project was finding a software application that would run as a true media renderer. There were lots of players out there but VERY few software products that even HINTED at being a renderer.  FooBar2000 was by far the simplest and most straight forward of all the ones I played with/googled and so I went with it.  The rest of the build isn’t technically hard at all (making it a service is a bit but there are plenty of step by step directions out there) and in fact was really simple.  

I even went down the road of looking at purchasing a new device to do this role and got stumped there too.  So many DVD players, embedded video players for TV, etc can SEE UPnP servers and play their content but almost none of them were a true rendered. The only products that were renderers were old and no longer on sale.  Eventually, (after my build was done), I found the the WD TV Live Plus actually is a Media Renderer (with some glitches) but I still haven’t jumped the gun yet and bought it just yet. It seems like there should be some software solution out there but what I did was the best I could find. I’d love it if anyone can point me to the obvious thing I missed that fit my criteria!

I’ll probably consider working on a linux version over time but linux suffers from the same ‘lack of renderers’ problem of windows to start with and the few packages / applications that SEEM to be candidates haven’t been simple to test yet.  I’d love to build a UPnP Renderer on Puppy Linux, repackaged it, and upload it for others to use but alas I’ll see if time and effort prevail.  Of course if I were to do that it might be audio only since that is my goal.





Step 1 – Button Mapping

12 12 2010

The first thing I need to do is to map the key outputs from the buttons on the front of the AudioTron. Both the keys to the left of the screen and the knob to the right use a Flex Cable connector so getting directly at the pins with the multimeter would be tricky at best.

Tools / Prototyping Bits

I wanted to make testing the buttons as simply as possible so I found so FlexCable to breadboard adapters made by Technological Arts. They were the only brand I could find and could only find them being sold on their site and RobotShop.com.  I eventually settled on RobotShop.com as my supplier because they sold those adapters and a few others even though the shipping and handling was a bit steep.  Anyway, so I’ve ordered:

830 Tie Breadboard – Since I don’t actually own one right now. Sad isn’t it.

14 pin IDE Cable to Breadboard Adapter – For the LCD screen connection which is a 14 pin IDE cable.

16 pin Flex Cable to Breadboard Adapter – For the knob controls (which also house a IR reciever of some sort)

24 pin Flex Cable to Breadboard Adapter – For the main button and LED’s panel

Male Breadboard Pin to IC Hooks – These will allow me to easily grasp my multimeter probe and then move them around the breadboard. Since that is pretty much what this entire phase the project is about I decided it was worth the few dollars for them.

Right now I am waiting for the parts to show up and then I can start mapping the buttons, LED, and IR receiver pins.





AudioTron to SqueezeBox Project Scoping: Proof-Of-Concept

12 12 2010
Prototyping Rig

Prototyping Rig

Scoping Considerations

I’ve been batting around this project for the past few days and there are 2 ‘realities’ I have work within:

1) I don’t have the best hardware for the project long term.

– My Mini-ITX board’s onboard VGA is blown but with a cheap PCI card it works
– There is no parallel port which will likely be needed to drive the LCD
– No digital IO pins/etc (Not surprising but it would be ideal)
– No power supply to run it outside of a mini-ITX case I have (see #2 why this matters)

and

2) I don’t want to spend a lot of money on the project. Not yet. Right now I’d need…

– Digital IO board
– Power supply
– Parallel Port adapter

So where does that leave me? Prototyping only!

I think I’ve managed to scrap up most of the things I need to create a proof-0f-concept EASILY based on windows at the moment. Ideally, I would like to make it run embedded Linux basically but I know myself and if I make the project to hard or cost to much up front I will just not do it. And that is pointless. So I think it is better to scale my own expectations to making a franken-computer proof-of-concept that in no WAY will fit or mount inside the AudioTron’s case at this moment BUT will at least confirm what I think can be done.  Once a Windows, Franken-Computer, messy proof-of-concept is working well enough I can look at acquiring the most perfect hardware, etc.

Proof-Of-Concept Hardware

AudioTron - Where it all started.  My intention right now is to use the buttons, LEDs, LCD, knob, and the enclosure. If I am lucky I will also be able to reuse the power supply but I’m less immediately hopeful on that one.

Morex 3677B Mini-ITX Case - This is being used for the power supply and the power button more than the normal ‘containing’ feature a case normally provides.  Because my board needs a pci video card to work I can’t truly mount the board IN the case at this time. But providing the power is no small need to overlook.

VIA EN15000G Mini-ITX Motherboard -  This is the Lazarus of the group or the prodigal child if you will.  Over a year ago I declared the board dead and set it aside because the video stopped working reliably (and other quirks). But after clearing my mind for a year I was able to get it up and working last night IF I had a PCI video card installed.

Jaton Video-118PCI Video Card – A necessary evil because the EN15000G hates it’s onboard video. But honestly, doing the same thing repeatedly right now is good enough for me.

1.8″ Hitachi TravelStar C4K40  Hard Drive -  I pulled this from my old Creative Zen Touch MP3 Player when it died. It is particularly nice because it sports a standard 2.5″ IDE connection on it :)

Digital I/O Card – I’m still working on borrowing a digital I/O card for a proof-of-concept but I have some leads on a Phidgets board I’m hoping will pan out.  I believe it will dump switch actions as HID events that my software can EASILY see. The main concern outside of price for me on a digital I/O board is how do I easily monitor it.  I’m only trying to watch for closed switches and running 3 LEDs at the most. I don’t need an overly complicated digital I/O board / communication language. I have a few good candidates depending on what OS direction I choose.

Proof-Of-Concept Software

Windows – It is what I know best and so prototyping will be easiest here.  I have software that I already use that should be able to do what I need it to do with little coding and so that is of value to me.

SqueezeSlave – A command-line SqueezeServer player that runs on both Windows and Linux

EventGhost – A ridiculously simple and robust software that allows to set actions to incoming events.  In this case the actions will be button pushes and the events will be SqueezeSlave media player commands.  EventGhost is the main reason this project is even tangibly easy for me.  As long as I can get the IO board to dump out actions in a form EventGhost can see them the proof-of-concept is solid.

Proof-Of-Concept Goal

To get the button’s working on the AudioTron’s case to change the state of the SqueezeSlave player.  My initial idea is simply to connect the AudioTron’s buttons to the digial I/O board, monitor that board with EventGhost, and when EventGhost sees a button pressed it will send the corresponding CLI command to SqueezeSlave.

A secondary goal would to get the 2×40 LCD screen on the AudioTron to display the ‘Now Playing’ information.  Right now with a lack of parallel port to drive the build in display this is pretty much more effort than it is is worth.

Next Phase:Implimentation

Once the proof-of-concept is up and running well the next phase will be to make the hardware so it all fits inside the AudioTron case and it can seamlessly be used in a stack of stereo equipment.  Not only will this require hardware revisions but based on what hardware is selected ideally this would involve changing the OS over to Linux and running off a small solid state device.  At that point EventGhost can no longer be the middle-man software and that role will have to be rehashed.

This phase may or may not ever really happen based on the amount of money and time it will take. Of course only prototyping will tell. Onwards!!!!





Software Redux #3 – Part II – Shortcut Based User Interface

13 09 2010

The User Interface. The part of every media system that makes or breaks it for me.  Is it to hard to earn? To simple to be functional? Etc.  If someone can’t figure out how to use the HTPC then in a way its pretty worthless but on the other hand I don’t want to spend hours making it so they don’t have to learn 3 steps.  It’s a balancing act for sure. To quote Billy Joel slightly inaccurately “I’ve finally found what I’m looking for…”

StarDock’s ObjectDock 1.9 Plus

A simple to use program that allows me to create big ass icons in the middle of the screen organized well. Did I mention it was simple? Oh good…. I had considered writing my own ‘Big Button’ UI but decided it was too much effort and always leaned towards just using a standard windows desktop icons because it was SIMPLE.  But ObjectDock has won my heart. It won it so well that I actually paid the $20 to upgrade to the Plus edition JUST to get tabs to make it even cleaner.

So why did ObjectDock win my heart? Well lets look at the follow screen capture of my ‘home’ screen….

ObjectDock UI Disks Tab

ObjectDock UI Disks Tab

Notice how there is no Windows Task Bar across the bottom? It’s a check box in ObjectDock.  If ObjectDock doesn’t launch guess what… the Task Bar comes back. It’s a beautifully simple fall back plan that makes any UI based emergency NOT exist.  My roommate can easily use Windows to play her DVD.  Notice how there are big buttons that clearly say DVD and one that has a musical note on the Disks tab.  One click and the disk type of your choice starts playing. Lets continue looking at the screen caps as I review what I like about ObjectDock…

UI Web Content Tab

UI Web Content Tab

This next easy to use tab contains my programs for streaming web content: Clicker.com (for videos), Pandora, and Enhanced SHOUTcast Player.  Do you know how I got them there? I right clicked and said ‘Add Shortcut’… and then exactly like in Windows I browsed to the path of the executable file. And if I wanted to add a nice icon I clicked ‘change image’ and navigated to a PNG I got from the internet.  Done. That is it for each icon.  Simple. Next…

UI Server Media Tab

UI Server Media Tab

Oh on the Server Media tab you can see the fancy built-in setting that shows a nice large description of an icon when you hover over it. In this case my cursor (you can’t see it) is over the green transmitting button which calls a WOL program with the correct parameters to … wake up my server to play music off of.  Those white words sure reflect that usage really well and easily… and built-in…. so convenient!

UI Misc Tab

UI Misc Tab

Ah the Miscellaneous Tab. Where else would I put the Standby button (see Power Management post to understand how cool and simple this button REALLY is) and the weather button… which is a built-in part of ObjectDock so I kept it.

UI Admin Tab

UI Admin Tab

And the last Admin Tab where there is a ObjectDock specific button to launch the Start Menu, Open my Server Folders, Launch my Home Server Admin Panel, and Search Google.  A few tools I either use infrequently or mostly for troubleshooting. Right there. In a tab. Easy to use and yet out-of-the-way. Simply amazing!

When it comes down to ObjectDock allowed me to make a custom, big icon, simple to use UI with a single app configuration panel, adequate/simple built-in skin options, AND some Windows Shortcuts. It fits so perfectly into my easy to support and easy to use re-framing its a bit ridiculous honestly. In fact, finding this app is what precipitated me to redo my entire HTPC setup and bail on Boxee because I finally found a way to make a ‘Front End’ to all my other apps that work better than the all-in-one solution of Boxee.

The Best Part?

Only a day after I finished setting the UI up my roommate was using the DVD playing feature. I had given her maybe a 30 second overview of how to work this iteration and she was already using it without asking any new questions.  Proof to me that it worked because she never once used Boxee to play DVDs. Not that she couldn’t have learned but she wasn’t using the device because she needed to ask a question about it and now with no questions/qualms she was using it … success!





Software Redux #3 – Part I – Media Player Selection

10 09 2010

Right now there are 4 main content ‘types’ that I use that I want to account for off the bat:

1) DVDs (Actual Disks)
2) CDs
3) Not Site Specific Streaming Video Options
4) Server Based Music Library

DVD’s

My main concern for this one is supported formats. I have a few PAL DVDs that I would like to not have to think about
“which player to use” when playing them.  The UI isn’t terribly important for this category but there are a few UI “niceties” I was looking for in the DVD player — such as if it gets minimized I just want folks to be able to maximize it, a way to close the application, and an obvious place to click to get to other commands.

Winner – VLC + Blissta Skin

From a content playing perspective VLC is always my preference for video playing because it does pratically…play everything.  Or at least anything I’ve tried to throw at it thus far.  The skin choice took a bit more work but I was happy to find the Blissta Skin as shown below.

VLC Blissta Skin (1. = Fullscreen Mode, 2. = Close Application, 3. = Other Commands)

VLC Blissta Skin (1. = Fullscreen Mode, 2. = Close Application, 3. = Other Commands)

The functionality in the Blissta Skin is perfect and the only remote downside is that it looks a little bit like Windows Media Player but honestly that isn’t such a big deal.

CDs

I originally was going to use VLC to play CDs to but when I started playing with the remote control setup I quickly realized it was going to make more sense to have 2 sets of controls (ie – stop on DVD returns to the main menu while CDs its a true stop playing completely).  The easiest way to do that is to use 2 different apps.  My goal at that point was a CD player that would show album art, CDDB the track titles, and be simple to use (CD only not too much music library oriented apps).  Nothing really stand out came up in my Googling so I resorted to…

Winner – Windows Media Player

Ironically WMP meets all my goals and it is already installed.  I don’t really like WMP for any sort of digital music management but for playing a CD it does great.  The album art is on the right hand side with the CDDBed tracks below it and to boot it has a nice visualization in the middle of the player.  So it won this spot for now.

Not Site Specific Streaming

Winner – Clicker.com in a web browser

Clicker.com Website

Clicker.com Website

A simple reality is that I don’t have any one show or station I watch all the time.  When it comes to streaming media for the moment it’s all about what I feel like right now and what I feel like searching. Hulu is great but not everything is on it.  Clicker.com is a great streaming video aggregate website. It tells me how many episodes are available online, how many are free, how many are paid, and where each is located. It’s entirely a click-through site so if I search there a few clicks later I’m on whatever Flash based website is hosting the video and I’ll just click full screen on their browser-based player.

What this gains in flexibility for one stop video streaming window shopping is the ability to do start/stop/play/pause remote control.  I’ll still be able to control Windows volume or the TV’s volume but the rest is lost.  For the amount I use it right now that is an acceptable trade-off. If I find myself wishing I had it I’ll install Hulu’s desktop app and go from there (or something similar when the time comes).  It also means I’m using a 3′ UI for media selection but that falls into my scope of my HTPC project.

Server Based Music

This was by far the hardest one to come up with. This is the category many of the all-in-one media center apps fall short in my experience or at least for my expectations.  Also my favorite media player fell short because I couldn’t find any skins that were even a hybrid 10′ and 3′ UI.  ALL of the ones I found I liked were good 3′ UI’s but still nothing wowed me.  Enter…

Winner – SongBird

For its ‘region’ based skinning mechanism.

SongBird Skinnable Regions (Native Skin)

SongBird Skinnable Regions (Native Skin)

SongBird allows you to apply a Feather (aka – skin) to the player but it also allows you to change the Media View Area.  This let me pick a skin that I like player placement, album art placement, media view location that I liked but also choose a better Media View that is closer to a 10′ view.

SongBird w/Murphy Feather and Ideal Media View -- GridView

SongBird w/Murphy Feather and Ideal Media View -- GridView

For the overall Feather I choose Murphy because I like the location of the Player Controls/Info better. I don’t know if you can see it but on the native skin (1st image) the currently playing info is across the top and quite tiny.  In the Murphy Feather the text is larger and even if the space isn’t as long to accommodate long file names I’d rather have it cut out and/or scroll so I can see it a bit farther away. I also placed the Album art square at the bottom to display the album art of what is currently playing.

For the Media View I had to compromise.  I want to use GridView which is what is paired with Murphy in the image above.  It stacks all the album art from each artist into a stack and presents it in a grid format.  Across the top is an alphabet to jump to that location in the artists.  However, this Media View is not compatible with the most current SongBird v. 1.8. I played with older versions and decided I would stick with the new version and use a different media view for now hoping GridView will be updated. We shall see. For the moment I settled on MediaFlow…

MediaFlow Media View in a Different Feather

MediaFlow Media View in a Different Feather

It shows the album art in  line with the center focus being large. I can click on album art in the distance and it will bring it to the front or I can click on tracks below and it will bring their album art to the center.  If I do a search for say a string ‘The Beatles” it will only list the tracks that fit that search and subsequently only the albums of that search result will be displayed above. This isn’t perfect but it is significantly better than a text only option so I’m rolling with it for now.

I’ll update this as I add more media types and their players but for now this is what I am working with.

[Update] Added Media Players….

SHOUTcast Player

This was a hard category to even find contenders worth looking at.  Ironically after loading Pandora I remembered an internet radio station I listened to in college that I enjoyed because it was super eclectic! I checked it out and sure enough it is still around. What I wanted was a lightweight ShoutCast player that I could basically put favorites into.  I don’t do a lot of searching around for new shoutcast stations so something simple that would just play streams and I could save any ones I come across I wanted to listen to regularly.  This immediately ruled out Winamp AND SongBird because they play so many other media types.  And because those and iTunes play ShoutCast streams and have built-in directories there weren’t a plethora of options in my google searches.  But I did find a few…

Winner — Enhanced ShoutCast Player

ESP Main Player

ESP Main Player

Ironically I actually passed this player up because I couldn’t get it to work the first time because the SHOUTcast website had changed and was no longer compatible…. or so I thought. ESP uses the website as the directory service and grabbing the stream location/information from the directory when you select it.  The NEW SHOUTcast website pops up a flash-based player instead of passing the pls stream file so ESP had nothing to work with and I was bummed. Well it turns out SHOUTcast’s website has “Settings” where you can choose if you want to use the flash player or “Save the pls stream location file.” Once I changed the setting ESP worked like a charm! And with that little heart I can save my favorite stations so it’s now part of my HTPC.





HTPC Redux #3 – Lessons Learned and A New Plan

10 09 2010

Introduction & Lessons Learned

My goals on building my HTPC can be summed up in 2 parts: 1) Usability and 2) Support.  In the past I tried to accomplish much of these two goals with a common process: a single media center application that does it all.  However, this approach doesn’t seem to be meeting my goals when I look back over the past few months. 

During those same few past months I’ve been learning a lot about Usability of Systems in conjunction with a users skill set.  This sounds a lot more technical than it is but it boils down to: sometimes the simplest answer is the one that is closest to what a user already knows.  This leads directly into the other thing I’ve learned: When a process is more in line with a users skill set support is considerably less.  This sounds really obvious but in IT experience there is a tendency to want the ‘technically superior’ solution and belief that users need to ‘learn the new system’ and that is that.  Much of the time this is 100% accurate but I am learning there are times when this isn’t the best approach often this involves when many users will be using a common system infrequently.  While written documentation can really help in this scenario it can be overwhelming and discarded easily. 

Another thing I’m experiencing/learning is that supporting things that I already know is much simpler than having to switch my mindset into another application/method. In one way this is really obvious but what I’ve learned is that there are different methods to accomplish this. In this case I know Windows. I know windows shortcuts, I know TweakUI, My roommate and I know Windows, and we both know Media Players.  Learning new ways to make shortcuts in a speciality one fits all app isn’t bad but it isn’t a no brainer for me.

With this experience and usage data I’m ready to try another approach to my same goals: use action specific applications with simple windows icon based ”HTPC UI”.  The standout benefit of this approach is I can select and/or ‘install’ any and all applications I decide I want to play media.  My decision on media player may be UI based (SongBird vs Winamp), content availability based (using clicker.com instead of Hulu), or content access based (streaming content vs local server content) but as programs and experiences change through time I can easily ‘integrate’ any new program or content into the setup; no need to wait for someone (or myself) to write code to load into a pre-defined framework like Boxee. Additions are as easy as installing the app and creating a shortcut to it. 

The second stand out benefit is one the support side is that  any “HTPC Specific UI” failure never results in an emergency support situation/a non-usable device state and makes it a relatively easy fix when I get to it. There are 2 main UI tweaks that could fail: the icon/shortcut based UI and the remote control setup. If the icon setup fails the standard Windows Task bar reappears and if the remote control doesn’t work the keyboard and mouse hard-corded to it works fine.  That gives any user the ability to fall back on a known skill set (windows) and continue to use the pc minus the value added HTPC control options. The easy of fixing comes from a consolidation of customizations tools that have easy to use GUIs for configuration, can back their own settings up, and be re-imported settings upon a failure.  This will give me 3 distinct places to check for the majority of settings in a failure/rebuild situation. 

How to Implement The Above Theory…

One observation that refocused my method for my goals was the realization that I wouldn’t use a true 10′ UI in some cases.  For example, a 10′ UI is considerable more limited and therefore more effort than using a standard music library application with mouse based UI. That realization allowed me to broaden my range of applications to choose from.  I still wanted 10′ start/stop/next track and DVD Menu selecting to work but choosing what music or putting in a DVD would still require me to visit the device so why worry about finding a UI that I wasn’t going to use.  So I settled on a mixed 3′ and 10′ UI scenario depending on the action.

I’m working on this in 3 major steps (from the necessary to more optional/value added steps):

1) Media Applications / UI — Install and Configure the media players to my UI liking
2) “HTPC UI” — Install and Configure a large icon Media Center UI
3) Remote Configuration/Automation – Get the value added 10′ control working and any other media center automation tasks setup.

I think I’ll document the process in 3 posts detailing each one of the above steps for the moment and 1 post summarizing what I am carrying over from the past configurations.





Egg in a Biscuit? Yes Please!

22 08 2010
Bacon, Egg, in a MUFFIN

Bacon, Egg, in a MUFFIN

I just tasted our first one of these and they are amazing!! I love biscuits and I’m pretty sure I would just eat these as biscuits even without the egg in them honestly although the egg adds a nice touch.  These came to be via Australia, a lot of nothing, and then a ferry ride! Basically my travel partner and I ran into this type of egg-in-a-biscuit-muffin at a cart in Cairns, Australia in the mall and they were fabulous.  At the time I wondered how they got the egg in muffins exactly and wished to make them at home but never really investigated that thought until I was on a ferry and saw a complimentary issue of our local edible magazine. Flipping through the pages low and behold I found a recipe for them! WHAM! So we made them finally.  And they were totally worth it!!!!

They are chives, bacon, and Parmesan cheese biscuit batter surrounding a cooked whole egg.

From the July / August 2010 Edition of an edible Communities Publication (pg 39):

Bacon and Egg Muffins
Serves 6 | Start to Finish: 1 hour

Stuffed with a half pound of crumbled bacon, chopped chives, Parmesan cheese, and an egg baked right into the center, these biscuity muffins aren’t the kind that leave you hungry an hour later.

  • Nonstick vegetable oil spray
  • 2 cups all purpose flour
  • 3/4 teaspoon salt
  • 2 teaspoons baking powder
  • 1 tablespoon sugar
  • 1/2 lb thick-cut bacon, cooked crisp and finely chopped
  • 1/4 cup chopped fresh chives
  • 1/2 cup grated Parmesan cheese
  • 1 cup whole milk
  • 7 large eggs (we used medium)
  • 5 tablespoons unsalted butter, melted (we used margarine)
  1. Preheat the oven to 375 degrees
  2. Grease 6 jumbo muffin tins (or 1 cup ramekins) with the oil spray and set aside
  3. Whisk the flour, salt, baking powder, sugar, bacon, chives, and cheese in a large bowl. Combine the milk and one egg in a small bowl, and add to the dry ingredients, along with the melted butter. Fold the ingredients together gently until no dry spots remain.
  4. Spoon about 1/4 cup batter into each of the muffin tins. Using a soft spatula spread the batter up the sides of the tins a bit, leaving a depression in the middle of the batter.  Crack an egg into the center of each cup, and divide the remaining batter between the cups, making sure you cover the yolk. (It’s easiest if you work with small dollops of batter.)
  5. Bake the muffins for 20-25 minutes, until the visible egg white is set and the muffins are just barely beginning to crack (they will not be very brown.) Cool 5 minutes, then run a small knife around the edges of each muffin to release. Serve hot.




Enegy Consumption: Correctly Scaled Power Supply

22 06 2010

One of my main goals of the NAS project was to make it as low power as possible while still functioning.  For me that meant a system that was largely in standby mode and that when running consumed as little power as possible. My first step was the use of low power hardware (motherboard, disk drive, etc) and then my latest step just this week was to move it to a case with a much more efficient power supply.  In this brief post I want to focus on the power supply overhead I saw in my project.

I had an opportunity to look at the impact on badly matched power supplys in my stepwise process of building my home server.  I first built it in a standard ATX case with a standard ATX power supply (350 W I think?) but I used low power Atom board and hard drives (1 2.5″ PATA and 1 3.5″ Green Series WD)  running Windows Home Server 1.0.  After using it in that configuration I moved it into a Chenbro ES34069 with a 120 W power supply that was more efficient at lower loads.  I took advantage of that opportunity and took some notes about energy consumption.  The following are the measurements in 4 different power states, the energy consumption of the 2 configurations, and the percent change between the two:

ATX Chenbro % Change
Off 3 W 2.5 W -16.5%
Standby 3 W 2.5 W -16.5%
Running – Load 42 W 32 W -23.8%
Running – Idle 39.5 W 28 W -29.1%

In all states the power consumption decreased.  In the off and standby states the drop is really negligible but in the load and idle states the reduction is fairly impressive considering the only thing that changed was the efficiency of the power supply in the setup.  After looking at the numbers I wondered how they compared to if I was to run a desktop in the similar setup.  So I measured the usage of my 1 year old Dell Vostro 220 system to throw into the mix.  I did the same measurements but unlike the other two setups the consumption was highly variable.  To account for that I decided to use the consumption specifications that dell provides because they were right in the range I was measuring.  Here is the beautiful graph I made…

Graphical Representation of Measured Energy Consumption

Graphical Representation of Measured Energy Consumption

Eventually I’d like to take this data and expand it to energy usage in 1 year but for now here are the immediate measurements and comparisons.





Software Redux: Boxee

21 06 2010

Yes I’m using Boxee now.  The reason? I got ‘new’ hardware.  I inherited a used machine with a working onboard video card that was enough for Boxee to run.  So I installed Boxee and overall really like it.  It’s nice to be able to watch The Daily Show on Saturday morning when I don’t even have cable.  But I do have one major qualm with Boxee: the inability for it to sleep. My only annoyance with Boxee is that if I have my media sources set to a network share and set to scan daily… if that network share isn’t available it REMOVES all the media that previous was in there.  Not a big deal if the network share is always on but mine isn’t.  My eventual build has a WOL packet sent to my server every time windows logins in to prevent this but it was annoying at first.

Power Saving Boxee Box: Is it really this hard?

Goal: To have a media center box that goes to sleep while it’s not in use and comes back on quickly when needed.

Boxee doesn’t make that easy, or at least not that I can find.

Problems with Boxee and Power Savings:

1) It overrides Window’s Power Settings so you can’t just set the box to go to sleep after a period of Idle time.  This process worked fine for the old setup but not for Boxee.

2) It doesn’t include anyway to do this within Boxee. It does have a sleep mode but that only goes for the monitor it is attached to.

3) Boxee does NOT come out of sleep well.  In face it basically freezes and after a Ctrl+Alt+Del kill it will work again.

Solution:

1) Don’t use sleep; use shutdown instead.  I set the computer to auto login (with Tweak UI), wake the server, and auto start Boxee with each boot so its easy. It takes a little longer than sleep but not terribly long.

2) AMP WinOFF — I tried a few other shutdown apps to monitor on network traffic, etc but none of them seemed to really fit my needs.  I had to change directions and this one came up amazing. I set it to immediately start a 3 hour countdown to shutdown when the computer boots. I hide the window and when that 3 hours are up it pops a window with 2 options:

a) Restart Timer – It will start another 3 hour countdown from that point and repeat the cycle
b) Cancel Shutdown – This stops the timer and the computer will be on until you turn it off

If neither of those options are chosen it will shutdown.

For an apartment of 2 people it means AT MOST it will be on for 6 hours a day IF someone turns it on walks away and someone else is using it mid 3 hour point.  The likelihood of that happening with its usage is very small in my living situation. Most days it doesn’t get turned on and when it does 95% of the time it will turn itself off in 3 hours. Not a perfect energy-saving plan but better than the alternative of leaving it on all the time accidentally.





Case Migration – Chenbro ES34069

21 06 2010

The day was finally here! I decided that due to reworking my living space it was worth it to officially buy the Chenbro ES34169 case.

Chenbro ES34069 Dreamy Case

Chenbro ES34069 Dreamy Case

That’s a lovely stock photo and perhaps I’ll get a photo of my build up there, but the key to that photo is that it is 5″x10″x10″. TINY for 4 full hot swappable drives and 1 2.5″ PATA space.  I had already speced out my parts I was using in a hope to one day upgrade to the Chenbro case I sought after so I was theoretically ready to go to just move my parts.

And it worked! On the first boot of the new case install everything came up and worked correctly. It was awesome! Many sites by this point have gone over the Chenbro case but here are a few starter things for folks who might have just stumbled across this:

1) The case is tight! To pack everything in there isn’t a lot of space for cables. For example my IDE cable for the 2.5″ PATA OS drive pretty much takes up an entire corner to wrap it around and into.

2) The case isn’t difficult to get apart but it isn’t intuitive either: read the directions.  Getting the bezel off is the hardest part and I found once I could hing it 15 degrees (as the pdf directions tell me to do) I could actually get to the tabs from the front side of the bezel with a small flat head screw driver and push them down to release.  I got one undone by the published directions (I had to google for them under “Chenbro ES34069 manual”) and then the second one I could get to release by the screwdriver method.  I’m not sure if you can do both with the screwdriver from the start but I don’t see why not.  Give it a shot.

3) Sadly the case has more fancy lights than my motherboard has headers. This isn’t a big deal but I get the standard 2 lights on the front: Power and HDD Activity. No separate lights for each NIC or a fault light.  It’s really okay as I’m sharing a bedroom with it :)

Over the next few days I’m going to try to put together a case study for the energy savings of my setup.








Follow

Get every new post delivered to your Inbox.