Skip to content

Latest commit

 

History

History
173 lines (160 loc) · 39 KB

ADVCONFIG.md

File metadata and controls

173 lines (160 loc) · 39 KB

Advanced Configuration

The following guide explores the variables and constants which are user-changeable within the code. The purpose of these changes is to set preferred defaults for the operation of your Proton Pack and Neutrona Wand at bootup, meaning just after the devices have battery power applied. These defaults will avoid the need to switch operation modes and other settings through the menu system.

Please consider all items as changeable at your own risk. Deviating from any recommended values may impact the operation of your pack and wand and cause unwanted or odd behavior. Bug reports or issues which arise from modification of these values will be considered moot unless accompanied by copies of changed files to aid in reproducing the behavior.

All user-configurable values reside within their respective Configuration.h file. Note that when loading the .ino file to the Arduino IDE this should load the related .h files automatically.

For more information on how to compile and flash a custom binary after modifying Configuration.h, please see COMPILING_FLASHING.md for GPStar hardware or DIY_FLASHING.md for DIY Arduino builds.

EEPROM Data

For those who customise their settings and flash their boards manually, any saved settings in the Proton Pack or Neutrona Wand EEPROM can override some settings that you manually flash to your Proton Pack or Neutrona Wand's main system memory. Examples include the Cyclotron and Power Cell Delays, the number of LEDs defined for the Power Cell or Cyclotron, overheating options, etc. You can either override the EEPROM settings by setting b_eeprom = false in the Proton Pack and or Neutrona Wand Configuration.h file before flashing or clearing all the saved settings in your EEPROM from the EEPROM LED Menu System and EEPROM Configuration Menu System.

Refer to the Operation Manual for more information on how to enter the different EEPROM menu systems.

EEPROM data saving and menu system is only available while using the GPStar Neutrona Wand board with your Neutrona Wand, or via the web interface when using an ESP32 wireless module or Attenuator.

The EEPROM memory has a specified life of 100,000 write/erase cycles. You will generally not reach this limit in your lifetime, but if you did or wish to disable the EEPROM loading system, refer to const bool b_eeprom in the Proton Pack table below.

Proton Pack

Variable Description Default Setting
uint8_t i_cyclotron_leds Cyclotron Lid LED count. There are 12 LEDs in the stock HasLab Cyclotron Lid. If you install a 40 LED NeoPixel ring in your Cyclotron Lid, then this should be set to 40.

The Cyclotron Lid can support up to 40 (rgbw) addressable LEDs such as NeoPixels (ws2812b). They will change colour accordingly if you switch to video game modes firing modes.
12
const uint16_t i_1984_delay This controls the delay in milliseconds when an LED changes on the Cyclotron Lid in 1984/1989 mode. The default setting is 275 which is 0.275 seconds. The 2009 video game uses 500. 275
#define CYCLOTRON_DELAY_2021_12_LED This controls the delay in milliseconds when an LED changes on the Cyclotron Lid in 2021/2024 mode when using the stock Haslab 12 LED setup. 15
#define CYCLOTRON_DELAY_2021_20_LED This controls the delay in milliseconds when an LED changes on the Cyclotron Lid in 2021/2024 mode when using a Frutto Technology 20 LED setup. 10
#define CYCLOTRON_DELAY_2021_36_LED This controls the delay in milliseconds when an LED changes on the Cyclotron Lid in 2021/2024 mode when using a Frutto Technology Max 36 LED setup. 5
#define CYCLOTRON_DELAY_2021_40_LED This controls the delay in milliseconds when an LED changes on the Cyclotron Lid in 2021/2024 mode when using a 40 LED NeoPixel ring. 7
const uint8_t i_1984_cyclotron_12_leds_cw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a clockwise direction. The top right lens is the Cyclotron lens #1 and work your way clockwise. This is for the stock Haslab LED setup. { 1, 4, 7, 10 }
const uint8_t i_1984_cyclotron_12_leds_ccw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a counter-clockwise direction. The top right lens is the Cyclotron lens #1 and work your way counter-clockwise. This is for the stock Haslab LED setup. { 1, 10, 7, 4 }
const uint8_t i_1984_cyclotron_20_leds_cw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a clockwise direction. The top right lens is the Cyclotron lens #1 and work your way clockwise. This is for the Frutto Technology 20 LED setup. { 2, 7, 12, 17 }
const uint8_t i_1984_cyclotron_20_leds_ccw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a counter-clockwise direction. The top right lens is the Cyclotron lens #1 and work your way counter-clockwise. This is for the Frutto Technology 20 LED setup. { 2, 17, 12, 7 }
const uint8_t i_1984_cyclotron_36_leds_cw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a clockwise direction. The top right lens is the Cyclotron lens #1 and work your way clockwise. This is for the Frutto Technology Max 36 LED setup. { 4, 13, 22, 31 }
const uint8_t i_1984_cyclotron_36_leds_ccw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a counter-clockwise direction. The top right lens is the Cyclotron lens #1 and work your way counter-clockwise. This is for the Frutto Technology Max 36 LED setup. { 4, 31, 22, 13 }
const uint8_t i_1984_cyclotron_40_leds_cw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a clockwise direction. The top right lens is the Cyclotron lens #1 and work your way clockwise. This is for the 40 NeoPixel Ring LED setup. { 0, 10, 18, 28 }
const uint8_t i_1984_cyclotron_40_leds_ccw[4] This is the middle LED aligned in each Cyclotron lens. Put the sequence in order from lowest to highest in a counter-clockwise direction. The top right lens is the Cyclotron lens #1 and work your way counter-clockwise. This is for the 40 NeoPixel Ring LED setup. { 0, 28, 18, 10 }
bool b_clockwise Set to true for the Cyclotron lights to spin clockwise. Set to false to be counter clockwise. This can be controlled by an optional switch on pin 29.

