Inserter Lab
I built this facility to test TV program listings data insertion in the MPEG transport stream on broadcast and cable channels. It contained 18 ATSC, 7 NTSC, and 8 SD and 3 HD QAM modulators in up to seven alpha and beta headends distributed to labs around the building. It was always a work in progress so keeping diagrams up to date was a challenge.
The equipment drew up to 8kW power (25k BTU) from UPSs located in a nearby, much larger server room where their own heat wouldn't add to the small lab's load. The lab had only one 36k HVAC unit and no windows, so my temperature monitoring system sent alerts a few times during the years we operated.
Broadband Cable Line Impairments
Some of the digital channels on a cable feed were dropping out intermittently, often during bad weather. The tech brought a BERT (bit error rate test) monitor and confirmed that there was a problem. Now what to do? Knowing there were bit errors told him nothing about how to fix it. When I showed a supervisor these two views of the spectrum, he sent a lineman down the street.
The photos, from 2009, show a mix of 80 NTSC analog and 37 QAM digital channels. (In 2014 it's probably all QAM.) The measurement is at a tap coming from an RG11 feeder line.
The left picture shows a very good signal. The MSO provides a higher level of signal at higher frequencies to match the expected loss rate in customer drop cables. The QAM signals are about 10 dB lower level than NTSC because they use the channel energy differently.
The right picture shows a mess. The overall signal is lower, and there's a big notch in the spectrum where the digital carriers start. There's hardly any signal for the receivers to tune. The lineman found a bad tap on a pole some distance up the street.
Moral of the story: everything is analog. A digital signal is represented by analog physical changes in some medium, whether electrical currents or optical waves. The signal must get through with enough power to overcome the medium's noise and trigger the detector. After that minimum accomplishment, we can use error correction and all the other methods of our digital technology to recover content.
Small UPS's and Continuous Uptime
We put sensitive loads on uninterruptible power supplies (UPS). Sometimes the UPS itself has problems. Bigger units may have internal bypass switches to pass the utility, but the smaller ones don't and will simply shut down if there's a problem. They're usually designed for use with office PCs and their sole focus is to detect power loss and tell the PC to save files and shut down cleanly, even if they have enough battery capacity to ride through the outage. One rack unit I encountered, seemingly intended for server support, actually shut down on power fail several weeks after I'd configured it with a laptop over USB and then removed the laptop. Why? Because on power fail, it tried to talk to the PC but couldn't reach it, assumed the PC was down and didn't need it, and shut itself down (according to customer service). So why didn't it complain about the missing PC earlier, while power was present, I asked? No answer, but the solution was to never connect USB after restart (which did limit the configuration options).
Another problem I encountered was an older UPS that shut down after the battery drained. It didn't wake up when the utility power came back and had to be turned on manually. I installed an external bypass switch to return to utility power if the UPS fails. (After all, the utility may be restored before you can get to the site.) A device with dual supplies can help protect against the UPS failing hard enough to blow its breaker. Where I have dual supplies but can only feed from one UPS, I connect the second supply to utility through a power line conditioner.
Data Logger
I wrote a Perl program for Windows written for the Velleman K8047 data logger. The program demonstrates use of the Win32::API Perl module to access DLL functions. I've written most of my Perl code under Unix but the DLL is Velleman's only published interface for this USB device, so PC is its only platform. The K8047 requires a dedicated USB-connected PC. I will probably use the Raspberry Pi and Arduino for future data collection.
Data Logger program
Get interlaced broadcast video from computer
An HDMI splitter with EDID selection switches is an inexpensive tool to get the output you need.
When you need to feed an HD-SDI broadcast system with 1080i content from a computer, such as for web video, live interviews, teleprompter, etc, the first problem is getting SDI out. The PC has to have a digital output; this particular method doesn't work with VGA analog connections. It has been tested with Windows 7 and Windows 10 as well as MacOS 10.
For digital video links DVI, DisplayPort, or MiniDisplayPort, use an adapter cable to HDMI, and connect that to an HDMI-SDI converter such as the Monoprice 11749.
However, the SDI output from this combination is likely to be 1080p because the PC and converter talk to each other over the link, and negotiate the best connection they can agree to, which is most commonly 1080p. That's great for a TV, but a switcher or encoder needs something specific. There are few practical ways to convince a computer to deliver what it considers a lower quality image.
In PCs and TVs, the content comes from a "source", and goes to a "sink" (the display). The display includes a ROM containing Extended Display Identification Data (EDID). The source sends power to the ROM so it can be read even when the display is not powered up. (That power can also run an in-line HDMI extender, which is why those devices are unidirectional even when they look like couplers.) This EDID data tells the source what device is connected and what its display capabilities are.
Although the resolution selection in a Windows PC can be quite flexible, sometimes including both "59" and "60" timings (59 representing a truncated 59.97), interlaced output is just not so easy to set and keep through a power cycle, or even a disconnect/reconnect cycle. A PC prefers to read the display's EDID again, and give it that specified output as the most reliable way to get an image working.
I explored modifying the EDID system on the PC so it uses a custom file instead of the EDID it gets from the display, but found that too complicated. (If done wrong it could make the PC fail to display at all.) PCIe SDI cards exist for the PC platform but drivers are typically specific to a software application such as a video editor; I haven’t found a generic graphics card that will output the desktop over SDI. A reliable solution is the Matrox Convert-DVI-Plus, but that is more expensive than the PC it's converting.
Instead, I tell the PC source what's needed by adding an EDID simulator between its output and the SDI converter. This is a device that announces itself as a display but with only the capabilities that you select. With the EDID set to announce 1080i as the display's best capability, the PC provides that signal. There are a number of specialty in-line EDID simulator products; they're great for A/V system integrators but they tend to be about twice as expensive as the solution I've chosen, which also adds a local monitor output: an HDMI distribution amplifier with EDID selection switches. I've used the KanexPro SP-HD1x44K for 1080i; the Monoprice 14527 also supports 720p.