Windows Updates, To Go!

When I leave for my trip to Haiti in a few weeks, one of the things I’ll be doing is bringing multiple computers up to current patches. There are a few ways to do that:

One is to bring some sort of removable media (optical or flash stick) down and apply them manually. The problem with this is that once I leave, the machines stay in their current state until the next geek can come down and apply the next batch of patches. Downloading patches for multiple machines over developing-world internet connections can easily run into daily bandwidth caps, and Windows Update doesn’t cache very well through a normal proxy server such as Squid.

Another is to use Windows Server Update Services (WSUS). I initially considered setting up a Windows Server VM on my laptop, syncing up the updates stateside and temporarily configuring the machines down there to pull from my impromptu update server. Then I got the idea that a lightweight appliance-type server that lived down there permanently would be a useful solution that would download the patches once and distribute them over the LAN. Since we’re planning on using Microsoft Security Essentials for anti-malware, this solves the problem of definition updates. Daily patch sync would happen in the wee hours of the morning when the oversubscribed connections in Haiti are generally pretty clear.

I rummaged around the office and found a Dell FX160 thin client that we got as a demo unit from Dell (I have a number of blog posts on the topic of this device). It has been gathering dust for some time as it’s hobbled with a 1GB SATA flash disk and limited RAM. After checking on hardware requirements for both Windows Server and WSUS, I went out and picked up a 120GB SSD and a pair of 2GB RAM sticks and put them in. The choice of an SSD wasn’t so much for performance reasons (although it can’t hurt), but for the machine to be entirely solid-state. It’s going to live in a fairly harsh environment where mechanical failures are likely.

Once I got the hardware put together, I hooked up a USB optical drive and loaded Windows Server 2003 R2, and then installed WSUS and performed an update sync. The whole process went mostly smoothly.

Here are a few of the gotchas in installing Windows 2003 on an FX160 thin client, a job it was NEVER meant to do:

  • SATA controller needs to be in ATA mode. If it’s in AHCI mode, Windows 2003 will not recognize the disk.
  • When using a storage device that the BIOS recognizes as a hard drive, it expects to see a fan plugged into the motherboard. This fan is part of the hard drive bracket kit (Dell P/N H224H). When a fan is not detected, each boot will require a manual intervention during POST to press F1.
  • Stock Windows 2003 media does not include video drivers or network drivers for the FX160 (Broadcom NetXTreme 57XX).
  • Dell’s support site doesn’t have the most recent drivers for the Broadcom.
  • It’s virtually impossible to find a 6″ SATA extension connector, either for data, power, or both. I was finally able to find a power extension, but used a standard SATA cable to connect to the other SATA port on the motherboard.

The SSD I used for this is an OCZ Agility 3, 120GB. Disk performance on large writes is almost 100MB/sec, which is about twice as fast as my 7200RPM spindle drive in my laptop. Windows performs very well with 4GB, a SSD, and a 1.6GHz Atom processor.

The next step was to configure the clients to update from the server for testing. I still have one of the Asus netbooks that we deployed to Haiti in a previous trip. This is where I discovered that Windows Home and Windows Starter don’t include the policy editor (gpedit.msc) that I’m used to finding on Pro/Enterprise/Ultimate versions of windows. This is understandable, your average home user doesn’t (and shouldn’t) normally jack with system policy. Fortunately, all the policy editor does is manipulate registry keys, and the process of configuring Windows Update via the registry is well documented. This actually simplifies things, since all I have to do is create a .reg file that I can import on all the target machines.

Next post: Installing Squid. Not content to use this box for mere update caching, we’re gonna have it be our web proxy as well.

Sony VISCA RS-422 Control

Update – January 2014: Wow, 3 years later this is still one of the most popular posts on this blog! I’ve had some questions about using this with the EVI-HD1, which has only RS-232 DIN ports. Theoretically, it should work, but you might need to alter some pinouts in the breakout box, and I would highly recommend using shielded/grounded cable, as RS-232 is an unbalanced signal. A reader is going to give it a try, and if it’s successful, I’ll update the post with some pictures.