This can be toggled from the Neutrona Wand sub menu system.
true
bool b_fade_cyclotron_led When set to false, the LEDs on the Cyclotron Lid in 1984/1989 mode will not fade between lens transitions which is closer to their appearance in the films. Set to true to get an appearance closer to the 2009 video game.

This can be toggled from the Neutrona Wand sub menu system.
true
bool b_cyclotron_single_led When set to true, the LEDs on the Cyclotron Lid will light up the middle LED only per Cyclotron lens in 1984 and 1989 mode. When set to false, 3 LEDs per lens will be displayed instead.

This can be toggled from the Neutrona Wand sub menu system.
true
bool b_cyclotron_simulate_ring When set to true, using LEDs that are not a ring will simulate a ring rotation for the Cyclotron LEDs in the lid. This only affects Afterlife and Frozen Empire modes (2021/2024).

This has no effect if you are using a 40 pixel ring in your Cyclotron Lid.
true
bool b_cyclotron_colour_toggle If you are using Cyclotron Lid LEDs and Inner Cyclotron LEDs with RGB support, such as the Frutto Technology Cyclotron LEDs or NeoPixel Rings etc. You can toggle if you want it to change colours to match the Video Game Modes or stay the default Red at all times. The default setting is true, which makes the Cyclotron Lid and Inner Cyclotron change colours to match the Video Game Modes.

This has no affect on the stock HasLab Cyclotron Lid LEDs, which are red only. This can be toggled in the Neutrona Wand sub menu system.
true
const bool b_cyclotron_haslab_chsv_colour_change When using 12 LEDs for the Cyclotron Lid (Stock HasLab), the system will default it to always red because changing the colour space with a CHSV colour object affects the brightness slightly for non RGB pixels such as the ones used in the HasLab Cyclotron Lid. If you are using 12 LEDs that are RGB, they will always be red when this is set to false. Setting this to true will override it and make the LEDs change colour if they are RGB.

This only affects when you are using 12 LEDs for the Cyclotron Lid (HasLab)
false
uint8_t i_powercell_leds Power Cell LED count. There are 13 LEDs in the stock HasLab Power Cell. If you install a Frutto Technology Power Cell which has 15 LEDs, then change this to 15. You can also add your own addressable LEDs, adjust the count as necessary.

