GeeXboX Wii: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox Wii Homebrews
{{Infobox Wii Homebrews
| title     = GeeXboX
|title=GeeXboX
| image     = geexbox-wii.jpg
|image=geexbox-wii.jpg
| description = Linux-based port of GeeXboX, which uses MPlayer for playback.
|description=Linux-based port of GeeXboX, which uses MPlayer for playback.
| type      = Media players
|author=farter
| author    = farter
|lastupdated=2010/02/27
| version   = 0.1beta3 IOS/MINI
|type=Media Players
| description = Linux-based port of GeeXboX, which uses MPlayer for playback.
|version=0.1beta3 IOS/MINI
| lastupdated = 2010/02/27
|license=GPL-2.0
| license  = Mixed
|download=https://dlhb.gamebrew.org/wiihomebrews/geexboxwii.7z?k33p0fil35
| download = https://dlhb.gamebrew.org/wiihomebrews/geexboxwii.7z
|website=https://fartersoft.com/geexboxforwii/
| website     = https://fartersoft.com/geexboxforwii/
|source=https://sourceforge.net/projects/geexboxforwii
}}
}}
GeeXboX for Wii is GeeXboX ported, UNOFFICIALLY, to run on Nintendo Wii game console. This has been made possible by the exellent work of Wii 'hackers’ and homebrewers, especially TeamTwiizers and the gc-linux team.
GeeXboX is a free embedded Linux distribution which aims at turning your computer into a so called HTPC (Home Theater PC) or Media Center.  


GeeXboX for Wii is an unofficial port of GeeXboX, to run on Nintendo Wii game console. This has been made possible by the excellent work of Wii "hackers" and homebrewers, especially TeamTwiizers and the gc-linux team.
==Features==
*Wii homebrew.
*Wii linux distro.
*Wii media player.
*Wii media center.
==Installation==
Starting with 0.1beta1, GeeXboX for Wii is released as two separate versions: GeeXboX for Wii (IOS) and GeeXboX for Wii (MINI). It is difficult to explain the differences between the two to someone without prior knowledge about Homebrew Channel (HBC) and Bootmii, etc.
Starting with 0.1beta1, GeeXboX for Wii is released as two separate versions: GeeXboX for Wii (IOS) and GeeXboX for Wii (MINI). It is difficult to explain the differences between the two to someone without prior knowledge about Homebrew Channel (HBC) and Bootmii, etc.


GeeXboX for Wii (IOS) is basically the continuation of previous 0.1alpha releases and has to be launched by, preferrably, HBC or other similar homebrew loading methods. This version does not support native wifi or DVD; does not support USB 2.0; does not support front SD slot hot-swapping; does support returning to HBC.
GeeXboX for Wii (IOS) is the continuation of previous 0.1alpha releases and has to be launched by, preferably, HBC or other similar homebrew loading methods. This version does not support native WiFi or DVD; does not support USB 2.0; does not support front SD slot hot-swapping; does support returning to HBC.


GeeXboX for Wii (MINI) is basically the IOS version modified to take advantage of MINI firmware and has to be launched through MINI, i.e. manually from Bootmii GUI or automatically by replacing ppcboot.elf in bootmii folder. This version
GeeXboX for Wii (MINI) is basically the IOS version modified to take advantage of MINI firmware and has to be launched through MINI, i.e. manually from Bootmii GUI or automatically by replacing ppcboot.elf in bootmii folder. This version does support native WiFi (currently at a rather low speed); does support USB 2.0; does support front SD slot hot-swapping; does support native DVD; does not support returning to HBC.
does support native wifi (currently at a rather low speed); does support USB 2.0; does support front SD slot hot-swapping; does support native DVD; does not support returning to HBC.


Except the differences listed above, the IOS and MINI versions are nearly identical as far as other features are concerned. Please note that the extra features in MINI version do put heavier burden on CPU and memory usage. Therefore, if the MINI version-specific features are of little or no use to you, you are advised to stick to the IOS version.
Except the differences listed above, the IOS and MINI versions are nearly identical as far as other features are concerned. Please note that the extra features in MINI version do put heavier burden on CPU and memory usage. Therefore, if the MINI version-specific features are of little or no use to you, you are advised to stick to the IOS version.


