From 6518b99101ab488ab0e7ec5aa11bb43644fe192b Mon Sep 17 00:00:00 2001 From: jfmartel Date: Sun, 23 Feb 2025 18:13:27 -0500 Subject: [PATCH] Clean-up --- AudioConsole.X/Source/AudioConsole.c | 49 - AudioConsole.X/Source/AudioConsoleLedMgr.c | 44 +- .../production/AudioConsole.X.production.elf | Bin 927724 -> 927652 bytes .../production/AudioConsole.X.production.hex | 5770 ++++++++--------- .../production/AudioConsole.X.production.map | 1022 +-- 5 files changed, 3398 insertions(+), 3487 deletions(-) diff --git a/AudioConsole.X/Source/AudioConsole.c b/AudioConsole.X/Source/AudioConsole.c index be80b30..39b9b0a 100644 --- a/AudioConsole.X/Source/AudioConsole.c +++ b/AudioConsole.X/Source/AudioConsole.c @@ -275,32 +275,11 @@ int AudioConsoleVolumeUp(int Zone) { case AUDIO_CONSOLE_SALON_ZONE: { -// if(mMainZoneStatus.MainVolume == AUDIO_CONSOLE_MAX_VOLUME) -// return RET_OK; -// -// mMainZoneStatus.MainVolume += AUDIO_CONSOLE_VOLUME_INCREMENT; -// if(mMainZoneStatus.MainVolume > AUDIO_CONSOLE_MAX_VOLUME) -// { -// mMainZoneStatus.MainVolume =AUDIO_CONSOLE_MAX_VOLUME; -// } - // SendMainVolumeToMaster(); SendIncrementMainVolume(true); break; } case AUDIO_CONSOLE_CUISINE_ZONE: { -// if(mZone2Status.MainVolume == AUDIO_CONSOLE_MAX_VOLUME) -// { -// return RET_OK; -// } -// -// mZone2Status.MainVolume += AUDIO_CONSOLE_VOLUME_INCREMENT; -// if(mZone2Status.MainVolume > AUDIO_CONSOLE_MAX_VOLUME) -// { -// mZone2Status.MainVolume = AUDIO_CONSOLE_MAX_VOLUME; -// } - - // SendZone2VolumeToMaster(); SendIncrementZ2Volume(true); break; } @@ -316,39 +295,11 @@ int AudioConsoleVolumeDown(int Zone) case AUDIO_CONSOLE_SALON_ZONE: { -// if(mMainZoneStatus.MainVolume == 0) -// { -// return RET_OK; -// } -// -// if(mMainZoneStatus.MainVolume <= AUDIO_CONSOLE_VOLUME_INCREMENT) -// { -// mMainZoneStatus.MainVolume = 0; -// } -// else -// { -// mMainZoneStatus.MainVolume -= AUDIO_CONSOLE_VOLUME_INCREMENT; -// } -// SendMainVolumeToMaster(); SendIncrementMainVolume(false); break; } case AUDIO_CONSOLE_CUISINE_ZONE: { -// if(mZone2Status.MainVolume == 0) -// { -// return RET_OK; -// } -// -// if(mZone2Status.MainVolume <= AUDIO_CONSOLE_VOLUME_INCREMENT) -// { -// mZone2Status.MainVolume = 0; -// } -// else -// { -// mZone2Status.MainVolume -= AUDIO_CONSOLE_VOLUME_INCREMENT; -// } -//// SendZone2VolumeToMaster(); SendIncrementZ2Volume(false); break; } diff --git a/AudioConsole.X/Source/AudioConsoleLedMgr.c b/AudioConsole.X/Source/AudioConsoleLedMgr.c index 647aee1..5ff7bcc 100644 --- a/AudioConsole.X/Source/AudioConsoleLedMgr.c +++ b/AudioConsole.X/Source/AudioConsoleLedMgr.c @@ -33,18 +33,6 @@ void AudioConsoleLedMgrTick() { if(IsTimerExpired(LED_EFFECT_TIMER) == true) //Reuse pushbutton timer :) { - // if(mLinkZ2LEDDimmer.BreathEffect == true && mLinkZ2LEDDimmer.IsON == true) - // { - // mLinkZ2LEDDimmer.ONPeriod += DimmerSlope; - // if(mLinkZ2LEDDimmer.ONPeriod >= mLinkZ2LEDDimmer.TotalPeriod) - // { - // DimmerSlope = -5; - // mLinkZ2LEDDimmer.ONPeriod = mLinkZ2LEDDimmer.TotalPeriod - 5; - // } - // else if(mLinkZ2LEDDimmer.ONPeriod <= 5) - // mLinkZ2LEDDimmer.ONPeriod = DimmerSlope = 5; - // } - int i; for(i = 0; i < AUDIO_CONSOLE_NB_LED; i++) { @@ -65,18 +53,6 @@ void AudioConsoleLedMgrTick() TimerStart(LED_EFFECT_TIMER,LED_EFFECT_TIMEOUT); } - // if(mLinkZ2LEDDimmer.IsON) - // { - // if(mLinkZ2LEDDimmer.Counter++ >= mLinkZ2LEDDimmer.ONPeriod) - // { - // AUDIO_CONSOLE_LINK_Z2_STATUS_LED = LED_OFF; - // if(mLinkZ2LEDDimmer.Counter >= mLinkZ2LEDDimmer.TotalPeriod) - // { - // AUDIO_CONSOLE_LINK_Z2_STATUS_LED = LED_ON; - // mLinkZ2LEDDimmer.Counter = 0; - // } - // } - // } int i; for(i = 0; i < AUDIO_CONSOLE_NB_LED; i++) { @@ -102,38 +78,28 @@ int UpdatePushButtonLEDs(AVReceiverStatus_t *MainZoneStatus, AVReceiverStatus_t* if(MainZoneStatus->MainPwrStatus == true) { LedMgrSetLED(AUDIO_CONSOLE_MAIN_PWR_LED,true,100,false); - // AUDIO_CONSOLE_MAIN_PWR_STATUS_LED = LED_ON; } else { LedMgrSetLED(AUDIO_CONSOLE_MAIN_PWR_LED,false,100,false); - // AUDIO_CONSOLE_MAIN_PWR_STATUS_LED = LED_OFF; } if(Z2Status->MainPwrStatus == true) { LedMgrSetLED(AUDIO_CONSOLE_Z2_PWR_LED,true,100,false); - // AUDIO_CONSOLE_ZONE2_PWR_STATUS_LED = LED_ON; } else { LedMgrSetLED(AUDIO_CONSOLE_Z2_PWR_LED,false,100,false); - // AUDIO_CONSOLE_ZONE2_PWR_STATUS_LED = LED_OFF; } if(MainZoneStatus->SyncZones == true) { - LedMgrSetLED(AUDIO_CONSOLE_SYNC_Z2_LED,true,100,true); - // AUDIO_CONSOLE_LINK_Z2_STATUS_LED = LED_ON; - // mLinkZ2LEDDimmer.IsON = true; - // mLinkZ2LEDDimmer.Counter = 0; + LedMgrSetLED(AUDIO_CONSOLE_SYNC_Z2_LED,true,100,false); } else { LedMgrSetLED(AUDIO_CONSOLE_SYNC_Z2_LED,false,100,false); - - // AUDIO_CONSOLE_LINK_Z2_STATUS_LED = LED_OFF; - // mLinkZ2LEDDimmer.IsON = false; } return RET_OK; @@ -278,14 +244,10 @@ int TurnOFF(int LedID) int LedMgrShowOfflineMode(bool Offline) { int i = 0; - bool ON = true; - if(Offline == true) - { - ON = false; - } + for(i = 0; i < AUDIO_CONSOLE_NB_LED; i++) { - LedMgrSetLED(i,ON,100,true); + LedMgrSetLED(i,Offline,100,true); } } \ No newline at end of file diff --git a/AudioConsole.X/dist/ChaletDuinoV2_795F512H_/production/AudioConsole.X.production.elf b/AudioConsole.X/dist/ChaletDuinoV2_795F512H_/production/AudioConsole.X.production.elf index bbd06d9c7a203b09d01f2aa9b77c6e870cecb992..8cc657d742219c90de99927a1400c82772f021f6 100644 GIT binary patch delta 26739 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 a1uT2cxZ0b?o<;7y=