Now, back to our regularly scheduled blog post!


We recently acquired a few more of Sony’s excellent EVI-D70 cameras for use in our chapel for streaming weddings, funerals, and other events in our smaller worship space.

When we remodeled the space a few years back, it was originally designed with these cameras in mind.  The original intent was to provide some additional angles for videographers to use, but the idea never really took off. Due to lack of use, the cameras originally installed were re-purposed for Resurrection Online in the main sanctuary. Things have come full circle now, and the ability to stream services and events from this space is being requested. As a result, we acquired some more cameras, and are in the process of updating the camera system in that room.

The original design used an AMX touchscreen/joystick controller and a custom integration over RS-232, with each camera homerun to the control rack. There were numerous difficulties with the cameras randomly freezing up and not responding to controls, requiring someone to get on a ladder and power-cycle the unit.

As part of the updated system, we’ve ditched the AMX controller and are using Sony’s RM-BR300 control unit which is designed for this particular camera. We also have user familiarity, since we already have one of these controllers in our main sanctuary for the BRC-H700 remote camera mounted on the catwalks (aka, the “SkyCam”). The controller can do Sony’s VISCA protocol over RS-232 (via a Mini-DIN) or RS-422 (via a Phoenix connector).

This is where it got sticky. We have an 8-conductor homerun cable from each camera position, but the Sony controller is designed to daisy-chain the VISCA ports. Each camera has two RS-232 Mini-DIN ports (one in, one out). Fortunately, both RS-422 and RS-232 in this application only require four wires, so we can loop out and back on the same cable.

