Firmware Hero
0

Oblique Strategies for the OP-1 (original)

Shift + press the orange encoder shows a random card from Brian Eno and Peter Schmidt's Oblique Strategies on top of whatever screen you are on. Any key closes it; that key press is swallowed and does nothing else.

  • Custom firmware
  • Stable
  • Medium brick risk
  • Reversible

Source code

This project hasn't been claimed by its maintainer yet, so its details come from the community. Is it yours? Claim it

Before you start

How hard is it?
HardUses the command line or developer tools.
What you need
  • Comfort with the command line
  • A computer
Can it break my device?
Small chance of trouble, with a way to recover.
Can I undo it?
Yes. You can go back to the official software.
Get itOpens github.com

Did it work for you?

Did Oblique Strategies for the OP-1 (original) work on your Teenage Engineering OP-1?

No reports yet.

One-tap reports from owners. Bricked reports are checked before they count.

Compatibility

Devices: Teenage Engineering OP-1.

No compatibility information yet.

Getting started

From the project's README ("Use"):

Requirements: Python 3 (standard library only), plus bfin-elf binutils and GCC on PATH. Tested with binutils 2.42 and GCC 13.3.0.

bash build.sh op1246.op1 # -> build/obl.bin, build/obl.sym python3 patchoblique.py op1246.op1 -o op1246-oblique.op1 # stock R246 only (SHA-256 checked) python3 patchoblique.py op1r.op1 --allow-modded # on top of an op1r build: chains to op1r's key hook

To install, hold COM while switching on, choose firmware update, and copy the .op1 file over. To go back, flash the original op1246.op1 the same way. The bootloader (te-boot.ldr) is never modified. The patcher refuses unknown input and verifies its output by unpacking it again.

Expected output for stock R246: sha256 e452aa9576ec8af500442d95bc373eaf2ed9a3634cf5c972c73908067a7ed1db.

Use at your own risk.

Read the full instructions

Risk and recovery

Brick risk
Medium
Reversible
Yes
Requires opening the device
No

From the project's README ("Use"):

Requirements: Python 3 (standard library only), plus bfin-elf binutils and GCC on PATH. Tested with binutils 2.42 and GCC 13.3.0.

bash build.sh op1246.op1 # -> build/obl.bin, build/obl.sym python3 patchoblique.py op1246.op1 -o op1246-oblique.op1 # stock R246 only (SHA-256 checked) python3 patchoblique.py op1r.op1 --allow-modded # on top of an op1r build: chains to op1r's key hook

To install, hold COM while switching on, choose firmware update, and copy the .op1 file over. To go back, flash the original op1246.op1 the same way. The bootloader (te-boot.ldr) is never modified. The patcher refuses unknown input and verifies its output by unpacking it again.

Expected output for stock R246: sha256 e452aa9576ec8af500442d95bc373eaf2ed9a3634cf5c972c73908067a7ed1db.

Use at your own risk.

Read the full instructions