== Installation ==
A homebrew-enabled Wii and SD card is required, you can find the setup guide on the [https://fartersoft.com/geexboxforwii/installation/ official website].
 
'''[IOS version]''' This document assumes that Homebrew Channel (HBC) is used for loading homebrew applications. For other loaders, please consult their documentation and make necessay changes to what is written here.
 
'''[MINI version]''' Bootmii should be installed as either boot2 or IOS, or if you wish, both.
 
===Setup===
====SD card====
'''[IOS version]''' Both SD and (some) SDHC cards can be used. Whether a particular card can be used mostly depends on whether it can be recognized by your version of HBC. For instance, HBC beta 9 or higher is required for SDHC booting. (Note that SDHC support in HBC is achieved in a somewhat hackish fashion and as a result, not all SDHC cards are usable. A list of user-verified compatible cards is available here.
 
For non-SDHC, it is probably better not to use cards larger than 2GB.
 
'''[MINI version]''' Both SD and (some) SDHC cards can be used.
 
The card should be formatted in FAT/FAT16 or FAT32. It is not necessay to use 'special' formatting software, unless media defect is suspected or the card has been previously manipulated by certain boot managers, in which cases the Panasonic tool could be tried. If a digital device (mobile phone, DC, DV, etc.) that can use the card in question is available, formatting the card in such a device sometimes gives the most reliable result.
 
====Extract to SD card====
The downloaded package is usually a compressed archive. Open the archive and extract ALL the contents to the root folder of the SD card. There is NO need to manually move any file or folder around. If you have a previously installed GeeXboX for Wii version on the SD card, it is STRONGLY advised that the GEEXBOX folder is deleted before extracting a new version to the card.
 
====Boot GeeXboX for Wii====
'''[IOS version]''' Power up Wii, insert the SD card, launch HBC and GeeXboX for Wii (IOS) application banner will be displayed (among other applications if there are any on the card). Select the banner and click on 'OK' to load GeeXboX for Wii (IOS).
 
'''[MINI version]''' In Bootmii GUI, choose the SD card icon, browse to the /bootmii folder and select geexbox.elf file. Video modes other than 480i(NTSC) are untested. If the elf file fails to boot into GeeXboX for Wii splash screen, you might consider hex-editing the elf file to change the gcnfb parameters (see this link).
 
If you wish to make MINI start GeeXboX for Wii (MINI) automatically instead of going through Bootmii GUI, where wiimote is not supported, you could hex-edit the geexbox.elf file to set correct gcnfb parameters and rename it to ppcboot.elf.
 
===Debugging booting problem===
 
* '''[IOS version] GeeXboX for Wii not loaded by HBC'''
Typical symptoms include: GeeXboX for Wii banner not displayed by HBC; HBC refuses to load GeeXboX for Wii after the banner is clicked; HBC loads GeeXboX for Wii but HBC progress bar (NOT the GeeXboX splash screen progress bar) stalls midway.
 
All of the above are caused, almost without exception, either by a card that has not been properly inserted in place, or by corruption of GeeXboX for Wii files in /apps/geexbox folder, which is usually fixed by re-extracting the files.
 
Please note, it is absolutely NOT necessary to convert the boot.elf file to dol format, whichever version of HBC is being used. Doing this can result in HBC refusing to load GeeXboX for Wii.
 
* '''[IOS version] Black screen after HBC loading success'''
It has been noted that with recent HBC versions (post-1.0.5), sometimes HBC loads GeeXboX for Wii boot.elf fine (progress bar reaches 100%) but GeeXboX for Wii boot screen fails to come up, only a black screen is displayed.
 
How this happens is not very clear at the moment, but one possible solution to try is using an older version of HBC. Yes, it IS possible to have two different versions of HBC installed side by side, as long as they have different title IDs. For instance, HBC 1.0.1 (HAXX) alongside HBC 1.0.6 (JODI) works fine. It is mandatory to install JODI version first, otherwise HAXX version will be removed during installation. Note that GeeXboX for Wii will always return to, or launch, to be exact, the JODI version if it is installed.
 
* '''GeeXboX for Wii booting aborts or stalls'''
Here 'abort' refers to those situatiosn where GeeXboX booting process stops before completion and drops into console (text) mode, whereas 'stall' refers to those situations where GeeXboX boot splash progress bar stalls midway, but without dropping into console mode.
 
Such problems are caused, almost without exception, either by corruption of GeeXboX for Wii files in /GEEXBOX folder, or by corruption and/or errors in the SD card file system. If re-extracting the files does not fix the problem, re-formatting the card should be considered.
 
* '''Black screen or wrong color'''
[IOS version] Interlaced mode over progressive-capable component cables does not work. In other words, display devices set to 480i and connected to Wii using component cables may display black screen (loss of signal), garbled colors or split screen when GeeXboX for Wii is booted. This is caused by wii-linux kernel forcing 480p display when progressive-capable cables are detected. Set the display device to 480p or use S-video/composite cables to work around this. Note that this issue may have been fixed since 0.1alpha7.
 
Black Screen after boot success is usually caused by corrupt or incorrectly modified /GEEXBOX/etc/mplayer/mplayer.conf.


==Usage==
==User guide==
===Control===
===Controls===
====Wiimote====
====Wiimote====
* '''Setup'''
Setup:
Wiimote is the default remote control device in GeeXboX for Wii. For unmodified versions, nothing needs to be changed to enable wiimote support. If in doubt, check that in /GEEXBOX/settings file, the 'REMOTE=wiimote' and
*Wiimote is the default remote control device in GeeXboX for Wii. For unmodified versions, nothing needs to be changed to enable wiimote support.  
'WIIMOTE=00:00:00:00:00:00' lines are not modified or commented out.
*If in doubt, check that in /GEEXBOX/settings file, the 'REMOTE=wiimote' and 'WIIMOTE=00:00:00:00:00:00' lines are not modified or commented out.


* '''Connection/Disconnection'''
Connection/Disconnection:
When GeeXboX for Wii has booted successfully, press ANY button, except the 'power' button, on wiimote and it will automatically tries to connect to GeeXboX for Wii. If connection is successful, LEDs on the wiimote will flash and wiimote
*When GeeXboX for Wii has booted successfully, press ANY button, except the 'power' button, on wiimote and it will automatically tries to connect to GeeXboX for Wii.  
will rumble for a short while.
*If connection is successful, LEDs on the wiimote will flash and wiimote will rumble for a short while.
*The connection is automatically terminated by the power-saving feature of the wiimote after long periods of inactivity and can also be manually terminated by pressing the 'power' button.
*Reconnection is done by pressing ANY button, except the 'power' button, again.


The connection is automatically terminated by the power-saving feature of the wiimote after long periods of inactivity and can also be manually terminated by pressing the 'power' button. Reconnection is done by pressing ANY button, except the 'power' button, again.
Controls:
 
*Only single and combo button-pressings on the wiimote are received by GeeXboX for Wii to trigger specific events.  
* '''Controls'''
*Therefore, it is useless to point wiimote at the sensor bar, which is powered off by the way, or to wave the wiimote in any fashion.  
Only single and combo button-pressings on the wiimote are received by GeeXboX for Wii to trigger specific events. Therefore, it is useless to point wiimote at the sensor bar, which is powered off by the way, or to wave the wiimote
*Holding down button(s) will send repeated commands at a rate of about 4 times per second.
in any fashion. Holding down button(s) will send repeated commands at a rate of about 4 times per second.
*Detailed button commands can be viewed from the GUI 'help' menu. For customization of the commands, lircd_wiimote.conf and lircrc_wiimote files in /GEEXBOX/etc/lirc can be modified, which requires prior knowledge of lirc config file formats and is not advised for ordinary users.
 
Detailed button commands can be viewed from the GUI 'help' menu. For customization of the commands, lircd_wiimote.conf and lircrc_wiimote files in /GEEXBOX/etc/lirc can be modified, which requires prior knowledge of lirc config file formats and is not advised for ordinary users.


====Keyboards====
====Keyboards====
* '''Setup'''
Setup:
GeeXboX for Wii supports keyboard control by default and such support does not conflict with other remote control devices. Therefore, it is not necessary to try to enable or disable such support.
*GeeXboX for Wii supports keyboard control by default and such support does not conflict with other remote control devices.  
 
*Therefore, it is not necessary to try to enable or disable such support.
* '''Connection/Disconnection'''
USB devices are hot-pluggable in GeeXboX for Wii and USB keyboards are no exception. This is probably also true for RF wireless keyboards with USB receivers.


Bluetooth keyboards usually requires pairing before they can be used. To be able to use bluetooth keyboards in GeeXboX for Wii, the /GEEXBOX/etc/bluez file must be modified to set the correct paring key, specify the keyboard bluetooth MAC if targeted connection is desired, and uncomment proper HID-related options. Prior knowledge and experience of using bluetooth keyboards in linux is required.
Connection/Disconnection:
*USB devices are hot-pluggable in GeeXboX for Wii and USB keyboards are no exception.
*This is probably also true for RF wireless keyboards with USB receivers.
*Bluetooth keyboards usually requires pairing before they can be used. To be able to use bluetooth keyboards in GeeXboX for Wii, the /GEEXBOX/etc/bluez file must be modified to set the correct paring key, specify the keyboard bluetooth MAC if targeted connection is desired, and uncomment proper HID-related options. Prior knowledge and experience of using bluetooth keyboards in linux is required.


* '''Controls'''
Controls:
GeeXboX currently only supports single pressing of basic keys. Combo keys and multimedia keys are not yet supported. Simplified information about keyboard control is available from GUI 'help' menu and /GEEXBOX/etc/mplayer/input.conf. More detailed but slightly outdated information is available at GeeXboX wiki.
*GeeXboX currently only supports single pressing of basic keys. Combo keys and multimedia keys are not yet supported.  
*Simplified information about keyboard control is available from GUI "help" menu and /GEEXBOX/etc/mplayer/input.conf.  


====Bluetooth Mobile Phones====
====Bluetooth Mobile Phones====
Supported devices:
*Not all bluetooth-enabled phones are usable as remote control for GeeXboX for Wii.
*For an inexhaustive list of usable models, check out this anyremote page (GeeXboX for Wii does not use anyremote though).
*Models listed there as working in bluetooth AT mode should be usable.


* '''Supported devices'''
Setup:
Not all bluetooth-enabled phones are usable as remote control for GeeXboX for Wii. For an inexhaustive list of usable models, check out this anyremote page (GeeXboX for Wii does not use anyremote though). Models listed there as working in bluetooth AT mode should be usable.
*Please note that 1), wiimote support will be disabled when mobile phones are used as remote control; 2), prior knowledge and experience of using bluetooth devices in linux is required for setup.
 
To specify mobile phone as remote control device, the first step is to edit /GEEXBOX/settings file and change the value of 'REMOTE' to 'bluemobile'.
* '''Setup'''
*For some (Sony)Ericsson models, it is also possible to set 'REMOTE' to 'bte'. Then /GEEXBOX/etc/bluez file should be modified to set the default pass key and specify the bluetooth MAC and serial service channel of the mobile phone by setting the respective options to correct values.
Please note that 1), wiimote support will be disabled when mobile phones are used as remote control; 2), prior knowledge and experience of using bluetooth devices in linux is required for setup.
*Finally, on the mobile phone, bluetooth should be enabled and the phone should be made discoverable and connectable. Consult the phone's user manual for detailed procedures.


To specify mobile phone as remote control device, the first step is to edit /GEEXBOX/settings file and change the value of 'REMOTE' to 'bluemobile'. For some (Sony)Ericsson models, it is also possible to set 'REMOTE' to 'bte'. Then /GEEXBOX/etc/bluez file should be modified to set the default pass key and specify the bluetooth MAC and serial service channel of the mobile phone by setting the respective options to correct values. Finally, on the mobile phone, bluetooth should be enabled and the phone should be made discoverable and connectable. Consult the phone's user manual for detailed procedures.
Connection/Disconnection:
*If setup is successful, upon booting of GeeXboX for Wii, you will be prompted on the phone to enter pass key for incoming connection.  
*Enter the pass key specified in /GEEXBOX/etc/bluez and the phone will start to function as a remote control.


