Other OS

tvservice not working

4 12098
Trying to get the tvservice command working so that I can update the monitor resolution to 1920x1080-60.
Whenever I use the command (such as tvservice -s, tvservice -m CEA, etc.) I get the following error:

[E] Failed to initialize VCHI (ret=-1)

Doing some research seems to indicate that this error occurs when the firmware is old or there is a codec problem. Since I don't have any codecs installed (yet), it seems to point to a kernel / firmware incompatibility of some sort. Tried using rpi-update to see if that would possibly fix it (nothing to lose) and that didn't do anything.  Took a look at decompiling the FEX script.bin to check that out, but not sure that I can replace that file with something else.

This is a bit beyond my experience level at this point; I've been able to tweak tvservice on the Raspberry Pi that I have, and that works just fine. The Banana Pi seems to be lacking something - or I'm missing something pretty basic.

Any thoughts?


I can flip my tv pretty much any which way because of this thread. And basic is relative to how much you already know. Have fun.

Thanks for pointing me in that direction. For anyone else who's interested, here's how I got Raspian to use 1920x1080 resolution for the Banana Pi:

From the shell command line:

Install a prerequisite package:

sudo apt-get install libusb-1.0.0-dev

Clone the sunxi-tools repository in a directory that you can run it from (I used /home/pi):

cd /home/pi
git clone https://github.com/linux-sunxi/sunxi-tools

Change to the sunxi-tools directory that was created and compile the programs needed (use sudo if you get error messages):

cd sunxi-tools

Make copies of the uEnv.txt and script.bin files so you have the originals if needed:

cd /boot
sudo cp uEnv.txt uEnv.txt.orig
cd /boot/bananapi
sudo cp script.bin script.bin.orig

Go back to the home directory and copy the script.bin file from /boot/bananapi

cd /home/pi
sudo cp /boot/bananapi/script.bin script.bin

Convert the script.bin file to fex text format (still in /home/pi):

./sunxi-tools/bin2fex script.bin script.fex

Edit the script.fex file using nano (or vi or whatever); find the [disp_init] section and set the following:

disp_init_enable = 1
disp_mode = 0
screen0_output_type = 3
screen0_output_mode = 10
fb0_framebuffer_num = 2
fb0_format = 10
fb0_pixel_sequence = 0
fb0_scalar_mode_enable = 1

Save the changes and run fex2bin to create the modified script.bin file (again, from /home/pi):

./sunxi-tools/fex2bin script.fex script.bin

Go to /boot/bananapi, delete script.bin (you will still have the original as script.bin.orig) and copy the modified script.bin file:

cd /boot/bananapi
sudo rm script.bin
sudo cp /home/pi/script.bin script.bin

Got to /boot and modify the uEnv.txt file as follows using a text editor; the example below uses nano:

cd /boot
sudo nano uEnv.txt

Change the first line (should be bootargs=) as needed so that the following option is set (there will be text before and after it):


Save the file.

Reboot and you should now be able to use the full 1920x1080 resolution.

Here are some links for further information:

Sunxi-tools install: http://sunxi.org/Sunxi-tools

Fex configuration options: http://sunxi.org/Fex_Guide#.5Bdisp_init.5

If you're booting into a console command line and then entering 'startx' to start the graphical interface, you may find that the console font size is now too big or too small.

To change the font size, use the command:

sudo dpkg-reconfigure console-setup

and follow the prompts to change the font size. The Terminus font is probably the best one to use, though feel free to experiment with what works best.

This is problem is more common when you use low end tv providers. You can shift to some higher end tv service providers like USTVNOw for more seamless streaming.

While you are facing some problem is using the different sites you can sue this. Mostly some users use essaytigers reviews that are known to be the greatest one in helping.

You have to log in before you can reply Login | Sign Up

Points Rules