If you add more Power Cell LEDs, you may want to adjust the i_powercell_delay_2021 and i_powercell_delay_1984 to lower numbers to speed up the Power Cell delay to reflect the additional LEDs. For 15 LEDs, 1984 at 60 and 2021 at 34 are good settings.
13
#define POWERCELL_DELAY_1984_13_LED This controls the delay in milliseconds when an LED changes on the Power Cell in 1984/1989 mode when using a 13 LED Power Cell. 46
#define POWERCELL_DELAY_2021_13_LED This controls the delay in milliseconds when an LED changes on the Power Cell in 2021/2024 mode when using a 13 LED Power Cell. 40
#define POWERCELL_DELAY_1984_15_LED This controls the delay in milliseconds when an LED changes on the Power Cell in 1984/1989 mode when using a 15 LED Power Cell. 40
#define POWERCELL_DELAY_2021_15_LED This controls the delay in milliseconds when an LED changes on the Power Cell in 2021/1989 mode when using a 15 LED Power Cell. 34
uint8_t i_powercell_delay_1984 This is the actual control variable for the Power Cell LED delay in 1984/1989 mode. It is recommended to change the above defines and only change this variable to the appropriate define for your LED configuration. POWERCELL_DELAY_1984_13_LED
uint8_t i_powercell_delay_2021 This is the actual control variable for the Power Cell LED delay in 2021/2024 mode. It is recommended to change the above defines and only change this variable to the appropriate define for your LED configuration. POWERCELL_DELAY_2021_13_LED
bool b_powercell_invert Set to true to invert the Power Cell animation. false
bool b_powercell_colour_toggle If you are using Power Cell LEDs with RGB support, such as the Frutto Technology Power Cells, you can toggle if you want it to change colours to match the Video Game Modes or stay the default Blue at all times. The default setting is true, which makes the Power Cell change colours to match the Video Game Modes.

This has no affect on the stock HasLab Power Cell LEDs, which are blue only. This can be toggled in the Neutrona Wand sub menu system.
true
uint8_t i_inner_cyclotron_cake_num_leds This setting controls how many optional LEDs are in the Inner (cake) Cyclotron. Default setting of 35 is for a 35 pixel NeoPixel ring. If you change this for a smaller NeoPixel ring, you may need to alter the i_2021_inner_delay and i_1984_inner_delay to lower values to slow down the rotation speed for a smaller ring. 35
uint8_t i_inner_cyclotron_cavity_num_leds You can use up to 20 LEDs. This is generally for adding additional LEDs inside the cyclotron cavity to create spark effects or anything else. 0
#define INNER_CYCLOTRON_DELAY_1984_12_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 1984/1989 mode when using a 12 LED NeoPixel ring. 15
#define INNER_CYCLOTRON_DELAY_2021_12_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 2021/2024 mode when using a 12 LED NeoPixel ring. 12
#define INNER_CYCLOTRON_DELAY_1984_23_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 1984/1989 mode when using a 23 LED NeoPixel ring. 12
#define INNER_CYCLOTRON_DELAY_2021_23_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 2021/2024 mode when using a 23 LED NeoPixel ring. 8
#define INNER_CYCLOTRON_DELAY_1984_24_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 1984/1989 mode when using a 24 LED NeoPixel ring. 12
#define INNER_CYCLOTRON_DELAY_2021_24_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 2021/2024 mode when using a 24 LED NeoPixel ring. 8
#define INNER_CYCLOTRON_DELAY_1984_26_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 1984/1989 mode when using a 26 LED NeoPixel ring. 12
#define INNER_CYCLOTRON_DELAY_2021_26_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 2021/2024 mode when using a 26 LED NeoPixel ring. 8
#define INNER_CYCLOTRON_DELAY_1984_35_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 1984/1989 mode when using a 35 LED NeoPixel ring. 9
#define INNER_CYCLOTRON_DELAY_2021_35_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 2021/2024 mode when using a 35 LED NeoPixel ring. 5
#define INNER_CYCLOTRON_DELAY_1984_36_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 1984/1989 mode when using a 36 LED NeoPixel ring. 9
#define INNER_CYCLOTRON_DELAY_2021_36_LED This controls the delay in milliseconds when an LED changes on the Inner Cyclotron (cake) in 2021/2024 mode when using a 36 LED NeoPixel ring. 5
uint8_t i_1984_inner_delay This is the actual control variable for the Inner Cyclotron (cake) LED delay in 1984/1989 mode. It is recommended to change the above defines and only change this variable to the appropriate define for your LED configuration. INNER_CYCLOTRON_DELAY_1984_35_LED
uint8_t i_2021_inner_delay This is the actual control variable for the Inner Cyclotron (cake) LED delay in 2021/2024 mode. It is recommended to change the above defines and only change this variable to the appropriate define for your LED configuration. INNER_CYCLOTRON_DELAY_2021_35_LED
bool b_grb_cyclotron_cake If you use GRB (green/red/blue) instead of RGB (red/green/blue) addressable LEDs for your Inner Cyclotron (cake), then set to true. false
bool b_grb_cyclotron_cavity If you use GRB (green/red/blue) instead of RGB (red/green/blue) addressable LEDs for your Inner Cyclotron cavity, then set to true. true
uint8_t i_spectral_powercell_custom_colour This is the default colour of the Power Cell when in the Spectral Custom firing mode. The default colour is purple, and this ranges from 1 to 254.