* '''Connection/Disconnection'''
Controls:
If setup is successful, upon booting of GeeXboX for Wii, you will be prompted on the phone to enter pass key for incoming connection. Enter the pass key specified in /GEEXBOX/etc/bluez and the phone will start to function as a remote
*Only single key-pressing-releasing events are supported. Key definitions in the released versions are based on Benq-Siemens S68 and specified in lircd_bluemobile.conf and lircrc_bluemobile files in /GEEXBOX/etc/lirc folder.  
control.
*Edit these files to customize for other models. If the bte driver is used instead of bluemobile driver, edit lircd_bte.conf and lircrc_bte files in the same folder to customize.  
 
*Prior knowledge of lirc config file formats is requried for such editing.
* '''Controls'''
Only single key-pressing-releasing events are supported. Key definitions in the released versions are based on Benq-Siemens S68 and specified in lircd_bluemobile.conf and lircrc_bluemobile files in /GEEXBOX/etc/lirc folder. Edit these files to customize for other models. If the bte driver is used instead of bluemobile driver, edit lircd_bte.conf and lircrc_bte files in the same folder to customize. Prior knowledge of lirc config file formats is requried for such editing.


====Network====
====Network====
GeeXboX for Wii comes with built-in http server, which provides web-based playback control and is accessible through USB ethernet, bluetooth or wifi (MINI version only). The interface is straightforward and requires no explanation.
GeeXboX for Wii comes with built-in http server, which provides web-based playback control and is accessible through USB ethernet, bluetooth or wifi (MINI version only). The interface is straightforward and requires no explanation.


See the 'Networking' Page for more information about networking.
See the "Networking" section for more information about networking.


GeeXboX for Wii also supports, theoretically, remote control through lirc over udp. This is an untested feature and only advanced lirc users should attempt to make it work.
GeeXboX for Wii also supports, theoretically, remote control through lirc over udp. This is an untested feature and only advanced lirc users should attempt to make it work.


==Media Sources==
===Media sources===
===Front SD Slot===
'''Front SD Slot:'''
*[IOS version] As of this writing, Wii's front SD card slot is the fastest storage media available for use in GeeXboX for Wii (IOS). Hot-plugging is not supported. To change the card, use either the GUI menu or wiimote button commands and follow the OSD messages.
*[MINI version] Hot-plugging is supported. At least some MMC cards are also supported.


'''[IOS version]''' As of this writing, Wii's front SD card slot is the fastest storage media available for use in GeeXboX for Wii (IOS). Hot-plugging is not supported. To change the card, use either the GUI menu or wiimote button commands and follow the OSD messages.
'''USB External Storage:'''
*GeeXboX for Wii supports external storage devices connected through Wii's backside USB interfaces, including flash disks, card readers, hard/optical drive enclosures etc.
*Other devices such as mobile phones, MP3/MP4 players and handheld game consoles are also theoretically supported if they can function as USB storage devices.  
*Hot-plugging is possible, except for cards on card readers, which have to be plugged or unplugged while the card reader is detached.


'''[MINI version]''' Hot-plugging is supported. At least some MMC cards are also supported.
'''Partition Type and File System Support:'''
*GeeXboX for Wii supports MS-DOS and Apple partition types, reads nearly all major *nix/Windows/Mac file systems and writes many of them, except exFAT, NTFS, UFS, etc.


===USB External Storage===
'''[MINI version] Wii Native DVD:'''
*Native DVD support is currently incompatible with (at least some) modchips. The affected modchips have to be disabled for GeeXboX for Wii (MINI) to access DVD contents.
*It seems that only DVD-R and pressed Discs are readable. This may or may not change in the future.
*GeeXboX for Wii (MINI) only auto-mounts the disc (if present) during booting. To mount/unmount disc(s) after that, use the GUI menu options or wiimote commands.
*This only concerns non-DVD-VIDEO discs. It is not necessary to mount DVD-VIDEO discs, which can be watched using the 'Play DVD' menu item without mounting.
*GeeXboX for Wii (MINI) bypasses region protection and CSS encryption automatically.


GeeXboX for Wii supports external storage devices connected through Wii's backside USB interfaces, including flash disks, card readers, hard/optical drive enclosures etc. Other devices such as mobile phones, MP3/MP4 players and handheld game consoles are also theoretically supported if they can function as USB storage devices. Hot-plugging is possible, except for cards on card readers, which have to be plugged or unplugged while the card reader is detached.
'''LAN Shares:'''
*GeeXboX for Wii supports both *nix/Mac NFS and Windows (i.e. Samba) shares, as well as Plan 9 9p shares.
*NFS and 9p shares are mounted at boot time. Source paths and mount points are defined in 'nfs' and '9p' files in /GEEXBOX/etc folder, repectively. Examples are given in these files for you to follow when defining your own shares.
*Windows shares can be automatically found and mounted when GeeXboX for Wii is running. If username and/or password are set for these shares, they have to be specified in /GEEXBOX/etc/network.  
*It is also possible to specify static shares to be mounted at boot time by following examples given in /GEEXBOX/etc/network.
*Please make sure that share priviledge and firewall rules are properly set up on the sharing host machine, otherwise the shares may fail to mount.


Partition Type and File System Support
'''LAN UPnP Servers:'''
*GeeXboX for Wii supports accessing UPnP servers on local network.
*These include dedicated LAN UPnP devices, game consoles serving content using UPnP protocol, or PCs running UPnP server software.
*UPnP servers are automatically connected or disconnected, depending on server status, while GeeXboX for Wii is running. UPnP support must be manually enabled by modifing /GEEXBOX/etc/network.


GeeXboX for Wii supports MS-DOS and Apple partition types, reads nearly all major *nix/Windows/Mac file systems and writes many of them, except exFAT, NTFS, UFS, etc.
'''Network Streams:'''
*GeeXboX for Wii supports http/udp/rtp/rtsp protocol network streams, shoutcast/icecast network broadcasts, as well as extended .pls and .m3u playlists over http.
*These have to be manually defined in /GEEXBOX/etc/netstream by following the examples given therein.


===[MINI version]Wii Native DVD===
===Supported Formats===
'''Supported audio/video formats and codecs:'''
*Media playback in GeeXboX for Wii is performed by mplayer, which in turn uses ffmpeg to provide audio and video decoding.
*All formats and codecs supported by ffmpeg are therefore supported by GeeXboX for Wii.
*This means that nearly all of the commonly used container formats and audio/video codecs, including WMA9 (starting with 0.1beta1) are supported by GeeXboX for Wii.
*In addition, MPlayer also offers the possibility of dynamically loading non-open-source binary libraries for decoding certain non-open codecs (see below).
*Due to hardware limitation and/or codec code complexity, certain codecs can not be decoded fast enough, especially at high resolutions/bitrates, and consequently, audio/video artifacts/stuttering/desyncing might occur.


Native DVD support is currently incompatible with (at least some) modchips. The affected modchips have to be disabled for GeeXboX for Wii (MINI) to access DVD contents.
'''Supported subtitle formats:'''
*Mplayer in GeeXboX for Wii supports both major text subtitle formats (.srt, etc.) and vobsub subtitle formats (.idx/.sub).
*Support for .ssa text subtitles is not yet fully implemented. For vobsub subtitles, archived .sub file in .rar format is also supported.


It seems that only DVD-R and pressed Discs are readable. This may or may not change in the future.
'''Using non-open-source binaries:'''
 