Due to the annoyance factor of having to re-terminate Mini-DIN connectors, I opted for the RS-422 port which uses a Phoenix screw terminal (Part # 1840434 in case you need to order one – Sony wants an obscene amount of money for them, they’re dramatically cheaper at an electronics supplier like Mouser). RS-422 also has the advantage of much longer signal path due to its balanced signal. Since we’re also adding a new location, I wanted to be able to wire it up with standard Category 6 twisted-pair cabling. This cable also has eight conductors, making it ideal for the task. In terms of flexibility, RJ-45 is king in the twisted-pair world, so I had do design a means of daisy-chaining my VISCA ports via ordinary patch cords.

At first, I was a little baffled by the wiring of VISCA, since the RM-BR300 connector pinout is exactly backwards from that of the one on the cameras, and the documentation provided is a little confusing. Fortunately, the Sony POSC was quick to help and they e-mailed me a wiring diagram for this specific application (and were kind enough to allow me to post it. I translated that into two main components, a breakout box and a standard cable, that would work on either the controller or the cameras.

To make the cable, I simply took a patch cord off the shelf, lopped one end off, and terminated it on the Phoenix connector:

The wiring is as follows:

Now, you’ll notice my wiring diagram shows the orange pair on the first two, and the picture shows green. This is because I found out (after much frustration of tracing signals) that the patch cord I grabbed happened to be wired for 568A rather than the more common 568B. Simply swap orange and green if this is the case.

Once I got the cables sorted out, I then replicated Sony’s wiring diagram with a handful of data jacks. The connections go like this:

I used bits I had on the shelf, but I would recommend using a different jack color for the control input so you don’t get it confused. Once I got it wired up, this is what I had (I colored the control jack black with a Sharpie):

Even if this install only has three cameras, I wired it up for five, to fill a six-way biscuit box that I had on the shelf (these are Lucent/Avaya components):

.. and put the lid on it with some labels:

As for the hookup, set the DIP switches on the bottom of the controller and the cameras to use RS-422 and either 9600 or 38400 bps, and hook them up. Note that they must be in sequence, or the whole chain will be broken if you skip a slot. Plug a camera into #1, it will be #1 on the controller after they self-enumerate on startup, in order of closest to farthest on the chain. Connecting a camera will cause the controller to re-initialize.

Action Shot:

I used a biscuit box, but you could also use a modular patch panel to do the same thing. I hope to use a second category 6 run with an S-Video termination on it (2 pairs) and power (other 2 pairs) so that the whole system can run off a standard 2-cable pull.

Review: EcoSmart A19 LED bulb (40W Equivalent)

EcoSmart A19 LED BulbI’ve posted before about LED lighting, and consider myself an early adopter.

Recently, Home Depot significantly expanded their selection of LED bulbs beyond the Philips brand that I’ve been using for a few years, mostly in my kitchen track lights (GU10 formfactor). I’ve been quite happy with those, and I only have two more halogens left in the track that seem to be hanging on, knowing their fate should they burn out.

The EcoSmart line appears to be a Home Depot house brand, and as such is only available there. The brand encompasses both CFL and LED lighting technologies. The bulbs are less expensive than the Philips bulbs.

I picked up eight of the 40W-equivalent A19-style bulbs. These have a form factor that matches that of a traditional incandescent bulb, so they’ll fit anywhere a regular bulb will fit, unlike the bulbs I blogged about previously. I bought these to use in our master bath above the vanity, and the  master bedroom ceiling fan, where solid-state bulbs are a much better option due to the vibrations of the fan which drastically shorten the life of filament bulbs. Because of this application, these bulbs are also dimabble.

The specs on the bulb are as follows:

While this bulb is listed as a 40W equivalent, because of the directionality of the bulb, it’s roughly equivalent to the light you’d get from a 75W bulb in directional applications. I tried it in my regular bathroom fixture, which assumes a standard bulb emitting light in all directions, and it’s not up to the task. Side-by-side comparisons in a reading lamp, on the other hand, give a result that looks almost identical to the 75W incandescent bulb that was in it previously.

In the ceiling fan application (four bulbs), it lights up the large master bedroom quite nicely and dimming is not only smooth and flicker-free, but quiet. The overall consumption of  35W is a dramatic improvement over the set of 75W halogens that used to be in there.

This is the packaging for eight bulbs. The tiles are 12" across.

My only real gripe about these bulbs is the logical disconnect between the “eco-smart” name and the ridiculous amount of packaging they come in. The bulb itself is in a plastic clamshell that is not coded for recylcing (but is likely PET), which is then encased in a fairly convoluted cardboard box big enough for a PAR38. These then come four each in a corrugated cardboard tray for retail display. I haven’t been able to confirm it, but the boxes look like they may use the same box die for all their bulbs, and swap out the plastic shell for the appropriate one. At least it’s not your typical wound-inducing plastic retail shell. If I needed to return these to the store, it looks simple enough to repackage them such that they can be resold.

Home Depot also offers EcoSmart LED bulbs in PAR30, PAR38, PAR20, G25, MR16, and E26 formats, as well as a whole host of holiday lighting options.

Time will tell how well these hold up. Next up are likely going to be the G25 bulbs in the dining room fixture.

A brief history of Palm

With HP’s announcement today that they arepalmpilot1000 purchasing Palm, the loop is complete:

1992: Palm Computing Founded

1995: Palm Computing acquired by US Robotics

1997: US Robotics acquired by 3Com

1998: Palm Computing founders leave to create Handspring

2000: 3Com spins off Palm, Inc.

2002: Palm spins off PalmOS to PalmSource

2003: Palm merges with HandSpring to create PalmOne

2005: PalmOne acquires full rights to Palm trademark and renames back to Palm; PalmSource acquired by ACCESS

2006: Palm buys PalmOS source back  from ACCESS.

2009: 3Com acquired by HP

2010: Palm acquired by HP

The whole thing makes my head dizzy.

Why consumer IT support sucks


Photo: bdtyre

Working in an IT shop, sometimes you have the luxury of forgetting just how bad consumer-grade hardware support has gotten. I’ve been absolutely spoiled by our Dell team, so the past few weeks have been a serious reality check.

About a year and a half ago, I bought a Toshiba laptop for my wife after her desktop computer’s power supply had unleashed its magic smoke. She was needing an upgrade, and we opted for the laptop since she was going to be starting school. After shopping arond, we found a good deal at Costco which included a color laser printer. Added bonus of buying at Costco is that on computers (and TVs) they extend the standard 1-year manufacturer warranty out to two years.

Somewhere around the middle of the fall semester, Andrea noticed the power connector inside the laptop was getting loose. Having encountered this sort of problem before (and I understand it’s actually quite common on consumer laptops), I suspected the plastic shell of the connector had come loose. They typically have three or four plastic pegs that secure the body to the circuit board, taking the mechanical strain off the soldered electrical leads. It’s not uncommon after repeated plug/unplug cycles for one or more of these pegs to break off, causing the connector to come loose. The long-term risk is that metal fatique will then break the electrical connectors. If you’re lucky, it won’t short out in the process. Business-grade laptops usually use much better connectors and methods of securing them. It’s just one of those corners you have to cut to sell $500 laptops to the masses.

Along the way, her touchpad started acting flaky as well, so we figured we’d call Costco and get this fixed while we still had some time left in the warranty. After trying to explain to someone in India for 45 minutes that the problem was not in the external power adapter, I got tired of him sending me on hold to talk to his supervisor, and asked him to transfer me. I spoke with Wade, who was quite helpful, and got the dispatch sent out to their service provider, an outfit in the Orlando area called “Encompass Service Solutions”. They sent me an empty box with packing material via 2-day air. That was two weeks ago.

Since I was sending the computer offsite to some company I’d never heard of, there was not only a high likelihood that they were gonna wipe the system and do a factory reload (crapware and all), there was absolutely no way I was trusting them with the security of our data (even with backups, I’d rather they not have access to my banking data, thankyouverymuch). So I picked up a blank hard drive at Micro Center and shipped it off with the blank.

A week later, it comes back, with the technician notes that the system was cleaned and the CPU “repacked”, and the OS reloaded. No mention of either of the original problems on the service ticket. Sure enough, the power connector is in even worse shape than it was when we sent it off. I call Costco and gripe. They’re not amused. A little later, I flip it over to put our hard drive back in and discover that someone went crazy with stickers. There are 4 new stickers with barcodes, and “Inspected by” sticker, and half a dozen “Warranty Void if broken or removed” stickers over the chassis screws, as well as those to the hard drive and memory bays. I’m a geek, so I’m genetically predisposed to ignore such stickers, and I carefully removed the ones on the drive and memory bays, and put our hard drive back in.

Then things got interesting. I power the machine on, and the display remains dark. No backlight, no image, nothing. I check das blinkenlights, and they’re behaving like a normal boot process. After some fumbling and troubleshooting, I hang an external monitor from it and fire it up again. That part works. It seems that the people in QA at Encompass were sleeping that day, because I’d imagine that a non-functional display normally would cause QA to kick it back to the tech who forgot to plug in the ribbin cable feeding the display. Apparently at Encompass, this is not the case.

So now we have a laptop that is effectively a compact desktop. A couple calls back and forth to Costco, and Encompass wants me to send it back to them for repair. Only here’s the problem, guys, I don’t trust you to not break it worse this time, and Andrea needs her laptop this week, that’s why we sent it to you when we did. Even better, you can’t e-mail me a UPS label for me to use the existing box, you insist on sending me another empty box via UPS. Not only is that insanely wasteful of diesel, jet fuel, and cardboard, and it adds 3 days to the process. Andrea can’t be without the laptop any longer than she already has. She has interviews this week and school starts up next week. I don’t care how fast you expedite it, you’ve proven already that you half-ass the job when it’s a rush. If I wanted that kind of shoddy work done on my laptop, I would have handed it off the the Geek Squad at a local Best Buy.

Wade, the guy at Costco, is trying to come up with alternatives. At this point, acceptable outcomes are that we get an onsite tech to do a motherboard replacement, find me a local depot in the Kansas City area, or you give us at least partial credit toward a replacement system at the warehouse.

When you buy a laptop, spring for the onsite support. If anything happens, it will save your sanity. Next time, I’m buying a Dell.

I’d love to hear your depot repair horror stories.

MIDI Surfaces: Behringer BCF2000

I ran up to Musician’s Friend this afternoon with C so that my wife could have some peace and quiet to work on seminary and candidacy stuff, and picked up a Behringer BCF2000. It’s so very handy to have the MF outlet locally (their distribution warehouse is up near Liberty, MO), and it’s unfortunate that they’re closing the outlet center at the end of the year.


The BCF2000 is a substantial unit with some heft. The box contains the unit, a 6′ USB cable, 6′ power cord (no lumps or wall warts!) and a documentation pack containing a set of manuals in a number of languages, a catalog, and a sticker. The controller is roughly the size and weight of one of their 8-channel baby mixers. Unit is reasonably well  built and heavy enough that it’s not going to unintentionally wander off the desk

Using it

The documentation is pretty straightforward, considering the plethora of operating modes this device provides for routing MIDI signals. While this unit isn’t nearly as easy to program as the Korg Nano (which uses a GUI that writes programming changes to the unit), it doesn’Behringer BCF2000t rely on any external software to do its thing. The 8 rotary encoders at the top are all you need, and once you get used to it, it’s pretty simple. ETA: Behringer does provide a Java app that lets you do visal programming from the desktop. Very cool.

The B-Control also has the technical yumminess of motorized faders and presets, which make scene changes easy.

Speaking of scenes, one of the big downsides to the unit is that 8 faders is all you get. The only controls that have scene capability are the rotary encoders at the top, which can have up to four scenes (helpful for EQ settings), but no such luck on the faders. The Korg Nano would do multiple fader scenes quite easily. On the other hand, you can gang a bunch of these together through standard MIDI connections.

ETA: I stand corrected. The presets on the BCF are not just for fader positions, but for programming as well. There are several of these.

Random cool tool: MIDI Sniffer – allows you to see what’s coming across the wire.

Tomorrow, we’ll see how well it plays with the VT5 machine.

MIDI Surfaces: Korg NanoKONTROL

I got the OK from Clif to get the VT5 MIDI interface from Dhomas, and a control surface. The first one to try, simply by virtue of its ready availability at the local Guitar Center was the Korg NanoKONTROL.

This is a USB MIDI device in a plastic shell that’s meant to look suspiciously like one of its parents was a white MacBook. The device offers 9 sets of a fader, a knob, and two lighted buttons, as well as a 6-button set of transport controls and a scene selection button that lets you cycle through 4 different scene presets. It definitely doesn’t havenanoKONTROL_top the build quality of the Mac. For sixty bucks, you can’t expect much, though. Faders, knobs and buttons feel cheap. No software is included with the device, with Korg directing customers to their website to download a driver (optional, it works with the standard Windows USB MIDI driver, but the Korg driver offers some additional functionality. For the people who actually use MIDI for, you know, MUSIC, you’ll be happy to know that this device has two siblings, one with a set of pads, and the other is a 2-octave keyboard – all three are available in black, if you don’t like the Apple Fanboy shade of white.

Programming the unit requires Korg’s software, the Korg Kontrol Editor. It presents a UI that is more than a little reminiscent of a mac (this is aimed at music people, after all) that lets you set the parameters for each control on the unit. As of this post, the software is in version 1.0, and is only able to send CC and MMC commands, and there’s no option for any PC commands. Given that several of the items I want to control on the VT5 require PC commands to change, I find this to be a major shortcoming. Buttons can be set to toggle on/off or be momentary, with attack/decay controls along with what values are represented by the on and off states of the buttons. Similarly, the fader settings allow you to define values for top and bottom, allowing you to reverse the operation of the faders.

On the VT5 side, I downloaded the demo version of MIDI-VT, which allows only the control of the output faders on the VT5’s software audio mixer, but I was able to configure the NanoKontrol unit with very little difficulty, and controls on-screen are very responsive to the fader inputs on the external device. It’s considerably easier than using the mouse. Unfortunately, MIDI-VT doesn’t currently support MMC commands for DDR transport operation.

I contacted Korg about the PC issue, and they responded “As a product that is only designed to be a MIDI controller, it wouldn’t be used nor is it intended for system control that would ordinarily be handled via mouse and keyboard”. Sorry, Korg, that’s not gonna cut it. I want to use this precisely to AVOID using mouse/keyboard controls. Guitar Center, you can have it back.

Overall, this is a great inexpensive solution for an audio mixer control surface in VT5, but Korg’s lack of support for PC commands on the unit severely limits its usefulness for anything beyond the audio mixer.

MIDI Control Surfaces

This post is mostly for my own reference, but putting it out there for anyone else looking for MIDI control surfaces that can be used with VT5 by way of dhomas’ MIDI-VT software. Much discussion on the NewTek forums here. Primary objective is physical control (as opposed to on-screen) of the VT5’s internal audio mixer, with secondary objectives being able to easily control some remote camera parameters like iris/gain/shutter/focus as well as DDR and capture transport controls.

Here’s what I was able to round up so far — I’m starting to understand why keyboard people are gadget freaks (and often broke):

PreSonus FaderPort, $130. Looks like this would be a great controller for both DDR and Capture modules. Despite not having any MIDI ports, this is in fact a MIDI device, which presents itself to your computer as an independent USB MIDI controller. This could potentially pose a problem if you start getting a lot of these. Price is very attractive.

Novation Zero SL MkII, $400-$500. This one just looks cool. Lots of great feedback features, but I’m not sure the plugin can take advantage of them. Good blend of buttons, knobs, and faders.

Akai APC40, $400-$600. Holy buttons! I want one of these just to program the blinkenbuttons. I’m sure I could find a use for all those buttons.Did I mention buttons?

Korg NanoKontrol, $60. Not a lot of buttons on these, but they’re dirt cheap and you can have a bunch of them for different stuff.

Behringer BCF2000, $150. This offers huge bang for the buck, and the VT5 people love it. It also has a cousin with lots of knobs, the BCR2000. Offers USB MIDI controller as well as traditional MIDI ports.

Evolution UC-33, $150-$200. Can’t seem to get much manufacturer information on this one, wondering if it’s discontinued. Looks similar to the Behringer.

Livid Ohm64, $600. This is just a thing of beauty. Buttons and faders and blue blinkies, oh my!

Any others that you MIDI freaks out there have used and like?

More on the FX160

It’s been a while since I did any serious banging on our FX160 seed unit from Dell – mostly because I’ve had a lot of other things on my plate with considerably higher priority.

I’ve discovered that the FX160 with 1GB NVRAM is functionally useless if you want to do anything with it other than the standard out-of-the-box configuration (RDP, XenDesktop). Most applications these days are written for full XP and are consequently bloated bigger than a whale that’s been left on the beach too long. Hardware vendors seem to be particularly bad about this. I’m talking about YOU, nVidia and Creative. There is no reason a device driver for a USB Audio device should complain about disk space with 200MB free. Would a little code optimization kill you people?

My current experiment is to turn this device into a simple videoconferencing terminal, using a Sony EVI-D70 camera, a USB capture device from ADS, and a Creative QuickCall USB Speakerphone. Initial tests seem to be promising, although installing the Creative drivers is proving to be complicated due to its insatiable apetite for disk space, which seems to have been bypassed by manually extracting to the stick much like I had to do with .NET 3.5.