iOS AILinkBleSDK - 蓝牙SDK
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.

ELMeatProbeBoxBleParser.h 2.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. //
  2. // ELMeatProbeBoxBleParser.h
  3. // AILinkBleSDK
  4. //
  5. // Created by LarryZhang on 2023/2/16.
  6. //
  7. #import <Foundation/Foundation.h>
  8. #import <AILinkBleSDK/ELSDKHeader.h>
  9. NS_ASSUME_NONNULL_BEGIN
  10. @class ELMeatProbeBoxBleBoxStatusModel, ELMeatProbeBoxBleProbeStatusModel;
  11. @protocol ELMeatProbeBoxBleParserDelegate;
  12. @interface ELMeatProbeBoxBleParser : NSObject
  13. @property (nonatomic, copy) NSString *mac;
  14. @property (nonatomic, weak) id<ELMeatProbeBoxBleParserDelegate> delegate;
  15. - (void)parseA7Payload:(NSData *)payloadData;
  16. @end
  17. @protocol ELMeatProbeBoxBleParserDelegate <NSObject>
  18. @optional
  19. //MCU 上报设备状态数据(Type:02)
  20. - (void)meatProbeBoxBleParser:(ELMeatProbeBoxBleParser *)bleParser boxStatus:(ELMeatProbeBoxBleBoxStatusModel *)boxStatus probeStatus:(ELMeatProbeBoxBleProbeStatusModel *)probeStatus offline:(BOOL)offline;
  21. //设置、获取设备参数数据(Type:03)
  22. - (void)meatProbeBoxBleParser:(ELMeatProbeBoxBleParser *)bleParser state:(BOOL)state mac:(NSString *)mac customData:(NSData *)customData;
  23. //切换单位(Type:04)
  24. - (void)meatProbeBoxBleParser:(ELMeatProbeBoxBleParser *)bleParser unit:(ELDeviceTemperatureUnit)unit;
  25. @end
  26. @interface ELMeatProbeBoxBleBoxStatusModel : NSObject
  27. //设备状态数据协议版本:0x01
  28. @property (nonatomic, assign) UInt8 version;
  29. //支持的探针数量 M
  30. @property (nonatomic, assign) UInt8 probeMaxCount;
  31. //当前连接的探针数量 N
  32. @property (nonatomic, assign) UInt8 probeCount;
  33. //充电盒电池状态
  34. @property (nonatomic, assign) UInt8 batteryStatus;
  35. @property (nonatomic, assign) UInt8 batteryPercent;
  36. //温度单位
  37. @property (nonatomic, assign) ELDeviceTemperatureUnit unit;
  38. //生成时间
  39. @property (nonatomic, assign) double timestamp;
  40. @end
  41. @interface ELMeatProbeBoxBleProbeStatusModel : NSObject
  42. //探针编号(1-M) 无法确定可连 接探针的编号,上报 0xFF
  43. @property (nonatomic, assign) UInt8 index;
  44. @property (nonatomic, assign) UInt8 dataIndex;
  45. //探针 mac 地址
  46. @property (nonatomic, strong) NSData *macData;
  47. @property (nonatomic, copy) NSString *macString;
  48. //食物温度
  49. @property (nonatomic, assign) NSInteger internalTemperature;
  50. @property (nonatomic, assign) ELDeviceTemperatureUnit internalTemperatureUnit;
  51. @property (nonatomic, assign) UInt16 internalTemperatureRaw;
  52. //环境温度
  53. @property (nonatomic, assign) NSInteger ambientTemperature;
  54. @property (nonatomic, assign) ELDeviceTemperatureUnit ambientTemperatureUnit;
  55. @property (nonatomic, assign) UInt16 ambientTemperatureRaw;
  56. //探针电池状态
  57. @property (nonatomic, assign) UInt8 batteryStatus;
  58. @property (nonatomic, assign) UInt8 batteryPercent;
  59. @property (nonatomic, assign) UInt8 batteryRaw;
  60. //探针插入食物状态
  61. @property (nonatomic, assign) UInt8 insertStatusRaw;
  62. //生成时间
  63. @property (nonatomic, assign) double timestamp;
  64. //数据无效
  65. - (void)makeInvalid;
  66. @end
  67. NS_ASSUME_NONNULL_END