*Starting with version 0.1alpha5, GeeXboX for Wii no longer guarantees the usability of non-open-source codec binaries in /GEEXBOX/codecs folder.  
GeeXboX for Wii (MINI) only auto-mounts the disc (if present) during booting. To mount/unmount disc(s) after that, use the GUI menu options or wiimote commands. This only concerns non-DVD-VIDEO discs. It is not necessary to mount DVD-VIDEO discs, which can be watched using the 'Play DVD' menu item without mounting. GeeXboX for Wii (MINI) bypasses region protection and CSS encryption automatically.
*The reasons are 1), the few available binaries may not actually work, as they were compiled against different glibc version using different gcc version; 2) ffmpeg already decodes these codecs natively and with little to no artifacts.  
 
*In addition, unrar is now built-in with GeeXboX for Wii. Therefore, the following is only applicable for 0.1alpha4.
===LAN Shares===
 
GeeXboX for Wii supports both *nix/Mac NFS and Windows (i.e. Samba) shares, as well as Plan 9 9p shares.
 
NFS and 9p shares are mounted at boot time. Source paths and mount points are defined in 'nfs' and '9p' files in /GEEXBOX/etc folder, repectively. Examples are given in these files for you to follow when defining your own shares.
 
Windows shares can be automatically found and mounted when GeeXboX for Wii is running. If username and/or password are set for these shares, they have to be specified in /GEEXBOX/etc/network. It is also possible to specify static shares to be mounted at boot time by following examples given in /GEEXBOX/etc/network. Please make sure that share priviledge and firewall rules are properly set up on the sharing host machine, otherwise the shares may fail to mount.
 
===LAN UPnP Servers===
 
GeeXboX for Wii supports accessing UPnP servers on local network. These include dedicated LAN UPnP devices, game consoles serving content using UPnP protocol, or PCs running UPnP server software. UPnP servers are automatically connected
or disconnected, depending on server status, while GeeXboX for Wii is running. UPnP support must be manually enabled by modifing /GEEXBOX/etc/network.
 
===Network Streams===
 
GeeXboX for Wii supports http/udp/rtp/rtsp protocol network streams, shoutcast/icecast network broadcasts, as well as extended .pls and .m3u playlists over http. These have to be manually defined in /GEEXBOX/etc/netstream by following the examples given therein.
 
==Supported Formats==
 
===Supported audio/video formats and codecs===
 
Media playback in GeeXboX for Wii is performed by mplayer, which in turn uses ffmpeg to provide audio and video decoding. All formats and codecs supported by ffmpeg are therefore supported by GeeXboX for Wii. This means that nearly all of the commonly used container formats and audio/video codecs, including WMA9 (starting with 0.1beta1) are supported by GeeXboX for Wii. In addition, MPlayer also offers the possibility of dynamically loading non-open-source binary libraries for decoding certain non-open codecs (see below).
 
Due to hardware limitation and/or codec code complexity, certain codecs can not be decoded fast enough, especially at high resolutions/bitrates, and consequently, audio/video artifacts/stuttering/desyncing might occur.
 
===Supported subtitle formats===
 
Mplayer in GeeXboX for Wii supports both major text subtitle formats (.srt, etc.) and vobsub subtitle formats (.idx/.sub). Support for .ssa text subtitles is not yet fully implemented. For vobsub subtitles, archived .sub file in .rar format is also supported.
 
===Using non-open-source binaries===
 
Starting with version 0.1alpha5, GeeXboX for Wii no longer guarantees the usability of non-open-source codec binaries in /GEEXBOX/codecs folder. The reasons are 1), the few available binaries may not actually work, as they were compiled against different glibc version using different gcc version; 2) ffmpeg already decodes these codecs natively and with little to no artifacts. In addition, unrar is now built-in with GeeXboX for Wii. Therefore, the following is only applicable for 0.1alpha4.


Due to licence restrictions, GeeXboX for Wii releases do not contain non-open-source binaries. If functions related to such binaries, as mentioned above, are desired, they can be downloaded from http://www1.mplayerhq.hu/MPlayer/releases/codecs/essential-ppc-20071007.tar.bz2 and http://www.rarlab.com/rar/unrar_ppclinux_380b2.tar.bz2. The extracted files should be saved to /GEEXBOX/codecs folder.
Due to licence restrictions, GeeXboX for Wii releases do not contain non-open-source binaries. If functions related to such binaries, as mentioned above, are desired, they can be downloaded from http://www1.mplayerhq.hu/MPlayer/releases/codecs/essential-ppc-20071007.tar.bz2 and http://www.rarlab.com/rar/unrar_ppclinux_380b2.tar.bz2. The extracted files should be saved to /GEEXBOX/codecs folder.


==Networking==
===Networking===
====USB Ethernet====
Hardware:
*USB ethernet device support in GeeXboX for Wii is provided by linux kernel (2.6.31 as of this writing).
*Many adapters and PC-to-PC connectors are supported, including the adapter for Wii sold by Nintendo.


===USB Ethernet===
Setup:
====Hardware====
*By default, GeeXboX for Wii will attempt to use DHCP to obtain IP address and gateway information, if USB ethernet device is detected and powered up.  
USB ethernet device support in GeeXboX for Wii is provided by linux kernel (2.6.31 as of this writing). Many adapters and PC-to-PC connectors are supported, including the over-priced adapter for Wii sold by Nintendo.
*To use static IP address, /GEEXBOX/etc/network must be modified to provide the necessary information.
*Values for options HOST, SUBNET, GATEWAY, DNS_SERVER and possibly DHCP_TIMEOUT must be correctly specified.


====Setup====
[MINI version] If you wish to use USB ethernet rather than native wifi, you must set PHY_TYPE to "ethernet" in /GEEXBOX/etc/network.
By default, GeeXboX for Wii will attempt to use DHCP to obtain IP address and gateway information, if USB ethernet device is detected and powered up. To use static IP address, /GEEXBOX/etc/network must be modified to provide the necessary information. Values for options HOST, SUBNET, GATEWAY, DNS_SERVER and possibly DHCP_TIMEOUT must be correctly specified.


'''[MINI version]''' If you wish to use USB ethernet rather than native wifi, you must set PHY_TYPE to “ethernet” in /GEEXBOX/etc/network.
====Bluetooth====
Hardware:
*Wii's built-in bluetooth adapter is used for bluetooth networking in GeeXboX for Wii.
*For ethernet over bluetooth, remote PC or handheld devices should support bluetooth PAN.
*For obex over bluetooth, remote devices should support OBEXPUSH and/or OBEXFTP.
*Due to imperfections in current Wii USB host contrller driver, many bluetooth functions in GeeXboX for Wii are still buggy. The following services are disabled by default.


===Bluetooth===
Ethernet over bluetooth:
====Hardware====
*To enable bluetooth PAN, you have to modify /GEEXBOX/etc/bluez and specify correct values for PAN-related options.  
Wii's built-in bluetooth adapter is used for bluetooth networking in GeeXboX for Wii. For ethernet over bluetooth, remote PC or handheld devices should support bluetooth PAN. For obex over bluetooth, remote devices should support OBEXPUSH and/or OBEXFTP. Due to imperfections in current Wii USB host contrller driver, many bluetooth functions in GeeXboX for Wii are still buggy. The following services are disabled by default.
*Prior experience with using bluetooth PAN, especially in linux, is recommended.


====Ethernet over bluetooth====
Obex over bluetooth:
To enable bluetooth PAN, you have to modify /GEEXBOX/etc/bluez and specify correct values for PAN-related options. Prior experience with using bluetooth PAN, especially in linux, is recommended.
*GeeXboX for Wii supports OBEXPUSH between Wii and remote devices. Pushed files received by Wii are stored in the folder specified in /GEEXBOX/etc/obex.
*Pushing files from Wii is currently only implemented for USB keyboard operation (pressing 'B' when file is highlighted), but adding it to wiimote operation is possbile and easy.
*Obex related configurations are stored in /GEEXBOX/etc/obex and some functions are configurable though GUI options menu.


====Obex over bluetooth====
Audio over bluetooth:
GeeXboX for Wii supports OBEXPUSH between Wii and remote devices. Pushed files received by Wii are stored in the folder specified in /GEEXBOX/etc/obex. Pushing files from Wii is currently only implemented for USB keyboard operation (pressing 'B' when file is highlighted), but adding it to wiimote operation is possbile and easy. Obex related configurations are stored in /GEEXBOX/etc/obex and some functions are configurable though GUI options menu.
*GeeXboX for Wii supports streaming mono or stereo (A2DP) audio to bluetooth headsets.  
*Bluetooth MAC address of remote device must be specified in /GEEXBOX/etc/bluez.
*Switching between normal audio and bluetooth audio is done through GUI options menu.


