Skip to content

Releases: MultiX0/orion

Orion 1.0.0

Choose a tag to compare

@MultiX0 MultiX0 released this 30 Sep 13:33

Orion 1.0.0

Orion is a small voice assistant for your desk that you put together yourself on a LilyGO T-CameraPlus-S3, a board with a screen, a camera, a microphone and a speaker. Say "Orion", ask in Arabic or English, and it answers out loud in its own voice; the Orion app sets it up and, when it is open on your PC or phone, lets it do more.

Website: https://www.joinorion.io

This is the first public release: firmware 1.0.0 (tag fw-v1.0.0) and app 1.0.0 (tag v1.0.0). What changed is in CHANGELOG.md.

Files

On this release (v1.0.0):

File What it is
flash-orion.bat Windows installer. Double-click it.
flash-orion.ps1 The PowerShell script the .bat runs. It is downloaded for you when it is not next to the .bat.
flash-orion.sh Installer for Linux and macOS
orion-firmware-full.bin The whole firmware in one image, written at 0x0. For a new board.
orion-firmware-full.bin.sha256 Its checksum. The installers check it.
Orion-1.0.0-android.apk The Android app, Android 7.0 or newer
Orion-1.0.0-windows-x64-setup.exe The Windows app. Run it; it installs for your user without admin rights.
orion.tflite, orion.json The Orion wake word model, the same one inside the firmware, with its microWakeWord v2 manifest (cutoff 0.96, window 5). It loads in ESPHome too.
orion_case.blend The whole case in Blender: shells, bezel, stand and logo inlays. The measurements are still being refined, so print the fit test first.
Orion-1.0.0-windows-x64.zip The same Windows app without an installer. Unzip it anywhere and run orion.exe.
SHA256SUMS.txt Checksums of the two app files
LICENSE The license

On the firmware release (fw-v1.0.0): the same full image and checksum, and the separate parts for updating a board without losing its settings: bootloader.bin, partition-table.bin, orion.bin, assets.bin, wakeword_model.bin, flash_args and SHA256SUMS.txt.

Put Orion on the board