This firing mode is part of the video game firing modes. This colour can be adjusted from the EEPROM LED menu.
200
uint8_t i_spectral_cyclotron_custom#95;colour This is the default colour of the Cyclotron when in the Spectral Custom firing mode. The default colour is purple, and this ranges from 1 to 254.

This firing mode is part of the video game firing modes. This colour can be adjusted from the EEPROM LED menu.
200
uint8_t i_spectral_cyclotron_inner_custom#95;colour This is the default colour of the Inner Cyclotron (cake) when in the Spectral Custom firing mode. The default colour is purple, and this ranges from 1 to 254.

This firing mode is part of the video game firing modes. This colour can be adjusted from the EEPROM LED menu.
200
uint8_t i_spectral_powercell_custom_saturation This is the saturation of the Power Cell when in the Spectral Custom firing mode. This ranges from 1 to 254.

This firing mode is part of the video game firing modes. This saturation can be adjusted from the EEPROM LED menu.
254
uint8_t i_spectral_cyclotron_custom_saturation This is the saturation of the Cyclotron when in the Spectral Custom firing mode. This ranges from 1 to 254.

This firing mode is part of the video game firing modes. This saturation can be adjusted from the EEPROM LED menu.
254
uint8_t i_spectral_cyclotron_inner_custom_saturation This is the saturation of the Inner Cyclotron (cake) when in the Spectral Custom firing mode. This ranges from 1 to 254.

This firing mode is part of the video game firing modes. This saturation can be adjusted from the EEPROM LED menu.
254
uint8_t i_powercell_brightness The default brightness of your Power Cell LEDs in percentages. 0 = off, 100 = maximum brightness.

This can be toggled from the Neutrona Wand sub menu system.
100
uint8_t i_cyclotron_brightness The default brightness of your Cyclotron LEDs in percentages. 0 = off, 100 = maximum brightness.

This can be toggled from the Neutrona Wand sub menu system.
100
uint8_t i_cyclotron_inner_brightness The default brightness of your Inner Cyclotron LEDs in percentages. 0 = off, 100 = maximum brightness.

This can be toggled from the Neutrona Wand sub menu system.
100
uint8_t i_cyclotron_panel_brightness The default brightness of your Frutto Inner Cyclotron LED Switch Panel (if installed) in percentages. 0 = off, 100 = maximum brightness.