====Audio over bluetooth====
====[MINI version] Wifi====
GeeXboX for Wii supports streaming mono or stereo (A2DP) audio to bluetooth headsets. Bluetooth MAC address of remote device must be specified in /GEEXBOX/etc/bluez. Switching between normal audio and bluetooth audio is done through GUI
Setup:
options menu.
*Wifi setup is done through specifying related options in /GEEXBOX/etc/network.  
*If problems are encountered while connecting to AP/router using WPA encryption, different WPA_SCAN_SSID and/or WPA_AP_SCAN values can be tried.
*Note that wifi support is not yet perfect speed-wise (see this link).


===[MINI version] Wifi===
Network Services:
====Setup====
*GeeXboX for Wii features built-in TELNET, FTP and HTTP server services, which run over any available USB ethernet, bluetooth PAN, or Wifi (MINI version only).
Wifi setup is done through specifying related options in /GEEXBOX/etc/network. If problems are encountered while connecting to AP/router using WPA encryption, different WPA_SCAN_SSID and/or WPA_AP_SCAN values can be tried. Note that wifi support is not yet perfect speed-wise (see this link).
*They are disabled by default and can be enabled by modifying /GEEXBOX/etc/network.


====Network Services====
TELNET:
*There is no username/password set for TELNET service and clients will be logging in as root.


GeeXboX for Wii features built-in TELNET, FTP and HTTP server services, which run over any available USB ethernet, bluetooth PAN, or Wifi (MINI version only). They are disabled by default and can be enabled by modifying /GEEXBOX/etc/network.
FTP:
*User name and password for FTP service are defined in /GEEXBOX/etc/ftp.


====TELNET====
HTTP:
There is no username/password set for TELNET service and clients will be logging in as root.
*The built-in HTTP server in GeeXboX for Wii serves only as remote control GUI interface. To modify or add content, files in /GEEXBOX/var/www can be edited.


