ProffieOS 7.x is live

ProffieOS 7.7 is now the newest stable ProffieOS release.

You can get it from my website: ProffieOS
or from github: Release ProffieOS 7.7 · profezzorn/ProffieOS · GitHub

Here is a (mostly complete) list of new features in ProffieOS 7.x:

Features:

  • New code for reading/writing ini files. Should cut down on SD card corruption significantly.
  • Better Teensy4 support, including WS281x support.
  • Alternate sound files: altNNN/
  • Sound file sub-sub directories: hum/001/001.wav
  • Updated clash detection
  • StylePtr default arguments
  • Bendable time in most transitions
  • Most “help” command text moved to wiki page to save memory.
  • Support for sorted track/font menus.
  • OLED error messages
  • low-power OLED mode
  • Most OLED images can now use the length of the corresponding wav to decide how long to show the image or animation.
  • Dynamic mixer bugfix
  • New config file section: CONFIG_STYLES
  • All config.ini files in the font search path are now read.
  • New prop file: saber_caiwyn_buttons.h
  • TrConcat can now be used without putting colors between transitions.
  • Experimental ESP32-S3 support.

New font config variable:

  • ProffieOSHumDelay
  • ProffieOSSmoothSwingHumstart

New defines:

  • BOOT_VOLUME
  • AUDIO_CLASH_SUPPRESSION_LEVEL
  • DISABLE_TALKIE
  • BLADE_ID_SCAN_MILLIS
  • KILL_OLD_PLAYERS
  • POV_INCLUDE_FILE
  • BLADE_ID_TIMES

New sound effects:

  • altchng

New OLED images

  • preon
  • in
  • out
  • pstoff

New blade wrapper:

  • SubBladeZZ

New EFFECT_* values:

  • EFFECT_VOLUME_LEVEL
  • EFFECT_ON
  • EFFECT_QUOTE
  • EFFECT_SECONDARY_IGNITION
  • EFFECT_SECONDARY_RETRACTION
  • EFFECT_OFF
  • EFFECT_FAST_OFF
  • EFFECT_OFF_CLASH
  • EFFECT_NEXT_QUOTE
  • EFFECT_INTERACTIVE_PREON
  • EFFECT_INTERACTIVE_BLAST
  • EFFECT_TRACK
  • EFFECT_BEGIN_BATTLE_MODE
  • EFFECT_END_BATTLE_MODE
  • EFFECT_BEGIN_AUTO_BLAST
  • EFFECT_END_AUTO_BLAST
  • EFFECT_ALT_SOUND
  • EFFECT_TRANSITION_SOUND
  • EFFECT_SOUND_LOOP
  • EFFECT_GAME_START
  • EFFECT_GAME_ACTION1
  • EFFECT_GAME_ACTION2
  • EFFECT_GAME_CHOICE
  • EFFECT_GAME_RESPONSE1
  • EFFECT_GAME_RESPONSE2
  • EFFECT_GAME_RESULT1
  • EFFECT_GAME_RESULT2
  • EFFECT_GAME_WIN
  • EFFECT_GAME_LOSE
  • EFFECT_USER5
  • EFFECT_USER6
  • EFFECT_USER7
  • EFFECT_USER8
  • EFFECT_SD_CARD_NOT_FOUND
  • EFFECT_FONT_DIRECTORY_NOT_FOUND
  • EFFECT_ERROR_IN_FONT_DIRECTORY
  • EFFECT_ERROR_IN_BLADE_ARRAY

New off type:

  • OFF_FAST

Styles:

  • LockupTrL has a new argument: CONDITION
  • StylePOV
  • ContinuousPOV
  • ChargingStylePtr
  • TransitionPulseL

New Functions:

  • ClampF / ClampFX
  • Divide
  • IsBetween
  • Subtract
  • TwistAcceleration
  • AltF
  • SyncAltToVarianceF
  • LockupPulseF
  • ModF
  • VolumeLevel
  • HumpFlickerFX