This can be toggled from the Neutrona Wand sub menu system.
100
const uint8_t STARTUP_VOLUME The default startup master volume of the Proton Pack. This is a percentage value of between 100% and 0%. 100 = highest, 0 = lowest. When a Neutrona Wand is connected, it will sync to this value. 100
const uint8_t STARTUP_VOLUME_MUSIC The default music volume of the Proton Pack. This is a percentage value of between 100% and 0%. 100 = highest, 0 = lowest. When a Neutrona Wand is connected, it will sync to this value. 100
const uint8_t STARTUP_VOLUME_EFFECTS The default sound effects volume of the Proton Pack. This is a percentage value of between 100% and 0%. 100 = highest, 0 = lowest. When a Neutrona Wand is connected, it will sync to this value. 100
const int8_t MINIMUM_VOLUME You can set the minimum lowest volume the Proton Pack can go. 0 = loudest, and -70 = quietest. -60
const uint8_t VOLUME_MULTIPLIER Percentage increments of master volume change. 5
const uint8_t VOLUME_MUSIC_MULTIPLIER Percentage increments of the music volume change. 5
const uint8_t VOLUME_EFFECTS_MULTIPLIER Percentage increments of the sound effects volume change. 5
const bool b_onboard_amp_enabled Set to true to enable the onboard amplifier of the WAV Trigger. Turning off the onboard amp draws less power. If using the AUX cable jack of the WAV Trigger, the amp can be disabled to save power. If you are using the output pins directly on the WAV Trigger board to your speakers, you will need to enable the amp.

The onboard mono audio amplifier and speaker connector specifications: 2w into 4 Ohms, 1.25W into 8 Ohms
false
bool b_demo_light_mode When set to true, the Proton Pack will turn on automatically when it receives power. If you want your Proton Pack to be silent, change your STARTUP_VOLUME to be 0 or unplug the power to your amplifier. false
bool b_stream_effects When set to true, various impact and other stream effects will overlap and mix randomly into the Proton Stream for an added experience.

This can be toggled from the Neutrona Wand sub menu system
true
bool b_overheat_strobe If you want the optional N-Filter NeoPixel jewel to strobe during overheat, set to true. When false, the light stays solid white during overheat. false
bool b_overheat_lights_off When the pack is overheating, the Power Cell will ramp down and turn off. The Cyclotron also turns off. When set to false, the Power Cell and Cyclotron stays on during overheat but ramps and spins very slowly. true
bool b_overheat_sync_to_fan When set to true, smoke from the N-Filter will only operate at the same time the fan is operating. When set to false (default), smoke in the N-Filter will pump earlier than the fan to fill up the N-Filter with some smoke.

If you have a smoke/fan kit for the N-Filter that operates the smoke and fan at the same time, and you are connected to the smoke N-Filter pin on the pack board, then you would want to set this to true.

If you have a smoke kit where the smoke and fan are independently connected to the pack board, setting to false is preferred.
false
bool b_smoke_enabled Enable or disable smoke settings. This can be toggled with a switch on PIN 37.

This can be toggled from the Neutrona Wand sub menu system.
true
bool b_smoke_1_continuous_firing Set to true to enable smoke 1 during continuous firing events.

This can be overridden if b_smoke_enabled is set to false
true
bool b_smoke_2_continuous_firing Set to true to enable smoke 2 during continuous firing events.

This can be overridden if b_smoke_enabled is set to false
true
bool b_fan_continuous_firing Set to true to enable the fan during continuous firing events.

This can be overridden if b_smoke_enabled is set to false
true
bool b_fan_booster_continuous_firing Set to true to enable the fan in the booster tube during continuous firing events.

This can be overridden if b_smoke_enabled is set to false
true
const bool b_smoke_continuous_level_1 Set to true to enable smoke events in wand power level 1 during continuous firing events.

This can be overridden if b_smoke_enabled is set to false or if all 3 of the smoke_1, smoke_2 and fan_continuous are set to false
true
const bool b_smoke_continuous_level_2 Set to true to enable smoke events in wand power level 2 during continuous firing events.

This can be overridden if b_smoke_enabled is set to false or if all 3 of the smoke_1, smoke_2 and fan_continuous are set to false
true
const bool b_smoke_continuous_level_3 Set to true to enable smoke events in wand power level 3 during continuous firing events.

This can be overridden if b_smoke_enabled is set to false or if all 3 of the smoke_1, smoke_2 and fan_continuous are set to false
true
const bool b_smoke_continuous_level_4 Set to true to enable smoke events in wand power level 4 during continuous firing events.

This can be overridden if b_smoke_enabled is set to false or if all 3 of the smoke_1, smoke_2 and fan_continuous are set to false
true
const bool b_smoke_continuous_level_5 Set to true to enable smoke events in wand power level 5 during continuous firing events.

