Fett263 Prop File with "Battle Mode" and Gesture Controls for ProffieOS5.x


Project maintained by profezzorn Hosted on GitHub Pages — Theme by mattgraham

Fett263 Prop File with "Battle Mode" and Gesture Controls for ProffieOS5.x 🔗

Instructions for including in your config at bottom of the page.

New features: 🔗

  • On Demand Power Save - dim.wav
  • On Demand Battery Level - battery.wav
  • Battle Mode On (on toggle) - bmbegin.wav
  • Battle Mode Off (on toggle) - bmend.wav
  • Enter Volume Menu - vmbegin.wav
  • Exit Volume Menu - vmend.wav
  • Fast On (optional) - faston.wav
  • Multi-Blast Mode On - blstbgn.wav
  • Multi-Blast Mode Off - blstend.wav

While in Battle Mode - Lockup, Drag and Melt are all controlled by gestures only, no buttons are needed: 🔗

#define FETT263_LOCKUP_DELAY 200

(200 is the default, increasing will allow for more time to determine Lockup, decreasing will shorten)

This works in conjunction with the CLASH_THRESHOLD_G define, CLASH_THRESHOLD_G is the level to recognize the clash/stab event occured if the effects trigger too easily you will increase this value, if they are not triggering easily you will lower this value. After the Clash occurs the LOCKUP_THRESHOLD is used as noted above. The combination of these two thresholds is then used with your control of the saber for "pulling away" and the styles in your preset to create Clash/Lockup.

NOTE: Stab is not active during Battle Mode, if you do a quick Melt/Drag and pull away you can get a quasi-Stab effect. To use Stab (particularly for the new Summon and Release effects) you will exit "Battle Mode" by holding Aux and Swinging.

DEFAULT 2 BUTTON CONTROLS (PWR and AUX): 🔗

OPTIONAL DEFINES (added to CONFIG_TOP in config.h file) 🔗

#define FETT263_BATTLE_MODE_ALWAYS_ON

Battle Mode is always on, toggle controls deactivated, This will disable traditional Clash and Stab effects, (cannot be used with #define FETT263_BATTLE_MODE_START_ON)

or

#define FETT263_BATTLE_MODE_START_ON

Battle Mode is active with each ignition by default but can be toggled using Aux + Swing control, (cannot be used with #define FETT263_BATTLE_MODE_ALWAYS_ON)

#define FETT263_LOCKUP_DELAY 200

This is the "delay" in millis to determine Clash vs Lockup

#define FETT263_BM_DISABLE_OFF_BUTTON

During Battle Mode Power Button Retraction is disabled

#define FETT263_SWING_ON

To enable Swing On Ignition control (automatically enters Battle Mode, uses Fast On)

or

#define FETT263_SWING_ON_PREON

Disables Fast On ignition for Swing On so Preon is used (cannot be used with #define FETT263_SWING_ON)

#define FETT263_SWING_ON_NO_BM

To enable Swing On Ignition control but not activate Battle Mode, (Combine with #define FETT263_SWING_ON or FETT263_SWING_ON_PREON to enable, cannot be used with #define FETT263_BATTLE_MODE_ALWAYS_ON or #define FETT263_BATTLE_MODE_START_ON)

#define FETT263_SWING_ON_SPEED 250

Adjust Swing Speed required for Ignition 250 ~ 500 recommended

#define FETT263_TWIST_OFF

To enable Twist Off Retraction control

#define FETT263_TWIST_ON

To enable Twist On Ignition control (automatically enters Battle Mode, uses Fast On)

or

#define FETT263_TWIST_ON_PREON

Disables Fast On ignition for Twist On so Preon is used (cannot be used with #define FETT263_TWIST_ON)

#define FETT263_TWIST_ON_NO_BM

To enable Twist On Ignition control but not activate Battle Mode, (Combine with #define FETT263_TWIST_ON or FETT263_TWIST_ON_PREON to enable, cannot be used with #define FETT263_BATTLE_MODE_ALWAYS_ON or #define FETT263_BATTLE_MODE_START_ON)

#define FETT263_STAB_ON

To enable Stab On Ignition control (automatically enters Battle Mode, uses Fast On)

or

#define FETT263_STAB_ON_PREON

Disables Fast On ignition for Stab On so Preon is used (cannot be used with #define FETT263_STAB_ON)

#define FETT263_STAB_ON_NO_BM

To enable Stab On Ignition control but not activate Battle Mode, (Combine with #define FETT263_STAB_ON or FETT263_STAB_ON_PREON, cannot be used with #define FETT263_BATTLE_MODE_ALWAYS_ON or #define FETT263_BATTLE_MODE_START_ON)

#define FETT263_THRUST_ON

To enable Thrust On Ignition control (automatically enters Battle Mode, uses Fast On)

or

#define FETT263_THRUST_ON_PREON

Disables Fast On ignition for Thrust On so Preon is used (cannot be used with #define FETT263_THRUST_ON)

#define FETT263_THRUST_ON_NO_BM

Combine with #define FETT263_THRUST_ON or FETT263_THRUST_ON_PREON, (cannot be used with #define FETT263_BATTLE_MODE_ALWAYS_ON or #define FETT263_BATTLE_MODE_START_ON)

#define FETT263_FORCE_PUSH

To enable gesture controlled Force Push during Battle Mode, (will use push.wav or force.wav if not present)

#define FETT263_FORCE_PUSH_ALWAYS_ON

To enable gesture controlled Force Push full time, (will use push.wav or force.wav if not present)

#define FETT263_FORCE_PUSH_LENGTH 5

Allows for adjustment to Push gesture length in millis needed to trigger Force Push Recommended range 1 ~ 10, 1 = shortest, easiest to trigger, 10 = longest

#define FETT263_MULTI_PHASE

This will enable a preset change while ON to create a "Multi-Phase" saber effect

#define MOTION_TIMEOUT 60 * 15 * 1000

This extends the motion timeout to 15 minutes to allow gesture ignition to remain active, Increase/decrease the "15" value as needed

Including prop file in config.h 🔗

To use this prop file you will include in your config and list the defines from above based on the controls and features you wish to enable. (see example below)

Example config (top section): 🔗


#ifdef CONFIG_TOP

#include "proffieboard_v2_config.h"

#define NUM_BLADES 1

#define NUM_BUTTONS 2

#define VOLUME 1500

const unsigned int maxLedsPerStrip = 144;

#define CLASH_THRESHOLD_G 2.0

#define ENABLE_AUDIO

#define ENABLE_MOTION

#define ENABLE_WS2811

#define ENABLE_SD

#define COLOR_CHANGE_DIRECT

#define DISABLE_DIAGNOSTIC_COMMANDS

#define FETT263_THRUST_ON // enables Thrust On Ignition

#define FETT263_SWING_ON // enables Swing On Ignition

#define FETT263_TWIST_ON // enables Twist On Ignition

#define FETT263_TWIST_OFF // enables Twist Off Retraction

#define FETT263_FORCE_PUSH // enables Force Push gesture/sound during Battle Mode

#define MOTION_TIMEOUT 60 * 15 * 1000 // keeps motion chip active for 15 minutes while blade is Off

#define FETT263_MULTI_PHASE // enables Multi-Phase preset changing while blade is ON

#endif

#ifdef CONFIG_PROP

#include "../props/saber_fett263_buttons.h"

#endif

#ifdef CONFIG_PRESETS

Preset presets[] = {...


GESTURE CONTROLS 🔗

PDF Version

Gesture Controls