Connect the board with a USB-C cable that carries data, then:

  • Windows: download flash-orion.bat and double-click it. If Windows says it protected your PC, choose More info, then Run anyway.

  • Linux or macOS: open a terminal and paste the line below. macOS uses the same script but has been tested less than Linux.

    bash <(curl -fsSL https://raw.githubusercontent.com/MultiX0/orion/main/tools/install/flash-orion.sh)
    

The installer finds the board, gets Espressif's esptool, downloads orion-firmware-full.bin from the latest release, checks it against its SHA256, and writes it. It takes a few minutes and needs no admin rights. If it cannot find the board, try another cable, or hold BOOT on the side of the board, tap RST, let go of BOOT, and run it again.

By hand, with esptool:

python -m esptool --chip esp32s3 --baud 460800 write_flash 0x0 orion-firmware-full.bin

To update a board that is already set up and keep its settings, write only the parts from fw-v1.0.0:

python -m esptool --chip esp32s3 --baud 460800 write_flash 0x10000 orion.bin 0x510000 assets.bin 0x710000 wakeword_model.bin

Get the app

  • Android: install Orion-1.0.0-android.apk. Your phone asks once to allow installs from the browser or file manager you opened it with.
  • Windows: run Orion-1.0.0-windows-x64-setup.exe. It is not code signed yet, so if Windows shows "Windows protected your PC", choose More info, then Run anyway. Or unzip Orion-1.0.0-windows-x64.zip and run orion.exe.
  • iOS and Linux: set up in the same code but not built or tried on a device yet, so there is no build for them. See docs/APP.md.

Open the app and tap Find my Orion. It finds the board over Bluetooth, gives it your Wi-Fi, and asks for a Fish Audio key for the voice and hearing, and a key for the language model (DeepInfra by default, any OpenAI-compatible provider works). When the board shows its idle screen, say "Orion".

The case

A 3D printable case is in case/. Print the two small parts in case/fit_test first and check the fit on your board before you print the whole case (see Known issues). The whole assembly is also attached here as orion_case.blend, to open in Blender.

Known issues

  • The 3D case model measurements are not fully accurate yet and are being fixed. Print the fit test first and check the board fits before you print the full case.
  • The full image clears the board's settings, so a board flashed with it starts Bluetooth setup again. Use the parts above to update without that.
  • The board joins 2.4 GHz Wi-Fi only.
  • The Android app is signed with a development key. A later build signed with a release key may ask you to uninstall this one first.
  • The Windows app is not code signed, so SmartScreen warns on first run (More info, then Run anyway).
  • Some power banks switch off at the board's low current draw. Use the power bank's low-current mode or a charger.
  • More problems and their fixes: docs/TROUBLESHOOTING.md.

License

PolyForm Noncommercial 1.0.0, by MultiX0: free for personal and non-commercial use. See LICENSE.

Orion firmware 1.0.0

Choose a tag to compare

@MultiX0 MultiX0 released this 30 Sep 13:32

Orion 1.0.0

Orion is a small voice assistant for your desk that you put together yourself on a LilyGO T-CameraPlus-S3, a board with a screen, a camera, a microphone and a speaker. Say "Orion", ask in Arabic or English, and it answers out loud in its own voice; the Orion app sets it up and, when it is open on your PC or phone, lets it do more.

Website: https://www.joinorion.io

This is the first public release: firmware 1.0.0 (tag fw-v1.0.0) and app 1.0.0 (tag v1.0.0). What changed is in CHANGELOG.md.

Files

On this release (v1.0.0):

File What it is
flash-orion.bat Windows installer. Double-click it.
flash-orion.ps1 The PowerShell script the .bat runs. It is downloaded for you when it is not next to the .bat.
flash-orion.sh Installer for Linux and macOS
orion-firmware-full.bin The whole firmware in one image, written at 0x0. For a new board.
orion-firmware-full.bin.sha256 Its checksum. The installers check it.
Orion-1.0.0-android.apk The Android app, Android 7.0 or newer
Orion-1.0.0-windows-x64-setup.exe The Windows app. Run it; it installs for your user without admin rights.
orion.tflite, orion.json The Orion wake word model, the same one inside the firmware, with its microWakeWord v2 manifest (cutoff 0.96, window 5). It loads in ESPHome too.
orion_case.blend The whole case in Blender: shells, bezel, stand and logo inlays. The measurements are still being refined, so print the fit test first.
Orion-1.0.0-windows-x64.zip The same Windows app without an installer. Unzip it anywhere and run orion.exe.
SHA256SUMS.txt Checksums of the two app files
LICENSE The license

On the firmware release (fw-v1.0.0): the same full image and checksum, and the separate parts for updating a board without losing its settings: bootloader.bin, partition-table.bin, orion.bin, assets.bin, wakeword_model.bin, flash_args and SHA256SUMS.txt.

Put Orion on the board

Connect the board with a USB-C cable that carries data, then:

  • Windows: download flash-orion.bat and double-click it. If Windows says it protected your PC, choose More info, then Run anyway.

  • Linux or macOS: open a terminal and paste the line below. macOS uses the same script but has been tested less than Linux.

    bash <(curl -fsSL https://raw.githubusercontent.com/MultiX0/orion/main/tools/install/flash-orion.sh)
    

The installer finds the board, gets Espressif's esptool, downloads orion-firmware-full.bin from the latest release, checks it against its SHA256, and writes it. It takes a few minutes and needs no admin rights. If it cannot find the board, try another cable, or hold BOOT on the side of the board, tap RST, let go of BOOT, and run it again.

By hand, with esptool:

python -m esptool --chip esp32s3 --baud 460800 write_flash 0x0 orion-firmware-full.bin

To update a board that is already set up and keep its settings, write only the parts from fw-v1.0.0:

python -m esptool --chip esp32s3 --baud 460800 write_flash 0x10000 orion.bin 0x510000 assets.bin 0x710000 wakeword_model.bin

Get the app

  • Android: install Orion-1.0.0-android.apk. Your phone asks once to allow installs from the browser or file manager you opened it with.
  • Windows: run Orion-1.0.0-windows-x64-setup.exe. It is not code signed yet, so if Windows shows "Windows protected your PC", choose More info, then Run anyway. Or unzip Orion-1.0.0-windows-x64.zip and run orion.exe.
  • iOS and Linux: set up in the same code but not built or tried on a device yet, so there is no build for them. See docs/APP.md.

Open the app and tap Find my Orion. It finds the board over Bluetooth, gives it your Wi-Fi, and asks for a Fish Audio key for the voice and hearing, and a key for the language model (DeepInfra by default, any OpenAI-compatible provider works). When the board shows its idle screen, say "Orion".

The case

A 3D printable case is in case/. Print the two small parts in case/fit_test first and check the fit on your board before you print the whole case (see Known issues). The whole assembly is also attached here as orion_case.blend, to open in Blender.

Known issues

  • The 3D case model measurements are not fully accurate yet and are being fixed. Print the fit test first and check the board fits before you print the full case.
  • The full image clears the board's settings, so a board flashed with it starts Bluetooth setup again. Use the parts above to update without that.
  • The board joins 2.4 GHz Wi-Fi only.
  • The Android app is signed with a development key. A later build signed with a release key may ask you to uninstall this one first.
  • The Windows app is not code signed, so SmartScreen warns on first run (More info, then Run anyway).
  • Some power banks switch off at the board's low current draw. Use the power bank's low-current mode or a charger.
  • More problems and their fixes: docs/TROUBLESHOOTING.md.

License

PolyForm Noncommercial 1.0.0, by MultiX0: free for personal and non-commercial use. See LICENSE.