Skip to content

A modified version of khang06's misc/reversing/o3cpatch

License

Notifications You must be signed in to change notification settings

Vali0004/o3cpatch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

o3cpatch

Firmware mods for the SayoDevice O3C. Originally written by khang06 at https://github.com/khang06/misc

o3cpatch1 o3cpatch2 o3cpatch3 image

Web version can be found at https://vali0004.github.io/o3cpatch/

Features

  • USB command to retrieve raw analog data and temporarily change LED colors (modified McOsu demo)
  • Custom menu backgrounds using screen layer 1 (Disable main screen on sleep screen and change to "Image")
  • New widgets/built-in components
    • (ID 16) Custom horizontal key pressure display
    • (ID 17) Custom horizontal key pressure display (reversed)
    • (ID 18) Keys per second counter
    • (ID 19) Demoscene-ish plasma effect
    • (ID 20) Keypad uptime
    • (ID 21) All keys summed into one value (Key trigger is number of digits allowed in the string plus 4)
  • Disable boot screen
  • Custom fonts

How to build?

You need a few things, but mostly the RISC-V toolchain and GNU Make

  • Install Python3
  • Install the RISC-V Toolchain
  • Run make
  • Voliá, it will build, run pip, run the generate patch, and flash the device all in one go.

How to flash?

You have three options. All of then require you to place the firmware in firmware

  1. Use SayoDevice's offical firmware from their download CDN
  2. Use my upgrade.exe from tools/ and run make flash in the root of the source.
  3. Option 2 but without GNU make. Run tools\upgrade -r.

Flashing doesn't work

Well, that mostly depends. It is using SayoDevices upgrade tool, but it's finky. You can try a few things

  • Putting the device into bootloader mode by holding down the encoder knob for 2-3 seconds, going into Device -> Factory recovery and pressing "Jump to bootloader"
  • Simply try again. Run the make command or upgrade command
  • Using a different USB-C cable. The standard for USB-C is muddy, and not all cables work. However, this is highly unlikely and only works in some rare cases

Any other problems?

Make a issue! I'm happy to troubleshoot things with you, but I'm not always free.

About

A modified version of khang06's misc/reversing/o3cpatch

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published