New Transitions:

  • TrBlink(X)
  • TrDoEffect(X)
  • TrDoEffectAlways(X)
  • TrLoop
  • TrLoopN(X)
  • TrLoopUntil

Sound library addition:

  • moffopt.wav

New style arguments:

  • ALT_COLOR2_ARG
  • ALT_COLOR3_ARG
  • STYLE_OPTION2_ARG
  • STYLE_OPTION3_ARG
  • IGNITION_OPTION2_ARG
  • RETRACTION_OPTION2_ARG

New pairable sound transitions

  • lock → endlock
  • armhum → endarm
  • auto → endauto
  • lb → endlb
  • melt → endmelt
  • drag → enddrag

Fett263 prop changes:

  • Removed delay between Clashes (for Clash Spamming)
  • Removed delay for gesture ignitions on boot and after retraction

Control Updates / Changes

  • Force / Quote* Effect Available While OFF (*depending on defines)
  • “Quick Select” for Scroll Presets allows selection and immediate ignition of preset
  • Change to “Gesture Sleep” controls (needed to allow for new features refer to control list)
  • Circular Volume and Dimming menu (no max/min stop - via define)
  • Disable various mode and “on-the-fly” editing controls (via defines)
  • Support for new “Special Ability” effects (via define)
  • Support for BC control variations (via defines)
  • “Spin Mode” (via defines) - disables Clash and Lockup during spinning and flourish maneuvers
  • Use both Spoken Battery Percent and Volt based on blade angle (via define)
  • Added “Increment By” controls for Ignition/Retraction Time, Delay, Options in Edit Mode
  • Added Support for ALT_COLOR2_ARG, ALT_COLOR3_ARG, STYLE_OPTION2_ARG, STYLE_OPTION3_ARG, IGNITION_OPTION2_ARG and RETRACTION_OPTION2_ARG to Edit Mode

New Features

  • Edit Setting Menu (via define) - allows a “Settings only” menu system in place of full Edit Mode
  • Quick Select on Boot (via define) - saber starts in Select Preset Mode on boot up for faster preset selection
  • “Quiet” Track Player (remove spoken prompts via define)

New Defines

  • FETT263_DISABLE_CHANGE_FONT
  • FETT263_DISABLE_CHANGE_STYLE
  • FETT263_DISABLE_COPY_PRESET
  • FETT263_DISABLE_MULTI_BLAST
  • FETT263_TRACK_PLAYER_NO_PROMPTS
  • FETT263_RANDOMIZE_QUOTE_PLAYER
  • FETT263_QUICK_SELECT_ON_BOOT
  • FETT263_EDIT_SETTINGS_MENU
  • FETT263_DISABLE_QUOTE_PLAYER
  • FETT263_QUOTE_PLAYER_START_ON
  • FETT263_SPECIAL_ABILITIES
  • FETT263_SPIN_MODE

BC Variations

  • FETT263_USE_BC_MELT_STAB
  • FETT263_BC_SAY_BATTERY_VOLTS_PERCENT

New Effect Support

*requires FETT263_SPECIAL_ABILITIES define

  • EFFECT_BATTERY_LEVEL
  • EFFECT_VOLUME_LEVEL
  • EFFECT_QUOTE
  • EFFECT_NEXT_QUOTE
  • EFFECT_TRACK
  • EFFECT_ALT_SOUND
  • EFFECT_TRANSITION_SOUND
  • EFFECT_SOUND_LOOP
  • EFFECT_BEGIN_BATTLE_MODE
  • EFFECT_END_BATTLE_MODE
  • EFFECT_BEGIN_AUTO_BLAST
  • EFFECT_END_AUTO_BLAST
  • EFFECT_INTERACTIVE_PREON
  • EFFECT_INTERACTIVE_BLAST
  • EFFECT_ON
  • EFFECT_FAST_ON
  • EFFECT_OFF
  • EFFECT_FAST_OFF
  • EFFECT_SECONDARY_IGNITION
  • EFFECT_SECONDARY_RETRACTION

