stouyapi - OUYA API server

A static API for the OUYA gaming console that still lets you sign in and install games, despite the OUYA server shutdown in 2019. It brings the "DISCOVER" store back.

This is a static dummy server. It will not store any user data. Your votes and likes will not influence anything. Your username will always be "stouyapi".

Have a look a the OUYA games list!

How to use

If you boot up your OUYA and see the main menu (not the language setup), then all you need is to point your OUYA to this server:

  1. Power the OUYA on
  2. Attach the OUYA via USB (Micro USB cable) to your computer
  3. Create a text file ouya_config.properties in the OUYA's top-level directory with the following content:
    OUYA_SERVER_URL=http://ouya.cweiske.de
    OUYA_STATUS_SERVER_URL=http://ouya.cweiske.de/api/v1/status
    (If you do that via adb shell or directly on the OUYA, then the file path must be /sdcard/ouya_config.properties.)

The changes should take effect immediately. If they do not, reboot the OUYA once.

Hints

  1. Do not try to use HTTPS because the OUYA does not support SNI.
  2. The OUYA connects to your PC in MTP mode
  3. If your PC does not see the OUYA, use a data transfer micro USB cable with 4 wires instead of a charging-only cable with 2 wires

Factory reset

The config file alone does not help on a factory-reset OUYA gaming console, because OUYA's setup ("OOBE") does not use it for its network connectivity check. You will be stuck at the "network selection" screen with one of the following error messages:

It seems we're unable to connect to the OUYA servers at the moment. We'd recommend confirming your Ethernet and Wi-Fi settings before trying again.

or

Cannot establish a connection with the OUYA Servers. To turn on Wi-Fi, unplug your Ethernet cable and proceed. To retry ethernet, please check your connection and then unplug and re-plug your cable.

There are two ways to get over the connectivity check, all involve changing some DNS-related things:

Modify /system/etc/hosts on the OUYA

This method will surely work, but takes the most steps. You need to have the "Android Debug Bridge" (adb) command line tool installed on your PC. Have a look at Cyanogen Mod CM11 and the Ouya, it has installation instructions for adb on windows.

  1. On your PC, run adb shell
  2. Type su to become the root user
  3. Make the system partition writable:
    mount -o rw,remount -t ext4 /dev/block/platform/sdhci-tegra.3/by-name/APP
  4. Open the hosts file:
    vi /system/etc/hosts
  5. Press the “down arrow” key until your are at the end
  6. Press i to get into “insert mode”
  7. paste/write that line:
    83.169.45.222 devs.ouya.tv status.ouya.tv
  8. Press return to add a final newline
  9. Press escape
  10. Type :wq (commmand, write, quit)
  11. Press return to exit the vi editor

The connectivity check should work now without rebooting.

Router DNS mapping

Only few routers support this! E.g. "FritzBox" routers do not have manual mappings.

  1. Access your internet router's web interface
  2. Add manual hostname mappings:
    devs.ouya.tv 83.169.45.222
    status.ouya.tv 83.169.45.222
  3. Finish the OUYA setup
  4. Change your router's DNS server back to the original value

Registration

You can "register" a factory-reset OUYA:

  1. User registration: "Existing account"
  2. Enter any username, leave password empty. Continue.
  3. Skip credit card registration

Screenshots

An OUYA running in November 2019:

About

This OUYA API server was written by Christian Weiske. The stouyapi code is open source: git.cweiske.de/stouyapi.git (github mirror). It was built with the help of the OUYA store API documentation and uses the OUYA game data repository.

If you want to say "thanks", send a postcard to the address shown at my "about me" page.