Sunday, November 21, 2010

Mixing DTV antenna and analog Cable


The Quick
  • Cable in vhf band (specifically 57-501 MHz)
  • ATSC in uhf band (507-675 MHz)
  • One coaxial input on tv
  • Cable splitter contains an element to prevent noise from upstream devices
  • Noise from cable onto ATSC is acceptable
  • Noise from ATSC is faily bad on some channels, but most of those channels are covered by ATSC anyway
  • No broadcast of cable channels over antenna
The Long

I got a new tv with only one coax input. I have crummy analog cable, but when possible I prefer to watch free ATSC. The internet told me to use an A-B switch, but that seemed like an inelegant solution. Plus, I don't want to get up every time I want to switch. I also don't want/am too cheap for an extra remote controlled A-B switch.

The tv has a signal diagnostics menu that reports the frequency of the tunned channel, so I started comparing. The cable channels max out at channel 70 (501 MHz), while the ATSC channels begin at 507 MHz. I don't really care about the upper 15 or so cable channels, so I really have a decent separation of the two sources. I figured that if I really wanted to do it the right way I could find an old UHF-VHF combiner somewhere and tweak the high-pass/low-pass frequencies.

I decided to see how bad it would be to just combine the two, and see how much noise the antenna threw on to the cable channels. There is a bit of interference from the cable to the ATSC, but the encoding scheme handles it just fine (my roomba and dishwasher cause more interference).

I'm not really concerned about broadcasting the cable channels over the antenna, because cable splitters usually prevent signals from going upstream as a side effect of impedance matching. There is even more signal loss going across the 300Ω-75Ω transformer. I doubt that anyone will receive interference from an attenuated signal if the full strength signal doesn't break my digital stream. I tested it out anyway, and almost no signal makes it back past the splitter. I didn't test past the transformer.

The interference from ATSC onto cable is significant, but only on channels that are also covered by ATSC. Occasionally there is a mess of interference when someone right outside starts their car. I have the old tv hooked up to the cable before the combiner, and it shows no interference from the combine.


Saturday, November 6, 2010

EZquake Server

The Quick
  • "C:\Quake" not ("C:\Program Files\Nquake" or "C:\Program Files\EZQuake")
  • config.cfg edits gl_turbalpha "0.6", watervis "1"
  • server.cfg goes in "C:\Quake\ID1"
  • ezquake.exe -dedicated
  • Random port open for each client. Place outside NAT
  • Eventual quit (not crash?) set up service
  • Setting up service looses console information, use qplug in firefox
  • Make clients download game files before the game. The server will send the missing files, but it is incredibly slow.

The Long
I wanted to play some original quake, on a local server. There is not much documentation on the web about NetQuake/QuakeWorld server setup. So here is what I scrounged together.
http://www.quakeworld.net/frame-quakeworld.html

Transparent water isn't really sticking to the original, but it is nice. Use the turtorial and edit config.cfg
gl_turbalpha "0.6"
watervis "1"

I tried using the default nQuake install "C:\program files\nQuake", but the dedicated server failed trying to load server.cfg. It goes in "quake\ID1" along side pak*.pak. Then it died without really reporting why. It turned the program needs to be in a root directory, "C:\quake" is what I used. Here's my server.cfg for nQuake standard install plus q1dm*.

//http://console.planetquake.gamespy.com/commands/quakeworld_server.html
//hostname "My QuakeWorld Server"
//setmaster 192.246.40.12:27000
maxclients 32
//maxspectators 8
//deathmatch 3
//teamplay 2
//fraglimit 100
//timelimit 30
//samelevel 0
//password ""
//spectator_password ""
rcon_password ""

//startup map
map dm1

watervis "1"
timelimit "5"
// if you want to use the single player levels
// start
// e1m1 ... e1m8
// e2m7
// e3m7
// e4m8


localinfo dm1 dm2
localinfo dm2 dm3
localinfo dm3 dm4
localinfo dm4 dm5
localinfo dm5 dm6
//originals only
//localinfo dm6 dm1

