Monday, October 11, 2010

Setting up a little SMTP server to interface to another

I'd say, "Look, a non-radio post!", but this post is an elaboration of a reply I made to someone on Pubtech, so... :)

By way of background, someone on Pubtech was asking a Nautel rep when their VS Series transmitters would support SMTP servers that require login. I replied that until such a time, you could set up your own little SMTP server and use the server that requires login as a smarthost. Here's how you do it:

Step 1: get yourself a Linux box of some sort. Since this is (presumably) going to live at a transmitter site, and it would sure be nice if you could just "set it and forget it", as it were, I would recommend something like EMAC's Server-in-a-Box (SiB). With the SiB, It's not clear from their website whether or not it an SMTP server included in the Linux distribution it ships with, so contact the manufacturer to make sure. If it doesn't, I'm certain they can install the requisite software.

Step 2: configure the SiB's SMTP server to log in to your other SMTP server. There are a variety of SMTP server software packages out there, and I can't cover them all. I'm going to use Postfix for this example; if you need another example, comment on this post and I'll see what I can do.

This example is based heavily on the example posted here. Whenever you see mail.myserver.com, you should replace it with the host name of the mail server that requires login. Replace myusername with the username to log in to the SMTP server, and myPassword with the password associated with that username.

Create a text file on your server called "/etc/postfix/password". This file should look like so:


# server username:password
mail.myisp.com myusername:myPassword


Now, execute the following commands (note the '#' is used to indicate a command prompt):


# chown root:root /etc/postfix/password
# chmod 0600 /etc/postfix/password
# postmap hash:/etc/postfix/password


Then append the following lines to /etc/postfix/main.cf:


relayhost = mail.myserver.com
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/password
smtp_sasl_security_options =


Finally, restart postfix:


# /etc/init.d/postfix reload


Give the SiB a static IP address (how this is done is outside the scope of this post), connect it to the network, rack it up, and give the Nautel the SiB's IP address for a mail server.

EDIT: The original poster on Pubtech replied that he couldn't have an open SMTP relay floating around. I'm not sure that I'd have my transmitter with a publicly (or semi-publicly) accessible IP, but then again, I'm not sure that I wouldn't. There are benefits and drawbacks to each, but that's a topic for another post. In his situation, I would lock down Postfix to only relay from the Nautel's IP. To do this, add these line to /etc/postfix/main.cf:


mynetworks = 127.0.0.0/8 192.168.1.23
smtpd_client_restrictions = permit_mynetworks, reject


Substitute 192.168.1.23 with the IP of the Nautel, of course. Reload Postfix again when you've added those lines.


And then

Saturday, October 9, 2010

Trail of Tears Broadcast Dry Run

Through KCUR, I have been retained to engineer KKFI's broadcast of the Trail of Tears discussion panel at the United Minority Media Association's Midwest/Southeast Regional Conference. As the barnraising was the first time I had engineered any live broadcast, I thought it prudent to do a dry run today. Especially since I was using unfamiliar equipment (a TieLine Commander G1).

Earlier in the week, I collected the equipment from KCUR. Today was the first chance I had to actually set up the equipment. I thought I might need a second pair of hands for this, so I asked my friend Aubry to help. To begin with, we went over to KKFI to hook up the studio unit (the TieLine equipment is a pair of codecs, a studio unit and a field unit) in the studio. This was very straightforward - all we had to do was hook up an analog phone line and run it into the board.

We then went over to the Bruce R. Watkins Cultural Center to set up there. This was a bit more complicated as we weren't exactly sure where the event was going to be held. So we set up in the Great Hall, figuring that to be the most likely place (we later found out that we should have set up in their "broadcast room" at the Cultural Center. ah well.) We connected up the loaner mics from KKFI and I got a feel for how loud they were. Then we found an analog phone line and tried dialing in to the studio unit at KKFI. Unfortunately, while the field unit said we were connected, the studio unit said we weren't, and there was no sound on the board at KKFI. So it was pretty clear that we weren't connected. I went back to KKFI to try and diagnose things there (leaving Aubry to watch the equipment) but had no luck.

To test KKFI's lines, I dialed the TieLine test number with the studio unit. I connected successfully at 21.6 kbps and got some cheery music. I then took the studio unit back over to the Cultural Center and was able to connect there at a slightly faster speed. So KKFI's lines and the Cultural Center's lines both appeared to be good, and yet I wasn't able to get the two units to connect. I called the studio unit from my cell phone, and the unit picked up, so it was certainly answering calls. So I'm a little perplexed, but I have a plan for further testing. The next step is to take both units to KKFI and see if the one unit will connect to the other there (KKFI has multiple analog telephone lines).

Friday, October 8, 2010

Watching the KCUR TX

Day 3 of the barnraising will come in due course, but I want to talk about something more recent first.

Recently, Robin took a well-deserved vacation - in fact, he went on vacation at the same time as I was at the barn raising, though he was gone for longer. At any rate, while he was gone (and I was in town) I got to take care of the transmitter. This involved putting my number as the first one in the transmitter remote's call list, getting the password to the remote control, and a set of keys. I also received a spreadsheet of what monitors were connected to the individual channels on the remote (a Burk ARC-16), so that I knew which channels did what.

In the time that Robin was gone, the transmitter did not blow up, and KCUR did not go off the air. Thus I am counting my first time as being the person in charge of the transmitter a success. However, I could have done a fair sight better, I think, and I plan to do better next time. First of all, voltage. A couple of times I got calls from the transmitter saying that the voltage was low. I cleared the alarm, and figured that since the transmitter didn't call me again after I cleared the alarm, the problem was transient and nothing to worry about. In fact, it was not a transient problem, and when Robin got back he had to call KCP&L to get the voltage back to where it should be. Additionally, this low voltage situation was causing the transmitter to operate inefficiently, causing the room to be overly warm. There was also a problem with the HVAC - the air conditioning wasn't blowing cold air. I got calls from the transmitter once or twice warning that the temperature was above the set level, but again, since the transmitter didn't call again after I had cleared the alarm, I figured it was a transient problem. Ultimately, it was an error in my thinking: these "transient" problems were still problems that warranted investigation.

