ReplayTV-FREESCO

From XMLTV
Revision as of 13:26, 4 September 2011 by Amblinn (Talk | contribs)
Jump to: navigation, search

With help from the experts, I've created a detailed set of instructions (expanding on the info HERE ), learning as I go, for getting a modem-based ReplayTV (1000, 2000, 3000, Showstopper) to get guide listings without requiring the DNNA-based Replay service (originally created in preparation for the deactivation originally scheduled for 7/31/2011).

These have NOT been reviewed by the experts, and are still draft form, so use at your own risk. If you are one of the aforementioned experts, please feel free to comment and correct. If you are in the same slightly-confused place that I am, you may want to wait until the set has been fully reviewed, corrected, and published.

If you just want brief and probably less correct instructions, go HERE

Contents

Overview

In the ReplayTV 1000, ReplayTV 2000, ReplayTV 3000, and Panasonic Showstoppers (referred to here as "Replay"), there's a modem that dials out each night to retrieve guide listings, syncronize the clock, and do a few other odds and ends (like create service notifications and change the graphic on the pause screen). At some point, the service, currently run by DNNA, may be turned off (originally scheduled for 7/31/2011, but received an indefinite stay-of-execution).

This set of step-by-step instructions will help you create your own replacement for the guide listings and clock synchronization features. (It also means that if Replay was the only reason you were keeping your home phone / landline, you can now get rid of it.) These instructions are not the only way to get a working solution, but were designed with the goal of keeping additional costs to a minimum.

You will need (in addition to your Replay):

  • A Windows-based PC (running Windows98 or later) with always-on internet access (like cable or DSL), which can stay on overnight
  • An internal-to-your-own-home static IP address for your Windows-based PC. Most routers support the ability to assign an internal IP address to a particular PC. You will also need to know the internal IP address for your router
  • An unused dial-up modem, recommended 28.8K, but 14.4 has also been confirmed to work
  • A phone cord long enough to connect the Replay to the PC modem
  • (maybe) A device (such as a chat cord or the magicJack hardware) to provide power for the phone line (chatcord / magicJack requires a phone line splitter and an open USB port). If you happen to have a phone line emulator lying around, you could use this too, but these instructions assume you don't...
  • A subscription to SchedulesDirect (non-profit group providing listings for personal use for $20/year). Wait until you have everything else working before signing up for this

A note about the modem: your desktop or laptop may already have a built-in dial-up modem (look for a phone port - it's a little smaller than your ethernet port), you may have to dust off an old external modem, or you may need to buy a modem. If your modem is not capable of direct modem-to-modem communication (as is the case with many internal modems), you will also need a device to provide power to the phone line / phone cord. An active phone line has a small amount of power on it (which is why most corded phones don't need a power supply and continue to work during power outages), but you'll be connecting your PC directly to the Replay, bypassing an active phone line. Some modems can compensate for this (such as the US Robotics v. Everything), but many can't (such as most laptop modems). There's no easy way to tell the difference, but it will become clear very early in this process whether you will need a chat cord or not.

The following table lists modems that have been confirmed to work:

Modem Type Chatcord required?
Robotics v. Everything External No
Creative Modem Blaster V.92 model DE5621 External No
Rockwell/Phoebe V1456VQE-R1 External No
Conexant Internal, laptop Yes
Prometheus ProModem 14.4 External No