This can be overridden if b_smoke_enabled is set to false or if all 3 of the smoke_1, smoke_2 and fan_continuous are set to false
true
const uint16_t i_smoke_timer_level_1 How long in milliseconds until the smoke pins & fan pin are activated during a continuous firing in wand power level 1.

Example: 30000 is 30 seconds
30000
const uint16_t i_smoke_timer_level_2 How long in milliseconds until the smoke pins & fan pin are activated during a continuous firing in wand power level 2.

Example: 15000 is 15 seconds
15000
const uint16_t i_smoke_timer_level_3 How long in milliseconds until the smoke pins & fan pin are activated during a continuous firing in wand power level 3.

Example: 10000 is 10 seconds
10000
const uint16_t i_smoke_timer_level_4 How long in milliseconds until the smoke pins & fan pin are activated during a continuous firing in wand power level 4.

Example: 7500 is 7.5 seconds
7500
const uint16_t i_smoke_timer_level_5 How long in milliseconds until the smoke pins & fan pin are activated during a continuous firing in wand power level 5.

Example: 6000 is 6 seconds
6000
const uint16_t i_smoke_on_time_level_1 How long you want your smoke pins and fan pin to stay on while continuous firing in wand power level 1 after they have been activated.

Example: 3000 is 3 seconds
3000
const uint16_t i_smoke_on_time_level_2 How long you want your smoke pins and fan pin to stay on while continuous firing in wand power level 2 after they have been activated.

Example: 3000 is 3 seconds
3000
const uint16_t i_smoke_on_time_level_3 How long you want your smoke pins and fan pin to stay on while continuous firing in wand power level 3 after they have been activated.

Example: 3500 is 3.5 seconds
3500
const uint16_t i_smoke_on_time_level_4 How long you want your smoke pins and fan pin to stay on while continuous firing in wand power level 4 after they have been activated.

Example: 3500 is 3.5 seconds
3500
const uint16_t i_smoke_on_time_level_5 How long you want your smoke pins and fan pin to stay on while continuous firing in wand power level 5 after they have been activated.

Example: 3500 is 4 seconds
4000
bool b_smoke_1_overheat Set to true to enable smoke 1 pin during the overheat sequence.

This can be overridden if b_smoke_enabled is false
true
bool b_smoke_2_overheat Set to true to enable smoke 2 pin during the overheat sequence.

This can be overridden if b_smoke_enabled is false
true
bool b_fan_overheat Set to true to enable the fan pin during the overheat sequence.

This can be overridden if b_smoke_enabled is false
true
bool b_fan_booster_overheat Set to true to enable the booster tube fan pin during the overheat sequence.

This can be overridden if b_smoke_enabled is false
true
const bool b_smoke_overheat_level_1 Set to true to enable smoke events during the overheat sequence in wand power level 1.

This can be overridden if b_smoke_enabled is false or if all 3 of the smoke_1, smoke_2 and fan overheat are set to false
true
const bool b_smoke_overheat_level_2 Set to true to enable smoke events during the overheat sequence in wand power level 2.

This can be overridden if b_smoke_enabled is false or if all 3 of the smoke_1, smoke_2 and fan overheat are set to false
true
const bool b_smoke_overheat_level_3 Set to true to enable smoke events during the overheat sequence in wand power level 3.

This can be overridden if b_smoke_enabled is false or if all 3 of the smoke_1, smoke_2 and fan overheat are set to false
true
const bool b_smoke_overheat_level_4 Set to true to enable smoke events during the overheat sequence in wand power level 4.

This can be overridden if b_smoke_enabled is false or if all 3 of the smoke_1, smoke_2 and fan overheat are set to false
true
const bool b_smoke_overheat_level_5 Set to true to enable smoke events during the overheat sequence in wand power level 5.

This can be overridden if b_smoke_enabled is false or if all 3 of the smoke_1, smoke_2 and fan overheat are set to false
true
uint16_t i_ms_overheating_length_1 How long the overheat sequence (and smoke duration if b_overheat_sync_to_fan is enabled) lasts in wand power level 1.

Example: 2000 is 2 seconds
2000
uint16_t i_ms_overheating_length_2 How long the overheat sequence (and smoke duration if b_overheat_sync_to_fan is enabled) lasts in wand power level 2.

