Skip to content

WireOS

WireOS is an OS created by Wire/kercre123.

Wire's goal is to provide a stable, up-to-date, easily-buildable base for others to clone and modify.

It is based off of the leaked 2.0.1.6076 source code.

Changes made compared to normal DDL firmware

  • More normal-looking eyes on Vector 2.0
  • A fixed loosepixel animation
  • "unintentional performances" and "intentional performances"
    • Anki-created PR which was never merged
    • I don't know exactly what this entails, but it makes him do the binaryeyes and tangram animations on his own sometimes.
  • Fixes an EMR reading bug
    • In the original code, the LCD drawing code would read the EMR partition upon every single LCD draw (30 times per second). This seems to have caused I/O weirdness.
    • It reads the EMR partition for the hardware model version. Vector 1.0 and 2.0 screens are different, and the code must adjust for that.
    • I made it so it only reads on LCD init.
  • Uses the Picovoice Porcupine wakeword engine
    • You can customize it in the wired webserver.
  • Includes wired
    • "Wire Daemon"
    • A special webserver program (at :8080) which is where custom wake word training happens, allows you to set the CPU/RAM frequency profile, and allows you to opt-out of auto-updates.
    • This is added as part of the OTA creation, so you can only easily use it if you have a WireOS OTA installed.
  • Uses a Docker builder, so it can build (targeting Vector) on any x86_64 Linux machine
  • Gamma correction
    • His camera now has much less trouble with brightly lit objects
  • Rainbow eyes
    • If chosen, his eyes will always cycle through all the hues
    • (this can be chosen in :8888/demo.html)

Installation

Unlocked Prod

In the BLE terminal in recovery, after connecting him to Wi-Fi:

ota-start http://ota.pvic.xyz/vic/latest/dev.ota

PVT running some sort of dev OTA (like 1.6.0.3331d)

systemctl stop anki-robot.target
mount -o rw,remount,exec /data
curl -o /data/update-engine http://ota.pvic.xyz/update-engine
chmod +rwx /data/update-engine
/data/update-engine http://ota.pvic.xyz/vic/latest/dev.ota -v

OSKR

systemctl stop anki-robot.target
mount -o rw,remount,exec /data
curl -o /data/update-engine http://ota.pvic.xyz/update-engine
chmod +rwx /data/update-engine
/data/update-engine http://ota.pvic.xyz/vic/latest/oskr.ota -v