@@ -46,24 +46,56 @@ class BLEDis : public BLEService
4646 protected:
4747 union {
4848 struct {
49+ const char * _system_id;
4950 const char * _model;
5051 const char * _serial;
5152 const char * _firmware_rev;
5253 const char * _hardware_rev;
5354 const char * _software_rev;
5455 const char * _manufacturer;
56+ const char * _reg_cert_list;
57+ const char * _pnp_id;
5558 };
5659
57- const char * _strarr[6 ];
60+ const char * _strarr[9 ];
61+ };
62+
63+ union {
64+ struct {
65+ uint8_t _system_id_length;
66+ uint8_t _model_length;
67+ uint8_t _serial_length;
68+ uint8_t _firmware_rev_length;
69+ uint8_t _hardware_rev_length;
70+ uint8_t _software_rev_length;
71+ uint8_t _manufacturer_length;
72+ uint8_t _reg_cert_list_length;
73+ uint8_t _pnp_id_length;
74+ };
75+ const uint8_t _strarr_length[9 ];
5876 };
5977
6078 public:
6179 BLEDis (void );
6280
6381 void setModel (const char * model);
82+ void setModel (const char * model,uint8_t length);
6483 void setHardwareRev (const char * hw_rev);
84+ void setHardwareRev (const char * hw_rev,uint8_t length);
6585 void setSoftwareRev (const char * sw_rev);
86+ void setSoftwareRev (const char * sw_rev, uint8_t length);
6687 void setManufacturer (const char * manufacturer);
88+ void setManufacturer (const char * manufacturer, uint8_t length);
89+ void setFirmwareRev (const char * firmware_rev);
90+ void setFirmwareRev (const char * firmware_rev, uint8_t length);
91+ void setSerialNum (const char * serial_num);
92+ void setSerialNum (const char * serial_num, uint8_t length);
93+ void setSystemID (const char * system_id);
94+ void setSystemID (const char * system_id, uint8_t length);
95+ void setRegCertList (const char * reg_cert_list);
96+ void setRegCertList (const char * reg_cert_list, uint8_t length);
97+ void setPNPID (const char * pnp_id);
98+ void setPNPID (const char * pnp_id, uint8_t pnp_id_length);
6799
68100 virtual err_t begin (void );
69101};
0 commit comments