ProffieOS 7.7 Beta (done)

I’m currently working on a small python script which can detect which file is the latest.
It will also move the INI/TMP files to BAK/OLD, and then create a new INI which contains just the text data from the most recent of the two files. After that, you can use any text editor to edit the file.

2 Likes

You are a Godsend!

Ok, it’s not super well tested, but the script is available here:

The script can either be run from the directory where the ini files are, or you can specify the directory as the first argument on the command line. Not sure how easy it is to run it on windows though.

I think the script will just fail if the files are not in the new format though, it could probably use a little spit-n-polish to make it more user friendly…

I deleted my .ini files and updated to the most recent version of 7.X from the Repo. My multi blast is now working as described in the prop file directions. All is well. Trying to find something I understand to test. I think I’ll try and test the fett 263 spin define.

Just FYI, Fett Spin Mode won’t work if you have Hold Button Lockup defined. So, I took that define out, and tested:

Hold Power and Swing to initiate, and should hear BMbgn.wav? Its not working for me. I hold power and swing, and I get no initiation sound for Spin mode, and clash is still working.

My config top:

#ifdef CONFIG_TOP
#include "proffieboard_v1_config.h"
#define NUM_BLADES 1
#define NUM_BUTTONS 2
#define VOLUME 2300
const unsigned int maxLedsPerStrip = 144;
#define CLASH_THRESHOLD_G 2.2
#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define DISABLE_COLOR_CHANGE
#define FETT263_EDIT_MODE_MENU
#define ENABLE_ALL_EDIT_OPTIONS
#define FETT263_DUAL_MODE_SOUND
#define FETT263_CLASH_STRENGTH_SOUND
#define FETT263_MAX_CLASH 16
#define FETT263_SAY_BATTERY_VOLTS
#define FETT263_TWIST_OFF
#define FETT263_TWIST_ON
#define FETT263_TWIST_ON_NO_BM
#define FETT263_THRUST_ON
#define FETT263_SWING_ON
#define FETT263_SWING_ON_SPEED 350
#define FETT263_DISABLE_CHANGE_FONT
#define FETT263_DISABLE_CHANGE_STYLE
#define FETT263_DISABLE_COPY_PRESET
#define FETT263_SAY_COLOR_LIST
#define FETT263_SAY_COLOR_LIST_CC
#define FETT263_SAY_BATTERY_VOLTS
#define MOTION_TIMEOUT 60 * 15 * 1000
#define IDLE_OFF_TIME 60 * 10 * 1000
#define FETT263_SPIN_MODE
#define SAVE_STATE
#define DISABLE_DIAGNOSTIC_COMMANDS
#define DISABLE_BASIC_PARSER_STYLES
#define ENABLE_SD
#define ENABLE_SERIAL
#define ENABLE_SSD1306
// Max 20 characters
#define BLE_PASSWORD "1234"
// Max 32 characters.
#define BLE_NAME "Tran"
// Max 9 characters
#define BLE_SHORTNAME "Tran"

#endif

#ifdef CONFIG_PROP

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

#endif

Tom

I wonder what’s up.

Tested it here:

Strange, traveling today. Will try to test your config over the weekend.

LyleStyle is correct. I just tried it with Blade off and it works fine. I was holding power and swinging while blade was on, may just need better docs on the prop file.

Didn’t mean to repeat a test you already did, I didn’t see it marked off. Thanks for correcting me on the controls. I guess I need to find something else to test. Bending time would be good. Maybe I can bend the next 2 years so I can retire.

2 Likes

Ha. I feel better knowing a senior saberist made the same mistake with the controls. When Fett’s library drops I bet we’ll have plenty to test. Kinda chillin until then.

Thanks, for the record the Control is listed under the “While Blade is OFF” section :wink:

The config tool also puts out custom control list with it listed while OFF.

2 Likes

i did a find function in prop file to get to spin controls… doh

running on older versions of presets.ini and tmp:

bconner@BCmini:~/Desktop/py\🖖 $ /Users/bconner/Desktop/py/unlock_presets_ini.py 
Traceback (most recent call last):
  File "/Users/bconner/Desktop/py/unlock_presets_ini.py", line 82, in <module>
    main()
  File "/Users/bconner/Desktop/py/unlock_presets_ini.py", line 73, in main
    data = best.read()
  File "/Users/bconner/Desktop/py/unlock_presets_ini.py", line 55, in read
    return self.f.read(self.length)
AttributeError: 'ProffieSafe' object has no attribute 'length'

Using new versions works perfectly.

I did need to make the script executable first. Now to make it more user friendly.

And not having any luck. Windows is aggravating.

Can you drag the script on the ini file?
If not, copy the script to the SD card and then just click on it?

No, neither under Windows. Dragging the script onto the files doesn’t do anything, dragging the files to the script doesn’t either. Double clicking the script to run it wants you to choose an application.

I tried using PyInstaller but I get an executable that it also doesn’t know what to do with.
“This app can’t run on your PC”

It seems like it should be enough to associate the .py extension with the python3.exe, but it’s windows, so :person_shrugging:

Ok, I’ve added WHEN_OFF to TrDoEffect.
Not well tested yet…

I’ll test it out as I get time and report back, got a long “Honey do” list this weekend.