I also went over to the TX last Saturday, while Robin was gone, to try and get VINA, an organization that leases a 92kHz subcarrier from KCUR, back on the air. They had sent a box of equipment to the station for us to install at the transmitter in place of the equipment they had been using. During the week I had been out to the TX to replace the satellite (they get their signal via a Ku band satellite downlink) receiver they were using, but that wasn't enough to get them back on-air, so I went to replace the LNB on the satellite dish located on the roof of the transmitter hut. I got the LNB replaced, and I got some signal on the air, but it wasn't very strong, and it sounded distorted. It wasn't until this past Monday, when Robin came back, that we were able to get VINA on the air properly. I ended up having to rotate the LNB almost 50° from the 0° mark on the bracket, and there was some damaged wiring that needed replaced as well.

So all in all, I'm treating my first time watching the transmitter as a lesson in proper thinking. As Robin says, you do all you can do until the job is done. If you can't do it, there's no shame in calling another engineer to assist. I'll remember that next time.

Barnraising: Day 2

(Posted *way* late. Sorry, I got busy. *g*)

Day 2 of the barnraising began with me trying to find all the web streaming equipment that had been scavenged to do the stream from the Cannonball Room. This did not go very quickly, so the streaming for some of the workshops got started late. The streaming happened, though, so I must count that as a success. :)

By the time I'd finished getting all the streaming going, I'd missed most of the morning workshop session, so I didn't get to finish the tiny transmitter I'd been working on the day before. That's all right, though - I can build my own when I get home. I bet I can even adapt the design to broadcast on ham frequencies - maybe have my own little 70-centimeter or 2-meter transceiver.

I was going to go over to the station and help out there after the morning workshop session. Instead I spent some time checking on the web streaming. When I went in to check on the streaming in the workshop about recruiting volunteers and preventing burnout, I was immediately handed a slip of paper informing me that I was an octogenerian stockbroker who loved to dance. This was a role-playing exercise, you see, where some of us were potential volunteers and some of us were people trying to recruit volunteers. I played along, stayed for a bit of discussion, then wandered off to see what else was going on.

One interesting feature of the barnraising was the interview booth. The idea is that two people go into the booth and one of them interviews the other. The other then returns the favor. A volunteer staffer is also in the booth, and they record the interview, along with a couple of station ID's, for later broadcast. So I and a pretty girl named Meghan went in, and she interviewed me. I talked about why I'd come to the barnraising, and how I was trying to move away from IT and into broadcast engineering, and what got me into radio in the first place (a subject that I should perhaps elaborate upon in another post). I even briefly mentioned my days as Uncle Squishy, the host of the WEFT children's music show. (Uncle Squishy later reappeared as the occasional host of one of my WEFT overnight shows).

What with one thing and another, I didn't get over to the station until after lunch. I helped Sakura from Prometheus set the levels on the board, hung out while a carpenter was drilling holes for cables, and helped design a set of shelves to hold equipment until such time as a rack was obtained for said equipment.

Let me briefly describe the way we set the levels on the board. This may well not be industry standard, but once WGXC goes on the air, they can always adjust them again.

To start with, all the faders on the board were set to the same point. The reason we did that was to try and make sure that two given pieces of equipment would have roughly the same perceived volume when the faders on their respective channels were at the same point. When you've got a radio station, you don't want to have to remember that having the fader, say, halfway up on the CD player is fine, but having the fader halfway up on a microphone is *way* too quiet.

Using a Behringer cable tester, we generated a test signal. This signal could be set at three preset levels (i.e. volume) - one for microphones, one for consumer-grade equipment, and one for professional-grade equipment. For each channel on the board, then, we chose the appropriate level and ran it into the board. We then adjusted the trim pots - which are these tiny potentiometers (i.e. a variable resistor, often used to control volume) that you use to adjust the levels on a particular channel. Remember what I said above about having all the equipment being at the same volume for the same fader position? The trim pots are what you use to make that happen. In the case of the six (there are three physical mic modules, but each module on that board takes an "A" and a "B" input that you can switch between) microphone channels on the board, we only adjusted one pot each, because microphones are mono devices. For everything else, we adjusted the left and right pots separately. We set each channel so that with the fader about a quarter of the way up, the VU meter was near +11.

I left for dinner, and when I came back, I made a couple of XLR cables and helped run wiring in the studio. I really like the way their board does things - it's an Arrakis MARC-15. The neat thing about the MARC-15 is that the A & B inputs on each channel are RJ45. They're not Ethernet, though - it's not an IP console. Instead, the pins on the RJ45 are wired such that you can fit two balanced audio channels and a contact closure relay (a dingus that shorts two electrical wires, often used for start/stop control of attached audio devices) onto one jack. I like this idea. If you do it right - only have the wires going to your connectors be a few inches long, and the rest of the wires be contained in the Cat5 sleeve - it keeps the wiring very clean and compact. I'm on a plane right now, otherwise I'd post a picture.

Once things wrapped up at the studio, I made my way back to St. Mary's Academy and helped clean up, then went back to the Youth Center to sleep.

1 A VU meter (VU for "Volume Unit") is a thing on a console that tells you, effectively, how loud your broadcast is. It's an analog thing with a needle. The ranges vary from meter to meter, I expect, but I think the one on the WGXC board went from -10 to +3. That's probably a logarithmic scale.