1 HOW-TO use a PicoPix on GNU/Linux
 
   2 =================================
 
   4 Philips/SagemCom pico projectors, like for instance the PicoPix 2055, usually
 
   5 have a WVGA (854 x 480 pixels) native resolution, however they can be used to
 
   6 project other resolutions if the software rescales the image.
 
   8 First, update your system and download the free libam7xxx library and the
 
  11 On Debian and Ubuntu systems this can be done with the following commands:
 
  14   sudo apt-get install libam7xxx0.1-bin
 
  16 Plug your PicoPix into one or two USB slots of your personal computer
 
  17 (sometimes the second USB port is needed to ensure that the PicoPix has enough
 
  20 Wait for Philips logo to appear.
 
  22 After the logo has disappeared, execute the following command in a terminal:
 
  24   am7xxx-play -f x11grab -i :0.0
 
  26 The video projection is on.
 
  28 You can have two simple scripts to execute and terminate the program from
 
  29 a graphical interface.
 
  34   am7xxx-play -f x11grab -i :0.0 -p 1 -z 0
 
  41   am7xxx-play -f x11grab -i :0.0 -p 0 -z 1 &
 
  46 Save the shell scripts from above in files, and give the execute permissions
 
  47 to the owner (or user group) via the command line  or via the graphical
 
  49 (http://sourcedigit.com/20111-how-to-run-a-shell-file-in-ubuntu-run-sh-file-in-ubuntu/).
 
  50 You will then be able to execute the file by double-clicking on it.
 
  52 If you want to specify a particular resolution you can pass it as a command
 
  55   am7xxx-play -f x11grab -i :0.0 -o video_size=1280x768
 
  57 When doing so you may notice that your PicoPix does not fully displays the
 
  58 content of your desktop screen, which can be truncated at the bottom and at
 
  59 the right. This is because of the WXGA (1280 x 768 pixels) resolution may be
 
  60 different from your personal computer screen resolution. It is therefore
 
  61 necessary to modify —temporarily— your personal computer screen resolution to
 
  64 Take the following script:
 
  71   OUTPUT="LVDS-1" # See 'xrandr --listmonitors'
 
  73   xrandr --newmode $(gtf ${WIDTH} ${HEIGHT} 60 | sed -ne 's/"//g;s/ Modeline //p')
 
  74   xrandr --addmode ${OUTPUT} ${WIDTH}x${HEIGHT}_60.00
 
  75   xrandr --output ${OUTPUT} --mode ${WIDTH}x${HEIGHT}_60.00
 
  77   am7xxx-play -f x11grab -i :0.0 -p 1 -z 0 -o video_size=${WIDTH}x${HEIGHT}
 
  81 In the example above, the personal computer screen is identified as "LVDS-1".
 
  82 Maybe your computer screen has a different identifier. In this case, you will
 
  83 have to replace "LVDS-1" with the correct identifier: open your terminal,
 
  84 type "xrandr" and the terminal will list and describe your different screen
 
  85 devices (more about xrandr utility here:
 
  86 http://pkg-xorg.alioth.debian.org/howto/use-xrandr.html).
 
  88 Also, in order to give back your computer screen its original resolution, you
 
  89 should create a PicoPix-STOP.sh script like the following:
 
  96   OUTPUT="LVDS-1" # See 'xrandr --listmonitors'
 
  99   am7xxx-play -f x11grab -i :0.0 -p 0 -z 1 &
 
 102   xrandr --output ${OUTPUT} --mode ${ORIGINAL_WIDTH}x${ORIGINAL_HEIGHT}
 
 106 In the example above, the original screen resolution is 1600x900 pixels. You
 
 107 have to change this value and put your screen resolution value which you can
 
 108 know via xrandr. Same for LVDS-1.
 
 110 Once your video projection is over, you can execute the PicoPix-STOP.sh script
 
 111 so that your computer screen returns to its original state.
 
 113 You can then unplug the projector.
 
 117 This text is licensed under WTFPL. See http://www.wtfpl.net/ for more informations.