// if new maps as well
localinfo dm6 3ebluebeta
localinfo 3ebluebeta a2
localinfo a2 aerowalk
localinfo aerowalk amphi
localinfo amphi blessed
localinfo blessed bsdm6
localinfo bsdm6 b_exbox2
localinfo b_exbox2 catwalk2
localinfo catwalk2 cmt1b
localinfo cmt1b cmt2
localinfo cmt2 cmt3
localinfo cmt3 cmt4
localinfo cmt4 cmt5b
localinfo cmt5b cpm1qw
localinfo cpm1qw cpm3a
localinfo cpm3a cpm3qw
localinfo cpm3qw dad
localinfo dad death32c
localinfo death32c debello
localinfo debello del1
localinfo del1 dm2dmm4
localinfo dm2dmm4 dm3hill
localinfo dm3hill dm4ish
localinfo dm4ish dm5a
localinfo dm5a dmz1++
localinfo dmz1++ endif
localinfo endif fmc
localinfo fmc four
localinfo four frobodm2
localinfo frobodm2 genocide
localinfo genocide hate
localinfo hate head-shot
localinfo head-shot hook
localinfo hook kjdm7
localinfo kjdm7 lady
localinfo lady leaks
localinfo leaks oldcrat
localinfo oldcrat pdm18
localinfo pdm18 pkeg
localinfo pkeg pkeg1
localinfo pkeg1 povdmm4
localinfo povdmm4 pushdmm4
localinfo pushdmm4 q1dm1
localinfo q1dm1 q1dm2
localinfo q1dm2 q1dm3
localinfo q1dm3 q1dm4
localinfo q1dm4 q1dm5
localinfo q1dm5 q1dm6
localinfo q1dm6 q1dm7
localinfo q1dm7 q1dm8
localinfo q1dm8 q3dm6ish
localinfo q3dm6ish q3dm6qw
localinfo q3dm6qw qcon1
localinfo qcon1 qtdm3
localinfo qtdm3 rf2test
localinfo rf2test rwild
localinfo rwild sacredb1
localinfo sacredb1 schduel
localinfo schduel schloss
localinfo schloss shine
localinfo shine skull
localinfo skull slide1
localinfo slide1 slide7
localinfo slide7 speed
localinfo speed spinev2
localinfo spinev2 travelert6
localinfo travelert6 tridm3
localinfo tridm3 tuhnu1
localinfo tuhnu1 ukpak2
localinfo ukpak2 ultrav
localinfo ultrav vdm3
localinfo vdm3 vdm3v3
localinfo vdm3v3 ztndm3
localinfo ztndm3 ztndm3q
localinfo ztndm3q ztndm4
localinfo ztndm4 ztndm6
localinfo ztndm6 ztrain
localinfo ztrain ztricks
localinfo ztricks ztricks2
// if new maps only
//localinfo ztricks2 3ebluebeta

// if not local only maps
localinfo ztricks2 dm1
For some reason the server quits after a while. So I setup a service to restart it, but I lost the console window that way. I used qplug to get back that information. npqplug.dll goes in "C:\Users\*\AppData\Roaming\Mozilla\plugins".

Qplug works fine in Firefox, but doesn't seem to like the plug in if not run from a real webserver. file:// doesn't work but html:// does. It seems to work in chrome if the plugin npqplug.dll is placed in C:\Users\*\AppData\Roaming\Mozilla\plugins, but never gets past "bad address". Internet explorer ... never mind.

Q3plug doesn't seem to work with ezquake.

Sunday, October 31, 2010

2003 Chevy Malibu Coolant Flush

The short
Hex 4.5 tip or 1/4" socket wrench.
No "radiator cap" -- use overflow tank.
~4 quarts in radiator a bit more in engine.

The long
I recently decided to change my own coolant to try to save myself the $80 that the mechanics charge. It looked like I had some residual oil in there from a blown gasket. It turned out that there was just some floating on the top of overflow reservoir, but I didn't figure that out until the coolant was coming out.

My first problem was to remove the old coolant. All the tutorials on changing coolant said to use a 1/4" socket wrench. I don't have a socket wrench. I looked at the plug, and I noticed that inside the 1/4" square hole, there is a hex hole. I have several hex wrench sets, and a ratcheting screwdriver with hex bits. I tried a few size, and the tip labeled H4.5 did the trick. I believe that is 4.5mm.

As far as I can tell the engine block doesn't have a coolant plug, so the only way to get the coolant out of the engine is to run it. I didn't actually have to do that part.

My second problem was to get coolant into the radiator. All the tutorials I read said to remove the radiator cap, and pour it in. Well, I don't have a "radiator cap". I think that many newer GM cars are the same way. The radiator gets filled directly through the overflow tank.

The car owners manual didn't state the coolant capacity, so I had to guess when buying. Now I have enough coolant for a long time sitting in the trunk of my car. The radiator/overflow tank holds about four quarts of liquid.