Introduction

This is not the "typical" way to upgrade firmware - this is an emergency recovery technique, most often used when you've installed the wrong series of firmware (HDK 2 on an HDK 1.x for instance), though it can fix a few other cases of firmware corruption. It can't fix all firmware corruption issues - some require the use of a JTAG programmer (such as the Atmel-ICE), but it's worth a try.

Firmware version 1.98 includes additional code to make this procedure more likely to work.

  1. R2MpvJNCkbuv4pAH
    • Lay HDK headset face down on a soft surface. Remove the two Phillips #00 screws from the bottom.

    • If the screws do not easily unscrew, you may need to try a different screwdriver. They are quite small and precise, and in the 1.3 and later at least, seem to be a Phillips #00 (possibly just a #0 in 1.2), but if your screwdriver set is not exact, they are easy to strip. If the screws don't turn, try another screwdriver.

  2. sgPhJEZJfBHbV2OM
    sgPhJEZJfBHbV2OM
    fjX6TgANVnypwESC
    • Turn the headset upright.

    • Behind the red box is a connector between a ribbon cable attached to the faceplate and a ribbon cable wrapped inside the body of the HMD. It's taped together in addition to the force of the connection, but is still somewhat fragile, so when opening, this left side should be treated as the "hinge".

    • There are now only two pairs of magnets at the top in the corners holding the faceplate to the body of the HMD. (In the inside image, one of the faceplate magnets is not pictured.)

    • There are two grooves on top, marked, to use in faceplate removal. Keeping in mind the minimal force holding the faceplate on, and the location of the faceplate connector, gently pull/fold the faceplate out and to the left. Do not use any tools for this step!

    • Images show an OSVR HDK 1.4, HDK 1.2 and 1.3 internally look extremely similar. The main circuit board on the HDK 2 differs, but the basic opening procedure and tracking cables should be the same. The faceplate connector cable for the HDK 2 is different, less fragile, and does allow for easy disconnection/reconnection if desired.

    • Avoid placing strain on the (1.x) connector highlighted in red: do not let the faceplate dangle from it or pull on it. If it disconnects internally, you will notice the IR tracking LEDs not lighting up. As long as the connector has not torn off, you can align and squeeze it gently to re-seat the connection and fix it; you'll feel it click.

  3. NIRDHP1xHbDZQSBn
    • Make sure the HDK is powered on and plugged into your computer over USB, and (on Windows) that you've installed the latest drivers

    • Press and hold SW1 (labeled here in green on an HDK 2 mobo, similar location on other models).

    • This is a "reset" switch. We'll be resetting the main controller while holding down another switch that will indicate it should go to bootloader rather than normal operation.

    • Press and hold SW2 (labeled in blue). This is the "bootloader entry" switch that is checked on controller reset.

    • Now, release SW1 (reset) while continuing to hold SW2 (bootloader entry) pressed, until your computer reports a new device (something like ATXMEGA256A3BU DFU)

    • If that device appears, your HDK is now in bootloader mode, and you can install a correct firmware with OSVR-Control, an alternate upgrade bundle, or dfu-programmer directly (for non-Windows users)

Conclusion

Once you've followed these steps and (hopefully successfully) installed a correct, functioning firmware on your HDK, you can re-assemble it. If you didn't get a bootloader device to show up, you may need to use a JTAG programmer/ICE to re-install the bootloader firmware instead - instructions are here: https://github.com/OSVR/OSVR-Docs/blob/m...

To reassemble your device, follow these instructions in reverse order.

Rylie Pavlik

Member since: 31/12/12

498 Reputation

0 comments