Available Mini Game EFFECTs

  • EFFECT_GAME_START
  • EFFECT_GAME_ACTION1
  • EFFECT_GAME_ACTION2
  • EFFECT_GAME_CHOICE
  • EFFECT_GAME_RESPONSE1
  • EFFECT_GAME_RESPONSE2
  • EFFECT_GAME_RESULT1
  • EFFECT_GAME_RESULT2
  • EFFECT_GAME_WIN
  • EFFECT_GAME_LOSE

BC prop

  • Spoken Battery level in volts or percentage. Both always available.
  • Live toggle between sequential or random quote play added.
  • Twist to select presets added.
  • #define BC_NO_BM to disable battle mode features.
  • Bypass postoff by Turn off while pointing up.

Volume menu updates

  • Removed “cycle through”, added Quick MAX and MIN vol instead.
  • Twist to change volume added.
  • EFFECT_VOLUME_LEVEL

Caiwyn prop

  • New prop file: saber_caiwyn_buttons.h

New defines:

  • CAIWYN_BUTTON_CLASH
  • CAIWYN_BUTTON_LOCKUP
  • CAIWYN_SAVE_TRACKS
  • CAIWYN_SAVE_TRACK_MODE
  • DISABLE_COLOR_CHANGE
3 Likes

Nice one. Do you recommend removing all the existing temp files from the SD before updating?

No.

If you don’t have KEEP_SAVEFILES_WHEN_PROGRAMMING in your config file, then existing ini/tmp files will be ignored.

If you do have it (which is not recommended for most people) then your save files will be upgraded to 7.x format automatically.

1 Like

4 posts were split to a new topic: ProffieoOS 7.x clash threshold help

With the new SAVE_VOLUME and BOOT_VOLUME control, what’s the difference?

If I have a VOLUME set to 2800, would setting one or other to 280 (ie 10%) effectively be the same as setting the volume to the lowest using the manual controls, but automatically from a fresh upload, with the option to raise the volume using the manual controls to the max set in VOLUME?

SAVE_VOLUME doesn’t have a value, it just has the saber remember the volume setting it was last at before losing power. BOOT_VOLUME values are from 0-100 (%). If you have SAVE_VOLUME enabled, BOOT_VOLUME doesn’t really matter except for the very first boot up after a fresh upload, since the saber will just remember the last saved volume level.

Congratulations on the live release! :slight_smile:

I would like to try out the new version on one of my sabers. Is there any sort of conversion that I would need to do to my config file from 6.9 so that it works with 7.7, or will it work fine as-is? I’d like to get the new OS on my saber first, and then start playing with the new defines and features.

Thanks in advance for any help!

No, your OS6 config will work fine. A few users needed to adjust CLASH_THRESHOLD_G since new detection is used, but I haven’t experienced so it depends entirely on your saber.

1 Like

BOOT_VOLUME is the same scale as the other volume defines. If you set your volume as 1500, and want to boot with 50%, you should use 750. It’s not 0-100%.

You’re right! For some reason I swore the config helper had ranges from 0-100, but no it’s definitely just the volume level

The config helper interface uses percent to keep you from trying to set BOOT_VOLUME higher than VOLUME, the output is calculated as a percentage of VOLUME by the tool to produce the config.

So BOOT_VOLUME effectively supersedes SAVE_VOLUME if used? (ie it does the job of SAVE_VOLUME but pervasive)

No, generally SAVE_VOLUME will supersede BOOT_VOLUME.

Oooooooo boy! Life got in the way so I haven’t had a chance to check proffie news lately, looks like I’ve got a lot of reading and saber flashing to do XD This is so cool, super excited to try all this out. Really excited to mess with kill old players and the dual-font options, as well as all the effect pairings :smiley: Thanks for all the hard work you guys have put into this!

1 Like