@@ -72,8 +72,8 @@ Adafruit_NeoPixel neopixels = Adafruit_NeoPixel(NEOPIXEL_NUM, PIN_NEOPIXEL, NEO_
7272
7373#define UUID_GEN (val ) (" 81c30e5c-" val " -4f7d-a886-de3e90749161" )
7474
75- // BLEService service (UUID_GEN("0000"));
76- //
75+ BLEService service (UUID_GEN(" 0000" ));
76+
7777// BLECharacteristic dataProviderTxChar (UUID_GEN("1001"), BLERead | BLENotify, 9 * FLOAT_BYTE_SIZE);
7878// BLECharacteristic dataProviderLabelsTxChar (UUID_GEN("1002"), BLERead, 128);
7979// BLEUnsignedCharCharacteristic versionTxChar (UUID_GEN("1003"), BLERead);
@@ -107,43 +107,42 @@ int newModelFileLength = 0;
107107
108108void rgbLedOff ()
109109{
110- // digitalWrite(LEDR, HIGH);
111- // digitalWrite(LEDG, HIGH);
112- // digitalWrite(LEDB, HIGH);
110+ neopixels.setPixelColor (0 , 0 , 0 , 0 );
111+ neopixels.show ();
113112}
114113
115114void rgbLedYellow ()
116115{
117116// digitalWrite(LEDR, LOW);
118117// digitalWrite(LEDG, LOW);
119118// digitalWrite(LEDB, HIGH);
119+ neopixels.setPixelColor (0 , 0xff , 0xff , 0 );
120+ neopixels.show ();
120121}
121122
122123void rgbLedRed ()
123124{
124- // digitalWrite(LEDR, LOW);
125- // digitalWrite(LEDG, HIGH);
126- // digitalWrite(LEDB, HIGH);
125+ neopixels.setPixelColor (0 , 0xff , 0 , 0 );
126+ neopixels.show ();
127127}
128128
129129void rgbLedGreen ()
130130{
131- // digitalWrite(LEDR, HIGH);
132- // digitalWrite(LEDG, LOW);
133- // digitalWrite(LEDB, HIGH);
131+ neopixels.setPixelColor (0 , 0 , 0xff , 0 );
132+ neopixels.show ();
134133}
135134
136135void rgbLedBlue ()
137136{
138- // digitalWrite(LEDR, HIGH);
139- // digitalWrite(LEDG, HIGH);
140- // digitalWrite(LEDB, LOW);
137+ neopixels.setPixelColor (0 , 0 , 0 , 0xff );
138+ neopixels.show ();
141139}
142140
143141void showErrorLed ()
144142{
145143 // blink red
146144 millis () % 1000 > 500 ? rgbLedOff () : rgbLedRed ();
145+ delay (500 );
147146}
148147
149148void updateLed ()
@@ -410,16 +409,27 @@ void setup()
410409 while (!Serial && millis () - startTime < 2000 )
411410 yield ();
412411
412+ Serial.println (" Bluefruit52 Example" );
413+ Serial.println (" -------------------\n " );
414+
413415 // Prepare LED pins.
414416 pinMode (LED_BUILTIN, OUTPUT);
415417 neopixels.begin ();
416418
417419 // Start IMU / Data provider.
418- if (!data_provider::setup ())
419- {
420- Serial.println (" Failed to initialize IMU!" );
421- while (1 ) showErrorLed ();
422- }
420+ // if (!data_provider::setup())
421+ // {
422+ // Serial.println("Failed to initialize IMU!");
423+ // while (1) showErrorLed();
424+ // }
425+
426+ Bluefruit.autoConnLed (true );
427+ Bluefruit.configPrphBandwidth (BANDWIDTH_MAX);
428+ Bluefruit.begin ();
429+ Bluefruit.setTxPower (4 );
430+
431+ service.begin ();
432+
423433#if 0
424434 service.addCharacteristic(versionTxChar);
425435 service.addCharacteristic(dataProviderTxChar);
@@ -480,12 +490,29 @@ void setup()
480490
481491 Serial.print("localName = ");
482492 Serial.println(deviceName);
483-
484493 // Set up properties for the whole service.
485494 BLE.setLocalName(deviceName.c_str());
486495 BLE.setDeviceName(deviceName.c_str());
487496 BLE.setAdvertisedService(service);
497+ #endif
488498
499+ // Advertising packet
500+ Bluefruit.Advertising .addFlags (BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE);
501+ Bluefruit.Advertising .addTxPower ();
502+
503+ // Include bleuart 128-bit uuid
504+ Bluefruit.Advertising .addService (service);
505+
506+ // Secondary Scan Response packet (optional)
507+ // Since there is no room for 'Name' in Advertising packet
508+ Bluefruit.ScanResponse .addName ();
509+
510+ Bluefruit.Advertising .restartOnDisconnect (true );
511+ Bluefruit.Advertising .setInterval (32 , 244 ); // in unit of 0.625 ms
512+ Bluefruit.Advertising .setFastTimeout (30 ); // number of seconds in fast mode
513+ Bluefruit.Advertising .start (0 ); // 0 = Don't stop advertising after n seconds
514+
515+ #if 0
489516 ble_file_transfer::setupBLEFileTransfer(service);
490517
491518 // Print out full UUID and MAC address.
0 commit comments