subghz_types.h 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #pragma once
  2. #include <furi.h>
  3. #include <furi_hal.h>
  4. /** SubGhzNotification state */
  5. typedef enum {
  6. SubGhzNotificationStateStarting,
  7. SubGhzNotificationStateIDLE,
  8. SubGhzNotificationStateTx,
  9. SubGhzNotificationStateRx,
  10. SubGhzNotificationStateRxDone,
  11. } SubGhzNotificationState;
  12. /** SubGhzTxRx state */
  13. typedef enum {
  14. SubGhzTxRxStateIDLE,
  15. SubGhzTxRxStateRx,
  16. SubGhzTxRxStateTx,
  17. SubGhzTxRxStateSleep,
  18. } SubGhzTxRxState;
  19. /** SubGhzHopperState state */
  20. typedef enum {
  21. SubGhzHopperStateOFF,
  22. SubGhzHopperStateRunnig,
  23. SubGhzHopperStatePause,
  24. SubGhzHopperStateRSSITimeOut,
  25. } SubGhzHopperState;
  26. /** SubGhzSpeakerState state */
  27. typedef enum {
  28. SubGhzSpeakerStateDisable,
  29. SubGhzSpeakerStateShutdown,
  30. SubGhzSpeakerStateEnable,
  31. } SubGhzSpeakerState;
  32. /** SubGhzRadioDeviceType */
  33. typedef enum {
  34. SubGhzRadioDeviceTypeAuto,
  35. SubGhzRadioDeviceTypeInternal,
  36. SubGhzRadioDeviceTypeExternalCC1101,
  37. } SubGhzRadioDeviceType;
  38. /** SubGhzRxKeyState state */
  39. typedef enum {
  40. SubGhzRxKeyStateIDLE,
  41. SubGhzRxKeyStateNoSave,
  42. SubGhzRxKeyStateNeedSave,
  43. SubGhzRxKeyStateBack,
  44. SubGhzRxKeyStateStart,
  45. SubGhzRxKeyStateAddKey,
  46. SubGhzRxKeyStateExit,
  47. SubGhzRxKeyStateRAWLoad,
  48. SubGhzRxKeyStateRAWMore,
  49. SubGhzRxKeyStateRAWSave,
  50. } SubGhzRxKeyState;
  51. /** SubGhzLoadKeyState state */
  52. typedef enum {
  53. SubGhzLoadKeyStateUnknown,
  54. SubGhzLoadKeyStateOK,
  55. SubGhzLoadKeyStateParseErr,
  56. SubGhzLoadKeyStateProtocolDescriptionErr,
  57. } SubGhzLoadKeyState;
  58. /** SubGhzLock */
  59. typedef enum {
  60. SubGhzLockOff,
  61. SubGhzLockOn,
  62. } SubGhzLock;
  63. typedef enum {
  64. SubGhzViewIdMenu,
  65. SubGhzViewIdReceiver,
  66. SubGhzViewIdPopup,
  67. SubGhzViewIdTextInput,
  68. SubGhzViewIdWidget,
  69. SubGhzViewIdTransmitter,
  70. SubGhzViewIdVariableItemList,
  71. SubGhzViewIdFrequencyAnalyzer,
  72. SubGhzViewIdReadRAW,
  73. } SubGhzViewId;
  74. /** SubGhz load type file */
  75. typedef enum {
  76. SubGhzLoadTypeFileNoLoad,
  77. SubGhzLoadTypeFileKey,
  78. SubGhzLoadTypeFileRaw,
  79. } SubGhzLoadTypeFile;