Example: 3000 is 3 seconds
3000
uint16_t i_ms_overheating_length_3 How long the overheat sequence (and smoke duration if b_overheat_sync_to_fan is enabled) lasts in wand power level 3.

Example: 4000 is 4 seconds
4000
uint16_t i_ms_overheating_length_4 How long the overheat sequence (and smoke duration if b_overheat_sync_to_fan is enabled) lasts in wand power level 4.

Example: 5000 is 5 seconds
5000
uint16_t i_ms_overheating_length_5 How long the overheat sequence (and smoke duration if b_overheat_sync_to_fan is enabled) lasts in wand power level 5.

Example: 6000 is 6 seconds
6000
bool b_use_ribbon_cable Set to true to false the Ribbon Cable Alarm switch. false
const bool b_use_power_meter Set to true to enable support for the Frutto Current Sensor board which allows the use of unmodified Hasbro wands with the GPStar Proton Pack. true
const bool b_show_power_data Set to true to output V/A data to the serial monitor for diagnostic plotting purposes. false
const bool b_diagnostic Set to true if you want to know if your wand and pack are communicating. If the wand and pack have a serial connection to each other, you will hear a constant beeping sound. false
const bool b_eeprom Set to true if you to read the configuration data from the EEPROM memory in the Proton Pack.

The EEPROM memory has a specified life of 100,000 write/erase cycles. You will generally not reach this limit in your lifetime, but if you did, it can be disabled to bypass it.
true

Neutrona Wand

Variable Description Default Setting
const uint8_t STARTUP_VOLUME The default master volume of your wand. This will be overridden if you connect your Neutrona Wand to the Proton Pack. This is a percentage value of between 100% and 0%. 100 = highest, 0 = lowest. 100
const uint8_t STARTUP_VOLUME_MUSIC The default music volume of the Neutrona Wand. This will be overridden if you connect your Neutrona Wand to the Proton Pack. This is a percentage value of between 100% and 0%. 100 = highest, 0 = lowest. 100
const uint8_t STARTUP_VOLUME_EFFECTS The default sound effects volume of the Neutrona Wand. This will be overridden if you connect your Neutrona Wand to the Proton Pack. This is a percentage value of between 100% and 0%. 100 = highest, 0 = lowest. 100
const int8_t MINIMUM_VOLUME You can set the minimum lowest volume the Neutona Wand can go. 0 = loudest, and -70 = quietest. If your Proton Pack is overpowering your Neutrona Wand sounds at lower volume levels, increase this number. -35
const uint8_t VOLUME_MULTIPLIER Percentage increments of main volume change. 5
const uint8_t VOLUME_MUSIC_MULTIPLIER Percentage increments of the music volume change. 5
const uint8_t VOLUME_EFFECTS_MULTIPLIER Percentage increments of the sound effects volume change. 5
const bool b_onboard_amp_enabled Set to true to enable the onboard amplifier of the WAV Trigger. Turning off the onboard amp draws less power. If using the AUX cable jack of the WAV Trigger, the amp can be disabled to save power. If you are using the output pins directly on the WAV Trigger board to your speakers, you will need to enable the amp.

The onboard mono audio amplifier and speaker connector specifications: 2w into 4 Ohms, 1.25W into 8 Ohms
true
bool b_bargraph_invert When set to true, the bargraph sequences will be inverted. false
bool b_vent_light_control When set to true, the vent light will adjust its intensity based on the wand power levels and status. This pairs very well with the Frutto Technologies High Intensity Vent Light. true
bool b_quick_vent When set to true, pressing Intensify while the top switch on the wand is off initiates a quick vent while holding down Intensify will perform a full overheat sequence.

Overheating must be enabled for this to work.
true
bool b_power_on_indicator When set to true, the LED at the front of the Neutrona Wand body next to the Clippard valve will start to blink after 1 minute of inactivity while the Neutrona Wand and Proton Pack are powered down. true
bool b_spectral_mode_enabled When set to true, the special spectral firing mode is enabled.

This firing mode is part of the video game firing modes. This can be toggled from the EEPRON config menu.
false
bool b_holiday_mode_enabled When set to true, the special holiday firing mode is enabled.

