You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

85 regels
1.8 KiB

  1. /*
  2. * File: AudioConsole.h
  3. * Author: JF
  4. *
  5. * Created on February 20, 2025, 2:30 PM
  6. */
  7. #ifndef AUDIOCONSOLE_H
  8. #define AUDIOCONSOLE_H
  9. #include "define.h"
  10. #include "AudioConsoleInterface.h"
  11. #include "WiFiCtrl.h"
  12. #include "BoardCfg.h"
  13. #define AUDIO_CONSOLE_WAIT_FOR_WIFI_TIMEOUT 1000
  14. #define AUDIO_CONSOLE_WAIT_FOR_CONNECT_TIMEOUT 10000
  15. #define AUDIO_CONSOLE_STATUS_REQUEST_TIMEOUT 1000
  16. #define AUDIO_CONSOLE_MAX_STATUS_RETRY 5
  17. #define AUDIO_CONSOLE_VOLUME_INCREMENT 1
  18. enum eAudioConsoleZone
  19. {
  20. AUDIO_CONSOLE_SALON_ZONE,
  21. AUDIO_CONSOLE_CUISINE_ZONE
  22. };
  23. typedef struct eAVReceiverStatus
  24. {
  25. bool MainPwrStatus;
  26. bool MainSleepStatus;
  27. bool IsMute;
  28. bool DataValid;
  29. bool ReceiverOnline;
  30. bool SyncZones;
  31. unsigned int MainVolume;
  32. }AVReceiverStatus_t;
  33. enum eAudioConsoleStates
  34. {
  35. AUDIO_CONSOLE_INIT_STATE,
  36. AUDIO_CONSOLE_DISCONNECTED_STATE,
  37. AUDIO_CONSOLE_CONNECTING_STATE,
  38. AUDIO_CONSOLE_RUN_STATE,
  39. AUDIO_CONSOLE_MAX_STATE
  40. };
  41. enum eAudioConsoleSMEvents
  42. {
  43. AUDIO_CONSOLE_SM_TICK_EVENT,
  44. AUDIO_CONSOLE_SM_CONNECTED_EVENT,
  45. AUDIO_CONSOLE_SM_DISCONNECTED_EVENT,
  46. AUDIO_CONSOLE_MAX_EVENT
  47. };
  48. int AudioConsoleInit();
  49. void AudioConsoleTick();
  50. int AudioConsoleSetIFConnectionStatus(bool Connected);
  51. int AudioConsoleSetReceiverStatus(AVReceiverStatus_t *MainZone, AVReceiverStatus_t *Zone2);
  52. int AudioConsoleSM(int Event);
  53. int AudioConsoleDisconnected();
  54. int RequestStatus();
  55. int SendMainVolumeToMaster();
  56. int SendZone2VolumeToMaster();
  57. int SendLinkZ2VolumeToMaster(bool link);
  58. int SendMainZonePwrToMaster(bool ON);
  59. int SendZone2PwrToMaster(bool ON);
  60. int AudioConsoleVolumeUp(int Zone);
  61. int AudioConsoleVolumeDown(int Zone);
  62. int LinkZ2BtnPressed();
  63. int MainZonePwrBtnPressed();
  64. int Zone2PwrBtnPressed();
  65. #endif /* AUDIOCONSOLE_H */