There are several stages required to getting everything working. It is recommended that you complete these in order, and that you get each one working before moving on to the next. Each of the following sections provide the step-by-step instructions for that stage. If you run into any problems not described here or have any other questions, the folks at http://www.planetreplay.com and http://www.avsforum.com/avs-vb/forumdisplay.php?f=27 (the ReplayTV and Showstopper PVRs forum at AVS) may be able to help.

  1. Check your modem access (how do you access it, and does it work?)
  2. Make sure your modem is compatible with your Replay (and whether you'll need a chatcord)
  3. Set up the FREESCO virtual machine (converts your dial-up modem into a ethernet connection)
  4. Set up SchedulesDirect (which WiRNS uses to get guide data)
  5. Set up the WiRNS software (using the data from FREESCO, replaces the functionality of the servers your Replay used to dial)
  6. Some "finishing touches", to save wear and tear on your modem (and your ears)

Before You Begin

A number of these instructions involve forcing the Replay to dial-out. When this dial out is happening, viewing and recording shows or live TV will not be possible (scheduled recordings will not occur, for instance), so you should plan accordingly.

Check your modem access

  1. If you have an external modem, set it up. Otherwise, double-check that you actually have an internal modem by finding the phone or line port on your PC (the phone / line ports are narrower than the ethernet port)
  2. On your PC, open a connection to the modem with HyperTERM. (If your version of windows doesn't have HyperTERM, you can download a recent version of PUTTY, start PuTTY.exe, choose the "Serial" radiobutton, and type the correct COM port in the Hostname entry field -- if you're not sure, check step #5 below for how to find this)
    1. In Windows XP, you can find HyperTerm through Start -> All Programs -> Accessories -> Communications
    2. When it prompts you for a name for the New Connection, hit "Cancel"
  3. Type "AT" followed by <ENTER>. The modem should respond "OK".
    1. If you don't see "OK", you're not talking to your modem. It might be the modem is bad, or you might be pointing to the wrong COM port. You can try step #5 in this section (setting up "New Connections") to see if you can find a working COM port
    2. If you don't see "AT" on the screen, but you do see "OK", it means the modem is fine, but characters aren't echo-ing. If you type "ATE1" followed by <ENTER> (tells the modem to echo characters), all subsequent commands will appear on the screen
    3. Alternately, you can also echo characters by going to File -> Properties -> [Settings] tab -> [ASCII Setup] button -> click "Echo typed characters locally". Depending on your modem, and modem commands, this may also cause to you see "double" characters (you type "AT", "AATT" appears on screen). This won't cause any problems, other than making it a little more difficult to read
  4. Type "ATA" <ENTER> on the modem. You should hear a high pitched tone, which sounds like a fax machine. If you don't, check your speaker setup. Remember what this tone sounds like. When ready, press a key and you should get "NO CARRIER"
  5. Determine which COM port your modem is on
    1. Start -> Control Panel -> Phone and Modem Options -> [Modems] tab. If there are multiple listed, note all of the COM ports, then try the next option
    2. In HyperTerm, choose "New Connection". Type in a name, click "OK". On the next screen, where it says "Connect Using:", select the first COM port on your list from the above step, and click "OK". Click "OK" on the next screen. Type "AT". If it says "OK", then you have a good COM port. If it doesn't seem to do anything, then click the "Disconnect" button and repeat this process for each of the COM ports until you get the "OK" and can test ATA. Make note of this COM port (you'll need it later). When you close HyperTerm (or choose to create a new connection), you do not need to save the previous connection when it prompts you.

Make sure your modem is compatible with your Replay

  1. Connect a phone cord from your Replay to the "LINE" port of your PC modem (not the "PHONE" port, if you have more than one port)
  2. Open up a HyperTerm (or PuTTY) connection to the modem on your PC using the working COM port; type AT <ENTER> and get the "OK"
  3. On the Replay, turn off dial-tone detection
    1. The "LINE" port on your PC does not generate a dial tone. Therefore, the "Wait for dial tone" setting on the Replay, which defaults to "Yes", must be configured to "No."
    2. On the Replay, navigate from Menu -> Setup -> Change Telephone through a series of screens to the "Dialing Prefix" screen, and then press the "Zones" button on your remote. A special screen should appear which will allow you to change the "Wait for dial tone" option to "No."
    3. It's fine to leave it on "No", even if you go back to the normal way that Replay dials out each night, it just means that if you're calling someone on the same phone line as Replay, and Replay dials out in the middle of the night, you'll have unpleasant noises in your ear and the Replay connection will likely fail for that attempt.
  4. Have the Replay initiate a network connection
    1. From just about any screen on your Replay, press 2-4-3-Zones on the remote control
    2. This brings up a menu -- arrow down to option 4 ("Net Connect"), and press SELECT
  5. When the Replay says "Dialing", type "ATA" <ENTER> on the PC Terminal
  6. You should hear the high pitched "Answer Tone" (from when you tested the modem), followed by the Replay trying to sync up.
  7. You should get a "CONNECT" message on HyperTerm/PuTTY, followed by short periodic bursts of data (about a third of a line long, with a lot of brackets). On the Replay, the message should change from "Dialing..." to "Connecting...". That means your PC modem is compatible. Once you receive this message, you can disconnect in HyperTerm and STOP (exit) on Replay.
  8. If you don't get a CONNECT, troubleshoot the problem before spending any time moving forward.
    1. First suggestion is to provide "talk battery" to the Replay to PC connection. A 9 volt battery in series with a 330 to 1000 ohm resistor should work. You may need to connect two phone jacks back to back to access the two wires, red and green at the jacks, carrying signal. Polarity is not important. This is not a permanent solution because the 9 volt battery will deplete fairly quickly.
    2. A chatcord (or magicJack hardware only) is another alternative, and will provide a permanent solution. Chatcord / magicJack requires a phone line splitter and an open USB port
    3. To install the chatcord / magicJack, connect the "main" / single side of the phone line splitter to the "line" modem port, then plug the chatcord/magicJack and the Replay phone cords into the "split" / double side of the phone line splitter. Finally, plug in the USB into a free USB port on the PC. The other plugs on the device should be left unplugged


Set up the FREESCO virtual machine

  1. Download and install VMware Player http://www.vmware.com/products/player/
    1. Note that you will have to register in order to download the player
    2. If you get a lot of errors during installation about missing hardware on your, install an earlier version of VMPlayer instead. Version 2.5 has been shown to work in this case
  2. Download and unzip the FREESCO Virt Machine: http://xmltv.org/alpha/FREESCO_vmware.zip
    1. In more recent versions of Windows (including XP), you can "unzip" by right-clicking on the folder and choosing "Extract All..."
    2. Remember where you put the unzip'd / extracted folder
    3. If you want to learn a little more about FREESCO (including a lot of stuff that's already been taken care of for you, and also the instructions for what to do if you're using a phone line simulator), you can find it at http://www.livinitnaturalstate.com/rtv/FreescoRTV/README.TXT
  3. Open the FREESCO config file in VMWare Player
    1. Start VMware Player
    2. Under "File", choose "Open a Virtual Machine...",
    3. Navigate into your extracted / unzipped folder from above
    4. Choose "FREESCO.vmx" and click "Open"
  4. Change the Network Adaptor from NAT to Bridged
    1. Click "Edit Virtual Machine Settings"
    2. On the "Hardware" tab, click on "Network Adaptor"
    3. Change the radio button in the Network Connection section to the right to "Bridged". You can leave the checkbox unchecked
    4. Click "OK"
  5. If your modem is NOT on COM1, then click "Edit Virtual Machine Settings"
    1. Click "Serial Port", then choose the actual COM from the drop-down list under "Use physical serial port:"
    2. Click "OK"
  6. If you don't have an "Edit Virtual Machine Settings" option (which may be the case if you're using an earlier version of VMPlayer), and your modem is NOT on COM1:
    1. Close VMPlayer
    2. Navigate to the FREESCO.vmx file in your file system
    3. Right-click on "FREESCO.vmx", scroll down the pop-up menu and choose "Open with..."
    4. Choose Notepad (if it's listed) or choose "Choose Program..." and select Notepad from the list
    5. Once the FREESCO.vmx file is open, scroll to the section that has "/# First serial port, physical COM1 is available"
    6. Change the COM port shown in "serial0.fileName = "COM1" " to match your COM port
    7. Save and close notepad
    8. Restart VMPlayer
  7. Make sure your modem is turned on (if there's an on/off switch)
  8. Click "Play virtual machine"
    1. Keep track of the IP addresses when it starts (the virtual machine "boots") -- there will be one for "DHCPOFFER" and one for "default route"
    2. The VMWare player will capture your mouse and keyboard when you click in it or press <CTRL><G>. <CTRL><ALT> will release it.
    3. You should hear the modem attempt to dial every 30 seconds or so
  9. Click in the FREESCO process and log in as root, password root
  10. Type "killall mgetty" <ENTER>
    1. This TURNS OFF the modem trying to dial every 30 seconds
    2. During "normal" ongoing operation (not when you're setting things up), you do not want to type this command. We're only doing it here to save wear & tear on the modem, and on your ears
    3. If you ever type "killall mgetty", and realize you need the modem running again, typing "reboot" <ENTER> is an easy way to start everything up again
  11. Type "setup" <ENTER> to enter setup mode.
  12. <ENTER> to accept the default color mode.
  13. <a> <ENTER> to enter advanced settings
  14. <62> <ENTER> to enter "Local networks"
    1. <628> <ENTER> to get to "Set DNS via DHCP"
    2. <n> <ENTER> to set it to "n"
    3. <x> <ENTER> to return to the previous screen (advanced menu)
  15. <71> <ENTER> to get to modem settings
    1. <713> <ENTER> to change the init string to an appropriate modem init string, if needed. AT&F1 should work for most modems; ATZ should work also
    2. <714> <ENTER> to change the dial-in IP address. This needs to have the same three numbers from the two IP addresses that you saw in the boot sequence. The fourth number can be pretty much any number EXCEPT the fourth number from the two IP addresses. 200, 201, or 202 are fine choices. You want to choose a dial-in IP address that is NOT used by any other device on your internal network
    3. <x> <ENTER> to return to the previous screen (advanced menu)
  16. <41> <ENTER> to enter "DNS Server"
    1. <n> <ENTER> to disable DNS caching
    2. Primary DNS Address will EVENTUALLY be set to the IP Address of your WiRNS machine (below). If you are following these instructions when the main ReplayTV servers are available, though, it's a good idea to test that you have FREESCO working by connection to the main ReplayTV servers first. For this, you should set the primary DNS address to match the IP address of your router. As an FYI, the IP address in this field tells FREESCO where to redirect the modem data -- it'll eventually be to FREESCO, but if you set it to the IP address of your router, your router will automatically send the to where the Replay thinks it should go
    3. leave secondary DNS address blank
  17. <x> <ENTER> to exit Advanced settings
  18. < s> <ENTER> to save current config and exit
  19. Type "reboot" to reboot the FREESCO machine
  20. You should hear your modem try and answer every minute or so. If you don't, your modem may not be compatible
  21. PRIOR TO SERVICE BEING TURNED OFF: To test that your FREESCO is correct, you can now try a 2-4-3-Zones, arrow down to "4 Net Connect", press SELECT. You should hear the modems sync up. Then, the ReplayTV should now be able to pull down all of the usual information, but running through FREESCO
  22. After confirmation of above, you should change your Primary DNS (as described earlier in this section) to match the IP address of your Windows PC, where you will be running WiRNS

Set up SchedulesDirect

  1. Go to http://www.schedulesdirect.org
  2. Sign up for an account (there's a free 7 day trial -- it's highly recommended that you get this working first, before spending money on it)
  3. Add the channel lineup you want to use in your Replay to your account
    1. In the SchedulesDirect (aka "SD"), you can can customize which channels the Replay will receive from the channel lineup
    2. It's recommended that you perform this channel reduction; less channels means less data that has to be downloaded
  4. Keep track of your username and password (you'll need it for WiRNS next)

Set up the WiRNS software : MOSTLY DONE

This set of instructions got me to the point where I can download channel and guide data into my ShowStopper, see what shows I've recorded and have scheduled to record, AND set up recording request on WiRNS which will appear in the ShowStopper after the next connection. These instructions do not cover how to set a custom local phone number; if this causes problems after the main ReplayTV service is turned off, these instructions can be updated appropriately.

Also, these instructions assumed WiRNS 2.x. The latest version is WiRNS 3.x. It's recommended that you use the latest version of WiRNS, but I'm not sure what the differences are (as I haven't installed it myself). If you have, please update this Wiki appropriately.

  1. Download WiRNS
    1. Go to http://www.wirns.com
    2. Click on the "Installation" menu on the left
    3. Scroll down and click on "Alternate WiRNS Installer"
    4. When prompted, save onto the PC where you plan to install WiRNS, in a directory you can find later
  2. Begin the installation process. In addition to the high-level instructions on the WiRNS Installation page, a very helpful step-by-step document on google docs (I'm not sure who wrote it, but it's quite helpful) can be found here:

Wirns_setup

  1. Our dial-up machines can only use a subset of the WiRNS functions (for instance, we can't upload our recorded shows onto our PCs). At some point, those will get documented
    1. Also, these detailed instructions are targeted to non-dial-up users. Much of the work is still relevant, so is referenced here. At some point, when everything is working smoothly, I may put together a clean PDF with step-by-step for dial-up, including screenshots. For now, there will be some referring back & forth between the Google Doc and this Wiki page
  2. Use the Alternate Installer, as described on the WiRNS Installation page
  3. Follow the instructions in the Google Doc UNTIL step #25 (which is the same as the "Configure your ReplayTV to work with WiRNS" step on the WiRNS installation screen). WiRNS doesn't know what Replays you have, since they aren't on the network
  4. NEW/DIFFERENT Step #26: Because the our Replays dial in, you probably won't see anything here other than the "WiRNS" Type in the upper portion of the window. So, to enter a new Replay, use the lower half of the new window:
    1. Give it a name (nothing fancy, and doesn't really mean anything)
    2. Enter the serial number (you can get this from your Replay by pressing 4-1-1-Zones on your remote control from just about any screen - it's 18 characters, and may include a "-")
    3. Choose the type (the dial-ins are at the bottom of the list -- if you're not sure, you can look at the back of your ReplayTV unit for "model number")
    4. Click "Update". After a bright red confirmation screen, the screen you get next will be tailored for features that your unit can handle (so isn't as complex as the screenshot in the PDF file)
    5. Next to "Lineup 1 (Offset 0):", choose the lineup you created in SchedulesDirect (lines up with step #27)
    6. Click Update (step #28)
  5. SKIP steps #31 and #32 for now. Because your Replay isn't on the network, you won't be able to get the guide for it (yet)
    1. If you do end up in Channel Guide or in Current Channel Guide, and it "hangs" while loading, you will need to Restart WiRNS
  6. Do steps #33 & #34. It's recommended that you use north-america.pool.ntp.org

Steps #35 and on are targeted to non-dial-up users. There are some helpful screen captures that will referenced later here, but the remaining instructions are in this list

  1. Right click on the WiRNS system tray icon and choose "Refresh all Components". This will update WiRNS to the very latest version
  2. Once it's finished, you may need to restart "WiRNSMon". You can do this through the Windows Start Menu; navigate to WiRNS; click on WiRNSMon
  3. Right click on the WiRNS system tray icon if it's green; choose "Stop"; wait until it turns red
  4. Once it's red, then go to your WiRNS installation directory (default is C:\WiRNS), go into the "PlugIns" folder, and rename "NoPhoneNumbers.dll" to "NoPhoneNumbers.dll.DISABLED" AND rename "NoReplayZones.dll" to "NoReplayZones.dll.DISABLED"
  5. Right click on the WiRNS system tray icon (which should be red); choose "Start"; wait until it turns green
  6. Right click on the WiRNS system tray icon (which should be green); choose "Live Logfile Viewer" (you can see samples of what might appear here in step #43 of the Google Doc)

At this point, we're just about ready for the "big step"! First, though, it's HIGHLY recommended that you write down what your current Replay setup is. On your Replay, go to Menu -> Setup -> Change Input & Dialing Settings:

  1. Choose Telephone : Note the settings on each screen (don't make changes yet!)
  2. Choose Line 1 : Note the settings on each screen
  3. Choose Line 2 : Note the settings on each screen
  4. Choose ANT/CATV : Note the settings on each screen, PARTICULARLY any IR Blaster codes that might be set up

Once you have your settings noted, we move on to getting the end-to-end solution working:

  1. Reboot your Replay (this will clear out any cached IP addresses)
    1. This will clear out any cached IP addresses
    2. Easiest way is to turn off your Replay, wait for 15 seconds, unplug the Replay, wait for 30 seconds, plug the Replay back in and wait for the "Please wait..." screen to finish and turn the Replay off again
    3. Turn on the the Replay
  2. On your Replay, go to Menu -> Setup -> Change Input & Dialing Settings -> Change Telephone
  3. Navigate through the screens; when you get to the ZIP CODE screen, change the zip code to another zip code in your timezone that you haven't used before
  4. Press "NEXT" to get to the dialing prefix screen. STAY HERE FOR NOW

The "NEXT BIG STEP":

  1. Start the Virtual Machine running FREESCO
    1. At this point, "DNS Server" setting (41) needs to be the WiRNS PC IP address
    2. You should here the modem try to pick up every minute or so
  2. Go back to the Replay, click the "Continue" button to take you to the next screen
    1. It should tell you that it's going to dial the network to get local phone numbers and tv channels, and will start the dial
    2. You should hear the modem negotiating the connection. Don't worry if it takes what seems like an extra high-pitch cycle
  3. On the WiRNS PC, in the live log viewer, you should start seeing status messages, including at least one for [NTP] Proxying request to... (your time provider, set up up earlier). The last status message will tell you that it's "Proxying Logout"
  4. Once it's done, your PC modem will start its high-pitched squealing cycle again
  5. Return to the Replay, and continue through the navigation screens as you would before. Refer to your previous setting notes to help you navigate this quickly - particularly the IR Blaster codes, which don't always stay "set". ONE IMPORTANT CHANGE: When you are presented with a screen asking you to choose your Cable Provider / Channel Lineup, scroll until you find the provider "Wirns: <Schedules Direct Channel Lineup Name Here>", and select that one
  6. Once you have finished this setup, the Replay will dial out again, to get the detailed guide data.
    1. Again, you'll here the modem negotiatng the connection, and it may take a cycle or two
    2. The Replay will show you its download status (for example, downloading guide data, 7%).
    3. The WiRNS Live Logfile viewer will show you what it's working on. It's an excellent sign when it says "hijacking headend request", then says "Serving guide data for... <date> <IP address>", then says "Loaded ### shows for ## channels in #.### second(s)".
    4. Once the Replay is done, it will disconnect. You can shut down the VMPlayer at this point
  7. Go to your ReplayTV -- check the guide -- do you see data? If you had recordings already set up, are they still there?
    1. if yes, congrats!
    2. if no, the good folks at planetreplay (WiRNS forum) may be able to help.
  8. Go to your PC -- Right click on the WiRNS system tray icon and choose to Update the ReplayGuide and update the TODO list
    1. You should now be able to use WiRNS to view your channel guide, a list of your upcoming recordings, and a list of your existing recordings
    2. Note that "Recording Channels" option in the Channel Guide drop-down just shows you the channels you're recording things on, provided you're looking at a time period during which recordings are scheduled

If all is good, you'll want to set this up for ongoing unattended operation (or, alternately, you can manually start your VM Player each day and force an update using 243-Zones). See "Finishing Touches" below.

Finishing touches : TODO

  1. change the "net connect" time in WiRNS (wherever that field lives) to a time that you won't be using the Replay
  2. change the parameters in the mgetty script (or wherever they live) so that the modem is only trying to answer for a short time period
  3. change the init string in FREESCO so that the modem stays quiet. ATM0.
  4. MAYBE (if someone is clever) how to get the PC in & out of standby automatically, to save electricity
Personal tools