diff options
Diffstat (limited to 'spaghetti-monster')
| -rw-r--r-- | spaghetti-monster/anduril/cfg-sofirn-sp10-pro.h | 15 | ||||
| -rw-r--r-- | spaghetti-monster/fsm-ramping.c | 39 |
2 files changed, 22 insertions, 32 deletions
diff --git a/spaghetti-monster/anduril/cfg-sofirn-sp10-pro.h b/spaghetti-monster/anduril/cfg-sofirn-sp10-pro.h index a3463ae..bcfc80e 100644 --- a/spaghetti-monster/anduril/cfg-sofirn-sp10-pro.h +++ b/spaghetti-monster/anduril/cfg-sofirn-sp10-pro.h @@ -71,18 +71,3 @@ // enable factory reset on 13H without loosening tailcap #define USE_SOFT_FACTORY_RESET - -// set fuses, these carry over to the ELF file but not the HEX file -// we need this for enabling BOD in Active Mode from the factory. -// settings can be verified / dumped from the ELF file using this -// command: avr-objdump -d -S -j .fuse anduril.elf -FUSES = { - .WDTCFG = FUSE_WDTCFG_DEFAULT, /* Watchdog Configuration */ - .BODCFG = FUSE_ACTIVE0_bm, /* BOD Configuration */ - .OSCCFG = FUSE_OSCCFG_DEFAULT, /* Oscillator Configuration */ - .TCD0CFG = FUSE_TCD0CFG_DEFAULT, /* TCD0 Configuration */ - .SYSCFG0 = FUSE_SYSCFG0_DEFAULT, /* System Configuration 0 */ - .SYSCFG1 = FUSE_SYSCFG1_DEFAULT, /* System Configuration 1 */ - .APPEND = FUSE_APPEND_DEFAULT, /* Application Code Section End */ - .BOOTEND = FUSE_BOOTEND_DEFAULT, /* Boot Section End */ -};
\ No newline at end of file diff --git a/spaghetti-monster/fsm-ramping.c b/spaghetti-monster/fsm-ramping.c index 2e6901d..ade49b7 100644 --- a/spaghetti-monster/fsm-ramping.c +++ b/spaghetti-monster/fsm-ramping.c @@ -93,9 +93,10 @@ void set_level(uint8_t level) { TINT1_LVL = 0; TINT2_LVL = 0; #endif - // for drivers with a slow regulator chip (eg, boost converter, delay before turning off to prevent flashes - #ifdef LED_DISABLE_DELAY - delay_4ms(LED_DISABLE_DELAY/4); + #ifdef LED_OFF_DELAY + // for drivers with a slow regulator chip (eg, boost converter), + // delay before turning off to prevent flashes + delay_4ms(LED_OFF_DELAY/4); #endif // disable the power channel, if relevant #ifdef LED_ENABLE_PIN @@ -108,10 +109,10 @@ void set_level(uint8_t level) { // enable the power channel, if relevant #ifndef USE_TINT_RAMPING // update_tint handles this better #ifdef LED_ENABLE_PIN - #ifdef LED_ENABLE_DELAY + #ifdef LED_ON_DELAY uint8_t led_enable_port_save = LED_ENABLE_PORT; #endif - + #ifndef LED_ENABLE_PIN_LEVEL_MIN LED_ENABLE_PORT |= (1 << LED_ENABLE_PIN); #else @@ -122,24 +123,28 @@ void set_level(uint8_t level) { else // disable during other parts of the ramp LED_ENABLE_PORT &= ~(1 << LED_ENABLE_PIN); #endif - - // for drivers with a slow regulator chip (eg, boost converter, delay before lighting up to prevent flashes - #ifdef LED_ENABLE_DELAY - if (LED_ENABLE_PORT != led_enable_port_save) // only delay if the pin status changed - delay_4ms(LED_ENABLE_DELAY/4); + + // for drivers with a slow regulator chip (eg, boost converter), + // delay before lighting up to prevent flashes + #ifdef LED_ON_DELAY + // only delay if the pin status changed + if (LED_ENABLE_PORT != led_enable_port_save) + delay_4ms(LED_ON_DELAY/4); #endif #endif #ifdef LED2_ENABLE_PIN - #ifdef LED2_ENABLE_DELAY + #ifdef LED2_ON_DELAY uint8_t led2_enable_port_save = LED2_ENABLE_PORT; #endif - + LED2_ENABLE_PORT |= (1 << LED2_ENABLE_PIN); - - // for drivers with a slow regulator chip (eg, boost converter, delay before lighting up to prevent flashes - #ifdef LED2_ENABLE_DELAY - if (LED2_ENABLE_PORT != led2_enable_port_save) // only delay if the pin status changed - delay_4ms(LED2_ENABLE_DELAY/4); + + // for drivers with a slow regulator chip (eg, boost converter), + // delay before lighting up to prevent flashes + #ifdef LED2_ON_DELAY + // only delay if the pin status changed + if (LED2_ENABLE_PORT != led2_enable_port_save) + delay_4ms(LED2_ON_DELAY/4); #endif #endif #endif // ifndef USE_TINT_RAMPING |