====FTP====
===Customization===
User name and password for FTP service are defined in /GEEXBOX/etc/ftp.
GeeXboX for Wii allows for customization of many of its built-in features, most of them are detailed in the [https://fartersoft.com/geexboxforwii/usage/customization/ official site].  


====HTTP====
Customization generally requires editing of /GEEXBOX/settings and files in /GEEXBOX/etc folder.  
The built-in HTTP server in GeeXboX for Wii serves only as remote control GUI interface. To modify or add content, files in /GEEXBOX/var/www can be edited.


==Customization==
These files should be edited in *nix or, if Windows is used, in *nix-compatible text editors, otherwise desired effects may not be achieved and boot failure may occur.
===General Note===
 
GeeXboX for Wii allows for customization of many of its built-in features, most of them are detailed in this and other pages on this site. Customization generally requires editing of /GEEXBOX/settings and files in /GEEXBOX/etc folder. These files should be edited in *nix or, if Windows is used, in *nix-compatible text editors, otherwise desired effects may not be achieved and boot failure may occur.
 
===Boot Mode===
 
GeeXboX for Wii supports two boot modes: normal and debugging. Debugging mode provides a text console to debug various
problems, or if so desired, to use Wii as a linux machine. Input in debugging mode requires USB keyboard. To boot in debugging mode, edit /GEEXBOX/settings and change the value of 'RUNLEVEL' option to 'debug'. Once in debugging mode, enter 'exit' to exit to GUI menu.
 
===Language and Fonts===
 
GeeXboX, through contribution by developers and users from all over the world, supports many major languages, and so does the Wii port. It is also possible to specify different languages for GUI menu and subtitles. To change menu or subtitle language, change the values of 'MENU_LANG' and 'SUB_CHARSET' in /GEEXBOX/settings. Do not confuse this subtitle language with the subtitle languages selectable in GUI menu. As the option name indicates, here language actually refers to the character set the subtitles are encoded in.
 
For certain languages, especially east-Asian languages, corresponding fonts must be provided. Consult /GEEXBOX/etc/lang.conf for the correct file name the font file should use. Alternatively, /GEEXBOX/etc/lang.conf can be edited to match custom font file name.
 
Fonts used by GeeXboX for Wii are stored in /GEEXBOX/usr/share/fonts folder. Fonts required for east-Asian languages should be copied here. For other languages, the default font files can also be replaced to change the GUI font. Please note that large-size font files should be avoided, as they take up too much memory space. Also, remember to delete any unused font files in the folder.
 
===Keyboard Layout===
 
This only concerns USB keyboard users. By default, 'QWERTY' layout is used in GeeXboX for Wii. To change to other layouts, edit /GEEXBOX/settings and change the value of option 'KEYMAP' accordingly. This feature is currently untested.
 
===Themes===
 
Boot splash screen of GeeXboX for Wii is hardcoded and not easily changeable. GUI background image (video actually) can be changed by replacing background.avi or background-wide.avi (for widescreen users) in /GEEXBOX/usr/share/mplayer. Please note that large-size avi files should be avoided, as they take up too much memory space.
 
===Display Aspect===
 
GeeXboX for Wii does not have the ability to autodetect whether widescreen mode is being used by Wii. Additionally, due to lack of hardware scaling, images output by GeeXboX for Wii is often in incorrect aspect ratio when displayed. To compensate for this, the value for option 'MONITORASPECT' in /GEEXBOX/settings can be modified. Some suggested values are provided for certain setups. Feel free to experiment with different values to achieve correct aspect ratio on your setup. If widescreen mode is being used by Wii, value of option 'WIDE' in /GEEXBOX/settings can be set to 'yes'. This only affects the GUI background image though.


==Media==
==Media==
'''WII homebrew: GeeXboX on WII''' ([https://www.youtube.com/watch?v=oFzZaC2D_yk farterwii]) <br>
'''WII homebrew: GeeXboX on WII''' ([https://www.youtube.com/watch?v=oFzZaC2D_yk farterwii]) <br>
<youtube>oFzZaC2D_yk</youtube>
<youtube>oFzZaC2D_yk</youtube>
==Known issues==
Most functions of Wii, including bluetooth/wiimote, DVD, wireless, LAN etc., are not supported by this version, due to limitations of the Linux kernel. There are terrible bugs too, so please regard this rather as a demo.


== Changelog ==
== Changelog ==
'''2010-02-27:'''
'''0.1.3b 2010/02/27'''
0.1.3b
*Updated linux to 2.6.32.9.
*Updated linux to 2.6.32.9
*Updated ffmpeg to r21465.
*Updated ffmpeg to r21465
*Updated MPlayer to r30437.
*Updated MPlayer to r30437
*Fixed compatibility with certain charset encodings.
*Fixed compatibility with certain charset encodings


'''2009-12-25:'''
'''0.1.2b 2009/12/25'''
0.1.2b
Updated linux to 2.6.32.2.
*Updated linux to 2.6.32.2
*Fixed compatibility with multi-channel audio.
*Fixed compatibility with multi-channel audio
*Fixed issues with device mounting/unmounting.
*Fixed issues with device mounting/unmounting


'''2009-10-16:'''
'''0.1.8a 2009/10/16'''
0.1.8a
*Updated linux to 2.6.29.6.
*Updated linux to 2.6.29.6
*Updated MPlayer and ffmpeg to 2009-10-03 snapshots.
*Updated MPlayer and ffmpeg to 2009-10-03 snapshots
*Added fuseiso to handle more disc image formats.
*Added fuseiso to handle more disc image formats
*Fixed OSD and aspect ratio in FBI image viewer.
*Fixed OSD and aspect ratio in FBI image viewer
*Added compatibility with new HBC title ID.
*Added compatibility with new HBC title ID


'''2009-04-23:'''
'''0.1.7a 2009/04/23'''
0.1.7a
*Updated linux to 2.6.29.1.
*Updated linux to 2.6.29.1
*Support for reading exFAT partition.
*Support for reading exFAT partition
*Fixed wiimote (re)connection.
*Fixed wiimote (re)connection


'''2009-03-21:'''
'''0.1.6a 2009/03/21'''
0.1.6a
Updated linux to 2.6.27.19.
*Updated linux to 2.6.27.19
*Updated MPlayer to r28852.
*Updated MPlayer to r28852
*Map seeking to arrow keys too.
*Map seeking to arrow keys too
*Fixed mounting usb storages at bootup.
*Fixed mounting usb storages at bootup
*Fixed unmounting disc images.
*Fixed unmounting disc images


'''2009-03-14:'''
'''0.1.5a 2009/03/14'''
0.1.5a
*Updated linux to 2.6.24.7.
*Updated linux to 2.6.24.7
*Support for SDHC (partial).
*Support for SDHC (partial)
*Updated MPlayer to r28184.
*Updated MPlayer to r28184
*Fixed boot from SD cards with no partition table.
*Fixed boot from SD cards with no partition table
*Support for SD cards with multi-partitions.
*Support for SD cards with multi-partitions
*Use built-in unrar.
*Use built-in unrar
*Dropped support for non-open binary codecs.
*Dropped support for non-open binary codecs
*Disabled most playback-unrelated services by default.
*Disabled most playback-unrelated services by default


'''2008-10-18:'''
'''0.1.4a 2008/10/18'''
0.1.4a
*Reverted libswscale to fix GOOM audio visual rendering.
*Reverted libswscale to fix GOOM audio visual rendering
*Improved GOOM audio visual performance.
*Improved GOOM audio visual performance
*Improved performance in lowering subtitle mode.
*Improved performance in lowering subtitle mode
*Made lowering subtitles work with DVD-VIDEO.
*Made lowering subtitles work with DVD-VIDEO
*Made lowering subtitles work with on-the-fly aspect ratio change.
*Made lowering subtitles work with on-the-fly aspect ratio change
*Support for optional mounting .nrg (DVD only) and .iso image file.
*Support for optional mounting .nrg (DVD only) and .iso image file
*Display CPU version number in OPTIONS -> INFO.
*Display CPU version number in OPTIONS -> INFO
*Updated GCC to 4.3.2
*Updated GCC to 4.3.2


'''2008-10-01:'''
'''0.1.3a 2008/10/01'''
0.1.3a
*Implementation of optional 'vsync' to improve screen tearing in certain cases.
*Implementation of optional 'vsync' to improve screen tearing in certain cases
*Support for on-the-fly aspect ratio change.
*Support for on-the-fly aspect ratio change
*Fixed DVD-VIDEO aspect ratio error when switching between menu and movie.
*Fixed DVD-VIDEO aspect ratio error when switching between menu and movie
*Disabled libass to fix lagging and freezing caused by text subtitles.
*Disabled libass to fix lagging and freezing caused by text subtitles
*Disabled colored spu to fix DVD-VIDEO/vobsub subtitle display.
*Disabled colored spu to fix DVD-VIDEO/vobsub subtitile display
*Support for vobsub subtitles in rar archive format.
*Support for vobsub subtitles in rar archive format
*Support for optionally lowering subtitles into blackbars.
*Support for optionally lowering subtitles into blackbars
*Fixed subtitle charset conversion.
*Fixed subtitle charset conversion
*Updated to MPlayer r27630.
*Updated to MPlayer r27630


'''2008-08-08:'''
'''0.1.2a 2008/08/08:'''
0.1.2a
*Simplified wiimote connection and reconnection.
*Simplified wiimote connection and reconnection
*Auto-repeat wiimote commands when buttons are held down.
*Auto-repeat wiimote commands when buttons are held down
*Updated Kernel patch.
*Updated Kernel patch
*Updated to MPlayer svn snapshot 2008-08-06.
*Updated to MPlayer svn snapshot 2008-08-06


'''2008-07-30:'''
'''0.1.1a 2008/07/30'''
0.1.1a
*NTSC/PAL autodection (supposed to work).
*NTSC/PAL autodection (supposed to work)
*Improved support for widescreen mode.
*Improved support for widescreen mode
*Aspect ratio software compensation support.
*Aspect ratio software compensation support
*Improved Wiimote connection/reconnection routine.
*Improved Wiimote connection/reconnection routine
*User-friendlier handling of boot failure.
*User-friendlier handling of boot failure


'''2008-07-17:'''
'''0.1a 2008/07/17'''
0.1a
Based on whiite-linux-0.1a which has USB host controller enabled.
*Based on whiite-linux-0.1a which has USB host controller enabled
*USB and network related functions of GeeXboX are therefore included in this release.
*USB and network related functions of GeeXboX are therefore included in this release
*Fixed keypressing and OSD color bug in previous version.
*Fixed keypressing and OSD color bug in previous version


'''2008-06-24:'''
'''2008/06/24'''
* Prototype release
* Prototype release


Line 367: Line 309:


==External links==
==External links==
* Official Website - https://fartersoft.com/geexboxforwii/
* Official website - https://fartersoft.com/geexboxforwii/
* Sourceforge - https://sourceforge.net/projects/geexboxforwii/
* Sourceforge - https://sourceforge.net/projects/geexboxforwii/

Latest revision as of 10:34, 28 January 2024

GeeXboX
Geexbox-wii.jpg
General
Authorfarter
TypeMedia Players
Version0.1beta3 IOS/MINI
LicenseGPL-2.0
Last Updated2010/02/27
Links
Download
Website
Source

GeeXboX is a free embedded Linux distribution which aims at turning your computer into a so called HTPC (Home Theater PC) or Media Center.

GeeXboX for Wii is an unofficial port of GeeXboX, to run on Nintendo Wii game console. This has been made possible by the excellent work of Wii "hackers" and homebrewers, especially TeamTwiizers and the gc-linux team.

Features

  • Wii homebrew.
  • Wii linux distro.
  • Wii media player.
  • Wii media center.

Installation

Starting with 0.1beta1, GeeXboX for Wii is released as two separate versions: GeeXboX for Wii (IOS) and GeeXboX for Wii (MINI). It is difficult to explain the differences between the two to someone without prior knowledge about Homebrew Channel (HBC) and Bootmii, etc.

GeeXboX for Wii (IOS) is the continuation of previous 0.1alpha releases and has to be launched by, preferably, HBC or other similar homebrew loading methods. This version does not support native WiFi or DVD; does not support USB 2.0; does not support front SD slot hot-swapping; does support returning to HBC.

GeeXboX for Wii (MINI) is basically the IOS version modified to take advantage of MINI firmware and has to be launched through MINI, i.e. manually from Bootmii GUI or automatically by replacing ppcboot.elf in bootmii folder. This version does support native WiFi (currently at a rather low speed); does support USB 2.0; does support front SD slot hot-swapping; does support native DVD; does not support returning to HBC.

Except the differences listed above, the IOS and MINI versions are nearly identical as far as other features are concerned. Please note that the extra features in MINI version do put heavier burden on CPU and memory usage. Therefore, if the MINI version-specific features are of little or no use to you, you are advised to stick to the IOS version.

A homebrew-enabled Wii and SD card is required, you can find the setup guide on the official website.

User guide

Controls

Wiimote

Setup:

  • Wiimote is the default remote control device in GeeXboX for Wii. For unmodified versions, nothing needs to be changed to enable wiimote support.
  • If in doubt, check that in /GEEXBOX/settings file, the 'REMOTE=wiimote' and 'WIIMOTE=00:00:00:00:00:00' lines are not modified or commented out.

Connection/Disconnection:

  • When GeeXboX for Wii has booted successfully, press ANY button, except the 'power' button, on wiimote and it will automatically tries to connect to GeeXboX for Wii.
  • If connection is successful, LEDs on the wiimote will flash and wiimote will rumble for a short while.
  • The connection is automatically terminated by the power-saving feature of the wiimote after long periods of inactivity and can also be manually terminated by pressing the 'power' button.
  • Reconnection is done by pressing ANY button, except the 'power' button, again.

Controls:

  • Only single and combo button-pressings on the wiimote are received by GeeXboX for Wii to trigger specific events.
  • Therefore, it is useless to point wiimote at the sensor bar, which is powered off by the way, or to wave the wiimote in any fashion.
  • Holding down button(s) will send repeated commands at a rate of about 4 times per second.
  • Detailed button commands can be viewed from the GUI 'help' menu. For customization of the commands, lircd_wiimote.conf and lircrc_wiimote files in /GEEXBOX/etc/lirc can be modified, which requires prior knowledge of lirc config file formats and is not advised for ordinary users.

Keyboards

Setup:

  • GeeXboX for Wii supports keyboard control by default and such support does not conflict with other remote control devices.
  • Therefore, it is not necessary to try to enable or disable such support.

Connection/Disconnection:

  • USB devices are hot-pluggable in GeeXboX for Wii and USB keyboards are no exception.
  • This is probably also true for RF wireless keyboards with USB receivers.
  • Bluetooth keyboards usually requires pairing before they can be used. To be able to use bluetooth keyboards in GeeXboX for Wii, the /GEEXBOX/etc/bluez file must be modified to set the correct paring key, specify the keyboard bluetooth MAC if targeted connection is desired, and uncomment proper HID-related options. Prior knowledge and experience of using bluetooth keyboards in linux is required.

Controls:

  • GeeXboX currently only supports single pressing of basic keys. Combo keys and multimedia keys are not yet supported.
  • Simplified information about keyboard control is available from GUI "help" menu and /GEEXBOX/etc/mplayer/input.conf.

Bluetooth Mobile Phones

Supported devices:

  • Not all bluetooth-enabled phones are usable as remote control for GeeXboX for Wii.
  • For an inexhaustive list of usable models, check out this anyremote page (GeeXboX for Wii does not use anyremote though).
  • Models listed there as working in bluetooth AT mode should be usable.

Setup:

  • Please note that 1), wiimote support will be disabled when mobile phones are used as remote control; 2), prior knowledge and experience of using bluetooth devices in linux is required for setup.

To specify mobile phone as remote control device, the first step is to edit /GEEXBOX/settings file and change the value of 'REMOTE' to 'bluemobile'.

  • For some (Sony)Ericsson models, it is also possible to set 'REMOTE' to 'bte'. Then /GEEXBOX/etc/bluez file should be modified to set the default pass key and specify the bluetooth MAC and serial service channel of the mobile phone by setting the respective options to correct values.
  • Finally, on the mobile phone, bluetooth should be enabled and the phone should be made discoverable and connectable. Consult the phone's user manual for detailed procedures.

Connection/Disconnection:

  • If setup is successful, upon booting of GeeXboX for Wii, you will be prompted on the phone to enter pass key for incoming connection.
  • Enter the pass key specified in /GEEXBOX/etc/bluez and the phone will start to function as a remote control.

Controls:

  • Only single key-pressing-releasing events are supported. Key definitions in the released versions are based on Benq-Siemens S68 and specified in lircd_bluemobile.conf and lircrc_bluemobile files in /GEEXBOX/etc/lirc folder.
  • Edit these files to customize for other models. If the bte driver is used instead of bluemobile driver, edit lircd_bte.conf and lircrc_bte files in the same folder to customize.
  • Prior knowledge of lirc config file formats is requried for such editing.

Network

GeeXboX for Wii comes with built-in http server, which provides web-based playback control and is accessible through USB ethernet, bluetooth or wifi (MINI version only). The interface is straightforward and requires no explanation.

See the "Networking" section for more information about networking.

GeeXboX for Wii also supports, theoretically, remote control through lirc over udp. This is an untested feature and only advanced lirc users should attempt to make it work.

Media sources

Front SD Slot:

  • [IOS version] As of this writing, Wii's front SD card slot is the fastest storage media available for use in GeeXboX for Wii (IOS). Hot-plugging is not supported. To change the card, use either the GUI menu or wiimote button commands and follow the OSD messages.
  • [MINI version] Hot-plugging is supported. At least some MMC cards are also supported.

USB External Storage:

  • GeeXboX for Wii supports external storage devices connected through Wii's backside USB interfaces, including flash disks, card readers, hard/optical drive enclosures etc.
  • Other devices such as mobile phones, MP3/MP4 players and handheld game consoles are also theoretically supported if they can function as USB storage devices.
  • Hot-plugging is possible, except for cards on card readers, which have to be plugged or unplugged while the card reader is detached.

Partition Type and File System Support:

  • GeeXboX for Wii supports MS-DOS and Apple partition types, reads nearly all major *nix/Windows/Mac file systems and writes many of them, except exFAT, NTFS, UFS, etc.

[MINI version] Wii Native DVD:

  • Native DVD support is currently incompatible with (at least some) modchips. The affected modchips have to be disabled for GeeXboX for Wii (MINI) to access DVD contents.
  • It seems that only DVD-R and pressed Discs are readable. This may or may not change in the future.
  • GeeXboX for Wii (MINI) only auto-mounts the disc (if present) during booting. To mount/unmount disc(s) after that, use the GUI menu options or wiimote commands.
  • This only concerns non-DVD-VIDEO discs. It is not necessary to mount DVD-VIDEO discs, which can be watched using the 'Play DVD' menu item without mounting.
  • GeeXboX for Wii (MINI) bypasses region protection and CSS encryption automatically.

LAN Shares:

  • GeeXboX for Wii supports both *nix/Mac NFS and Windows (i.e. Samba) shares, as well as Plan 9 9p shares.
  • NFS and 9p shares are mounted at boot time. Source paths and mount points are defined in 'nfs' and '9p' files in /GEEXBOX/etc folder, repectively. Examples are given in these files for you to follow when defining your own shares.
  • Windows shares can be automatically found and mounted when GeeXboX for Wii is running. If username and/or password are set for these shares, they have to be specified in /GEEXBOX/etc/network.
  • It is also possible to specify static shares to be mounted at boot time by following examples given in /GEEXBOX/etc/network.
  • Please make sure that share priviledge and firewall rules are properly set up on the sharing host machine, otherwise the shares may fail to mount.

LAN UPnP Servers:

  • GeeXboX for Wii supports accessing UPnP servers on local network.
  • These include dedicated LAN UPnP devices, game consoles serving content using UPnP protocol, or PCs running UPnP server software.
  • UPnP servers are automatically connected or disconnected, depending on server status, while GeeXboX for Wii is running. UPnP support must be manually enabled by modifing /GEEXBOX/etc/network.

Network Streams:

  • GeeXboX for Wii supports http/udp/rtp/rtsp protocol network streams, shoutcast/icecast network broadcasts, as well as extended .pls and .m3u playlists over http.
  • These have to be manually defined in /GEEXBOX/etc/netstream by following the examples given therein.

Supported Formats

Supported audio/video formats and codecs:

  • Media playback in GeeXboX for Wii is performed by mplayer, which in turn uses ffmpeg to provide audio and video decoding.
  • All formats and codecs supported by ffmpeg are therefore supported by GeeXboX for Wii.
  • This means that nearly all of the commonly used container formats and audio/video codecs, including WMA9 (starting with 0.1beta1) are supported by GeeXboX for Wii.
  • In addition, MPlayer also offers the possibility of dynamically loading non-open-source binary libraries for decoding certain non-open codecs (see below).
  • Due to hardware limitation and/or codec code complexity, certain codecs can not be decoded fast enough, especially at high resolutions/bitrates, and consequently, audio/video artifacts/stuttering/desyncing might occur.

Supported subtitle formats:

  • Mplayer in GeeXboX for Wii supports both major text subtitle formats (.srt, etc.) and vobsub subtitle formats (.idx/.sub).
  • Support for .ssa text subtitles is not yet fully implemented. For vobsub subtitles, archived .sub file in .rar format is also supported.

Using non-open-source binaries:

  • Starting with version 0.1alpha5, GeeXboX for Wii no longer guarantees the usability of non-open-source codec binaries in /GEEXBOX/codecs folder.
  • The reasons are 1), the few available binaries may not actually work, as they were compiled against different glibc version using different gcc version; 2) ffmpeg already decodes these codecs natively and with little to no artifacts.
  • In addition, unrar is now built-in with GeeXboX for Wii. Therefore, the following is only applicable for 0.1alpha4.

Due to licence restrictions, GeeXboX for Wii releases do not contain non-open-source binaries. If functions related to such binaries, as mentioned above, are desired, they can be downloaded from http://www1.mplayerhq.hu/MPlayer/releases/codecs/essential-ppc-20071007.tar.bz2 and http://www.rarlab.com/rar/unrar_ppclinux_380b2.tar.bz2. The extracted files should be saved to /GEEXBOX/codecs folder.

Networking

USB Ethernet

Hardware:

  • USB ethernet device support in GeeXboX for Wii is provided by linux kernel (2.6.31 as of this writing).
  • Many adapters and PC-to-PC connectors are supported, including the adapter for Wii sold by Nintendo.

Setup:

  • By default, GeeXboX for Wii will attempt to use DHCP to obtain IP address and gateway information, if USB ethernet device is detected and powered up.
  • To use static IP address, /GEEXBOX/etc/network must be modified to provide the necessary information.
  • Values for options HOST, SUBNET, GATEWAY, DNS_SERVER and possibly DHCP_TIMEOUT must be correctly specified.

[MINI version] If you wish to use USB ethernet rather than native wifi, you must set PHY_TYPE to "ethernet" in /GEEXBOX/etc/network.

Bluetooth

Hardware:

  • Wii's built-in bluetooth adapter is used for bluetooth networking in GeeXboX for Wii.
  • For ethernet over bluetooth, remote PC or handheld devices should support bluetooth PAN.
  • For obex over bluetooth, remote devices should support OBEXPUSH and/or OBEXFTP.
  • Due to imperfections in current Wii USB host contrller driver, many bluetooth functions in GeeXboX for Wii are still buggy. The following services are disabled by default.

Ethernet over bluetooth:

  • To enable bluetooth PAN, you have to modify /GEEXBOX/etc/bluez and specify correct values for PAN-related options.
  • Prior experience with using bluetooth PAN, especially in linux, is recommended.

Obex over bluetooth:

  • GeeXboX for Wii supports OBEXPUSH between Wii and remote devices. Pushed files received by Wii are stored in the folder specified in /GEEXBOX/etc/obex.
  • Pushing files from Wii is currently only implemented for USB keyboard operation (pressing 'B' when file is highlighted), but adding it to wiimote operation is possbile and easy.
  • Obex related configurations are stored in /GEEXBOX/etc/obex and some functions are configurable though GUI options menu.

Audio over bluetooth:

  • GeeXboX for Wii supports streaming mono or stereo (A2DP) audio to bluetooth headsets.
  • Bluetooth MAC address of remote device must be specified in /GEEXBOX/etc/bluez.
  • Switching between normal audio and bluetooth audio is done through GUI options menu.

[MINI version] Wifi

Setup:

  • Wifi setup is done through specifying related options in /GEEXBOX/etc/network.
  • If problems are encountered while connecting to AP/router using WPA encryption, different WPA_SCAN_SSID and/or WPA_AP_SCAN values can be tried.
  • Note that wifi support is not yet perfect speed-wise (see this link).

Network Services:

  • GeeXboX for Wii features built-in TELNET, FTP and HTTP server services, which run over any available USB ethernet, bluetooth PAN, or Wifi (MINI version only).
  • They are disabled by default and can be enabled by modifying /GEEXBOX/etc/network.

TELNET:

  • There is no username/password set for TELNET service and clients will be logging in as root.

FTP:

  • User name and password for FTP service are defined in /GEEXBOX/etc/ftp.

HTTP:

  • The built-in HTTP server in GeeXboX for Wii serves only as remote control GUI interface. To modify or add content, files in /GEEXBOX/var/www can be edited.

Customization

GeeXboX for Wii allows for customization of many of its built-in features, most of them are detailed in the official site.

Customization generally requires editing of /GEEXBOX/settings and files in /GEEXBOX/etc folder.

These files should be edited in *nix or, if Windows is used, in *nix-compatible text editors, otherwise desired effects may not be achieved and boot failure may occur.

Media

WII homebrew: GeeXboX on WII (farterwii)

Known issues

Most functions of Wii, including bluetooth/wiimote, DVD, wireless, LAN etc., are not supported by this version, due to limitations of the Linux kernel. There are terrible bugs too, so please regard this rather as a demo.

Changelog

0.1.3b 2010/02/27

  • Updated linux to 2.6.32.9.
  • Updated ffmpeg to r21465.
  • Updated MPlayer to r30437.
  • Fixed compatibility with certain charset encodings.

0.1.2b 2009/12/25 Updated linux to 2.6.32.2.

  • Fixed compatibility with multi-channel audio.
  • Fixed issues with device mounting/unmounting.

0.1.8a 2009/10/16

  • Updated linux to 2.6.29.6.
  • Updated MPlayer and ffmpeg to 2009-10-03 snapshots.
  • Added fuseiso to handle more disc image formats.
  • Fixed OSD and aspect ratio in FBI image viewer.
  • Added compatibility with new HBC title ID.

0.1.7a 2009/04/23

  • Updated linux to 2.6.29.1.
  • Support for reading exFAT partition.
  • Fixed wiimote (re)connection.

0.1.6a 2009/03/21 Updated linux to 2.6.27.19.

  • Updated MPlayer to r28852.
  • Map seeking to arrow keys too.
  • Fixed mounting usb storages at bootup.
  • Fixed unmounting disc images.

0.1.5a 2009/03/14

  • Updated linux to 2.6.24.7.
  • Support for SDHC (partial).
  • Updated MPlayer to r28184.
  • Fixed boot from SD cards with no partition table.
  • Support for SD cards with multi-partitions.
  • Use built-in unrar.
  • Dropped support for non-open binary codecs.
  • Disabled most playback-unrelated services by default.

0.1.4a 2008/10/18

  • Reverted libswscale to fix GOOM audio visual rendering.
  • Improved GOOM audio visual performance.
  • Improved performance in lowering subtitle mode.
  • Made lowering subtitles work with DVD-VIDEO.
  • Made lowering subtitles work with on-the-fly aspect ratio change.
  • Support for optional mounting .nrg (DVD only) and .iso image file.
  • Display CPU version number in OPTIONS -> INFO.
  • Updated GCC to 4.3.2

0.1.3a 2008/10/01

  • Implementation of optional 'vsync' to improve screen tearing in certain cases.
  • Support for on-the-fly aspect ratio change.
  • Fixed DVD-VIDEO aspect ratio error when switching between menu and movie.
  • Disabled libass to fix lagging and freezing caused by text subtitles.
  • Disabled colored spu to fix DVD-VIDEO/vobsub subtitle display.
  • Support for vobsub subtitles in rar archive format.
  • Support for optionally lowering subtitles into blackbars.
  • Fixed subtitle charset conversion.
  • Updated to MPlayer r27630.

0.1.2a 2008/08/08:

  • Simplified wiimote connection and reconnection.
  • Auto-repeat wiimote commands when buttons are held down.
  • Updated Kernel patch.
  • Updated to MPlayer svn snapshot 2008-08-06.

0.1.1a 2008/07/30

  • NTSC/PAL autodection (supposed to work).
  • Improved support for widescreen mode.
  • Aspect ratio software compensation support.
  • Improved Wiimote connection/reconnection routine.
  • User-friendlier handling of boot failure.

0.1a 2008/07/17 Based on whiite-linux-0.1a which has USB host controller enabled.

  • USB and network related functions of GeeXboX are therefore included in this release.
  • Fixed keypressing and OSD color bug in previous version.

2008/06/24

  • Prototype release

Credits

The GeeXboX for Wii project is possible as a result of the excellent work by the Team Twiizers, the GameCube Linux team, and of course the GeeXboX team.

This project is also greatly helped by the following donators, whose generosity is deeply appreciated:

  • torben_s
  • S. Lippert
  • elsnorro

External links

Advertising: