Skip to content

Commit 68b04d4

Browse files
committed
convert all write callback
1 parent a4679bd commit 68b04d4

File tree

1 file changed

+53
-35
lines changed

1 file changed

+53
-35
lines changed

libraries/Bluefruit52Lib/examples/Peripheral/tf4micro-motion-kit/tf4micro-motion-kit.ino

Lines changed: 53 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -266,68 +266,86 @@ void setState(State state)
266266
* BLE Event handlers
267267
************************************************************************/
268268

269-
#if 0
270-
void handleNumSamplesRxWritten(BLEDevice central, BLECharacteristic characteristic)
269+
void handleNumSamplesRxWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
271270
{
272-
model_tester::setNumSamples(numSamplesRxChar.value());
271+
(void) conn_hdl; (void) chr; (void) data; (void) len;
272+
273+
const int value = (int) numSamplesRxChar.read32();
274+
model_tester::setNumSamples(value);
273275
Serial.print("Received numSamples: ");
274-
Serial.println(numSamplesRxChar.value());
276+
Serial.println(value);
275277
}
276278

277-
void handleThresholdRxWritten(BLEDevice central, BLECharacteristic characteristic)
279+
void handleThresholdRxWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
278280
{
279-
model_tester::setThreshold(thresholdRxChar.value());
281+
(void) conn_hdl; (void) chr; (void) data; (void) len;
282+
283+
const float value = thresholdRxChar.readFloat();
284+
model_tester::setThreshold(value);
280285
Serial.print("Received threshold: ");
281-
Serial.println(thresholdRxChar.value(), 4);
286+
Serial.println(value, 4);
282287
}
283288

284-
void handleCaptureDelayRxWritten(BLEDevice central, BLECharacteristic characteristic)
289+
void handleCaptureDelayRxWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
285290
{
286-
model_tester::setCaptureDelay(captureDelayRxChar.value());
291+
(void) conn_hdl; (void) chr; (void) data; (void) len;
292+
293+
const int value = captureDelayRxChar.read32();
294+
model_tester::setCaptureDelay(value);
287295
Serial.print("Received delay: ");
288-
Serial.println(captureDelayRxChar.value());
296+
Serial.println(value);
289297
}
290298

291-
void handleNumClassesRxWritten(BLEDevice central, BLECharacteristic characteristic)
299+
void handleNumClassesRxWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
292300
{
293-
model_tester::setNumClasses(numClassesRxChar.value());
301+
(void) conn_hdl; (void) chr; (void) data; (void) len;
302+
303+
const unsigned char value = (unsigned char) numClassesRxChar.read8();
304+
model_tester::setNumClasses(value);
294305
Serial.print("Received numClasses: ");
295-
Serial.println(numClassesRxChar.value());
306+
Serial.println(value);
296307
}
297308

298-
void handleDisableMagnetometerRxWritten(BLEDevice central, BLECharacteristic characteristic)
309+
void handleDisableMagnetometerRxWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
299310
{
300-
bool val = disableMagnetometerRx.value();
311+
(void) conn_hdl; (void) chr; (void) data; (void) len;
312+
313+
const bool val = (bool) disableMagnetometerRx.read8();
301314
model_tester::setDisableMagnetometer(val);
302315

303316
useMagnetometer = !val;
304317

305318
Serial.print("Received disableMagnetometer: ");
306-
Serial.println(disableMagnetometerRx.value());
319+
Serial.println(val);
307320
}
308321

309-
void handleStateWritten(BLEDevice central, BLECharacteristic characteristic)
322+
void handleStateWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
310323
{
311-
setState((State)stateRxChar.value());
324+
(void) conn_hdl; (void) chr; (void) data; (void) len;
325+
326+
const uint8_t value = stateRxChar.read8();
327+
328+
setState((State) value);
312329
Serial.print("Received state: ");
313-
Serial.println(stateRxChar.value());
330+
Serial.println(value);
314331
}
315332

316-
void handleMetaWritten(BLEDevice central, BLECharacteristic characteristic)
333+
void handleMetaWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
317334
{
335+
(void) conn_hdl; (void) chr; (void) data; (void) len;
336+
318337
// Meta is just a 64 byte storage for anything, just publish it
319-
byte values[64];
320-
metaRxChar.readValue(values, 64);
321-
metaTxChar.writeValue(values, 64);
338+
metaTxChar.write(data, len);
322339
}
323340

324-
void handleFileTransferTypeWritten(BLEDevice central, BLECharacteristic characteristic)
341+
void handleFileTransferTypeWritten(uint16_t conn_hdl, BLECharacteristic* chr, uint8_t* data, uint16_t len)
325342
{
326-
fileTransferType = (FileTransferType)fileTransferTypeRxChar.value();
343+
(void) conn_hdl; (void) chr; (void) data; (void) len;
344+
345+
fileTransferType = (FileTransferType) fileTransferTypeRxChar.read8();
327346
Serial.print("Received fileTransferType: ");
328347
Serial.println(fileTransferType);
329348
}
330-
#endif
331349

332350
/************************************************************************
333351
* Callbacks
@@ -447,17 +465,17 @@ void setup()
447465
metaRxChar.begin();
448466
metaTxChar.begin();
449467

450-
#if 0
451468
// Event driven reads.
452-
numClassesRxChar.setEventHandler(BLEWritten, handleNumClassesRxWritten);
453-
numSamplesRxChar.setEventHandler(BLEWritten, handleNumSamplesRxWritten);
454-
thresholdRxChar.setEventHandler(BLEWritten, handleThresholdRxWritten);
455-
captureDelayRxChar.setEventHandler(BLEWritten, handleCaptureDelayRxWritten);
456-
stateRxChar.setEventHandler(BLEWritten, handleStateWritten);
457-
fileTransferTypeRxChar.setEventHandler(BLEWritten, handleFileTransferTypeWritten);
458-
metaRxChar.setEventHandler(BLEWritten, handleMetaWritten);
459-
disableMagnetometerRx.setEventHandler(BLEWritten, handleDisableMagnetometerRxWritten);
469+
numClassesRxChar.setWriteCallback(handleNumClassesRxWritten);
470+
numSamplesRxChar.setWriteCallback(handleNumSamplesRxWritten);
471+
thresholdRxChar.setWriteCallback(handleThresholdRxWritten);
472+
captureDelayRxChar.setWriteCallback(handleCaptureDelayRxWritten);
473+
stateRxChar.setWriteCallback(handleStateWritten);
474+
fileTransferTypeRxChar.setWriteCallback(handleFileTransferTypeWritten);
475+
metaRxChar.setWriteCallback(handleMetaWritten);
476+
disableMagnetometerRx.setWriteCallback(handleDisableMagnetometerRxWritten);
460477

478+
#if 0
461479
// Start the core BLE engine.
462480
if (!BLE.begin())
463481
{

0 commit comments

Comments
 (0)