This firing mode is part of the video game firing modes. This can be toggled from the EEPROM config menu.
false
bool b_spectral_custom_mode_enabled When set to true, the Spectral Custom firing mode is enabled.

This firing mode is part of the video game firing modes. This can be toggled from the EEPROM config menu.
false
uint8_t i_spectral_wand_custom_colour This is the default colour of the Neutrona Wand barrel when in the Spectral Custom firing mode. The default colour is purple.

This firing mode is part of the video game firing modes. This colour can be adjusted from the EEPROM LED menu.
200
uint8_t i_spectral_wand_custom_saturation This is the saturation of the Wand Barrel when in the Spectral Custom firing mode. This ranges from 1 to 254.

This firing mode is part of the video game firing modes. This saturation can be adjusted from the EEPROM LED menu.
254
bool b_overheat_enabled Set to true if you want the Neutrona Wand and Proton Pack to overheat (Overheat settings below still need to be enabled for the necessary power levels. When set to false, it will override and overheating settings in each individual power mode.

This can be toggled from the Neutrona Wand sub menu system.
true
bool b_wand_boot_errors Set to true to have your Neutrona Wand boot up with errors when the top right switch (beep switch) is on while you are turning on your wand. When set to false, this feature is disabled. true
bool b_overheat_bargraph_blink Set to true to have your Neutrona Wand bargraph blink on and off during the overheat sequence. When set to false, it will ramp down instead. false
bool b_beep_loop When set to false, the Neutrona Wand will no longer loop the beep sound effect in Afterlife mode. true
bool b_overheat_level_1 Set to true if you want the Neutrona Wand and Proton Pack to overheat in wand power level 1 false
bool b_overheat_level_2 Set to true if you want the Neutrona Wand and Proton Pack to overheat in wand power level 2 false
bool b_overheat_level_3 Set to true if you want the Neutrona Wand and Proton Pack to overheat in wand power level 3 false
bool b_overheat_level_4 Set to true if you want the Neutrona Wand and Proton Pack to overheat in wand power level 4 false
bool b_overheat_level_5 Set to true if you want the Neutrona Wand and Proton Pack to overheat in wand power level 5 true
uint16_t i_ms_overheat_initiate_level_1 Time in milliseconds for when the overheat sequence will initiate for the Neutrona Wand and Proton Pack if enabled for wand power level 1.

Example: 60000 is 60 seconds
60000
uint16_t i_ms_overheat_initiate_level_2 Time in milliseconds for when the overheat sequence will initiate for the Neutrona Wand and Proton Pack if enabled for wand power level 2.

Example: 50000 is 50 seconds
50000
uint16_t i_ms_overheat_initiate_level_3 Time in milliseconds for when the overheat sequence will initiate for the Neutrona Wand and Proton Pack if enabled for wand power level 3.

Example: 40000 is 40 seconds
40000
uint16_t i_ms_overheat_initiate_level_4 Time in milliseconds for when the overheat sequence will initiate for the Neutrona Wand and Proton Pack if enabled for wand power level 4.

Example: 35000 is 35 seconds
35000
uint16_t i_ms_overheat_initiate_level_5 Time in milliseconds for when the overheat sequence will initiate for the Neutrona Wand and Proton Pack if enabled for wand power level 5.

Example: 30000 is 30 seconds
30000
bool b_stream_effects When set to true, various impact and other stream effects will overlap and mix randomly into the Proton Stream for an added experience.

This can be toggled from the Neutrona Wand sub menu system
true
bool b_extra_pack_sounds When set to true, the Proton Pack will play sounds that the Neutrona Wand would normally play alone. Useful when running a Neutrona Wand build without a speaker. true
const bool b_eeprom Set to true if you want to read the configuration data from the EEPROM memory in the Neutrona Wand.

The EEPROM memory has a specified life of 100,000 write/erase cycles. You will generally not reach this limit in your lifetime, but if you did, it can be disabled to bypass it.
true
const bool b_gpstar_benchtest Set this to true if you want to use your Neutrona Wand without a Proton Pack connected. Otherwise when false, the Neutrona Wand will wait until it is connected to a Proton Pack before it can activate. false