tivovbi-20050202 never got past this error on my 6.2 DTivo:
alldeadhomiez told me to check the bcm_get_series function. The purpose of that function is to check whether tivovbi is running on a Series 1 or 2. It checks the /dev/ttyDSS symlink, which points to either ttyS1 (for a Series2.5), ttyS2 (Series2), or ttyS3 (Series1), for the last number of the serial device. (tivovbi doesn't actually do anything with the serial console, this is just to check if it's S2 or 2.5.)
bcm_open(): can't get hw version
At first I couldn't get a cross compiler going, so I tried to workaround the problem so that I wouldn't have to recompile anything. By making a file with 64 characters in length with the number 2 (because my Tivo uses ttyS2,) tivovbi ran successfully and displayed captions on screen.
After I showed ADH my workaround, he noticed the error in the code and he wrote this patch:
ln -sf 2222222222222222222222222222222222222222222222222222222222222222 /dev/ttyDSS
--- bcmosd.c 2 Feb 2005 21:36:49 -0000
+++ bcmosd.c 24 Dec 2006 05:55:47 -0000
@@ -456,10 +456,10 @@
- if(readlink("/dev/ttyDSS", tmp, 64) < 0) return(0);
- tmp = 0;
- i = strlen(tmp);
- if(i == 0) return(0);
+ i = readlink("/dev/ttyDSS", tmp, 64);
+ if(i <= 0)
+ tmp[i] = 0;
switch(tmp[i - 1])
Not only is tivovbi useful for small and old TVs without a CC decoder, it's also useful for conviently turning captions on/off with just one remote. That's what attracted me to tivovbi in the first place. Now I only have to use Tivo remote and I can finally put that TV remote away forever.
After you replace the stock /lib/modules/router.o with ADH's router.o (a.k.a. routerplus) you should be able to use a remote button you want to toggle the captions off and on.
But no matter what remote address I specified, tivovbi kept using the default "Clear button pressed three times" (mentioned in the README) to toggle captions on and off.
I didn't wan't to spend too much time debugging why that wouldn't work, so I just hardcoded it to use the Window button (which is utterly useless on a S2 SD DTivo, but used on the HR10-250 to change the Aspect Ratio.)
Also, I changed it to require only two button presses instead of three. (I couldn't get it to require only one button press.)
Here's the quick hack I wrote for that:
I've attached two MIPS binaries (for Series 2 and Series 2.5), a kinda-late Christmas present.
--- remote.c 2005-02-02 16:36:49.000000000 -0500
+++ remote.c 2006-12-25 20:00:02.000000000 -0500
@@ -222,7 +222,7 @@
if(! mupdown) return(-1);
- if(mkey != 0x1b /* CLEAR */)
+ if(mkey != 0x35 /* WINDOW */)
consec = 0;
@@ -236,7 +236,7 @@
consec = 0;
if(consec < 2) return(-1);
consec = 0;
One has only the bcmosd.c patch, and therefore uses the standard Clear button three times to toggle captions.
The other has both ADH's bcmosd.c patch and my remote.c patch (for the Window button and two button presses.)
Some quick instructions:
1) upload tivovbi to the folder of your choice. make a new one, put in with your busybox/tivotools binaries, etc.
2) upload pxmpegdecode.o to /lib/modules (from s2vbi-20050202.zip)
(Tivo version 6.x+ use a 2.4.20 kernel, so use /s2vbi/obj/2.4.20/pxmpegdecode.o)
3) backup your stock /lib/moudules/router.o and replace it with ADH's router.o (a.k.a. routerplus... maybe it should get moved from that forum to ddb...)
(rename router.o to something else, upload routerplus-2.4.20.o to /lib/modules, rename routerplus-2.4.20.o to router.o)
4) Add this to your rc.sysinit.author:
For a translucent background on the captions, use this instead (I find it hard to read. you might prefer it...):
/folder/you/uploaded/it/to/tivovbi -oc -r0 -w
5) Reboot. Captions will disabled by default. Press the Window button twice or the Clear button three times (depending on the version you used) to toggle between Captions on and off. Enjoy your captions.
/folder/you/uploaded/it/to/tivovbi -ocC -r0 -w
You'll see "Captions Enabled", "Captions Disabled" on screen when you switch between the modes.
!!!!!!Read the README,etc from the zip attached in the first post!!!!!!
UPDATE: A newer version has been posted in the next post. The new tivovbi-window_button only requires one button press.