Adafruit Flora Bluefruit LE has never worked

For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

Hello,

We recently bought an Adafruit Flora Bluefruit LE through the distributor Mouser Spain for an academic project. When connecting for the first time to my FLORA v3, the BLE did not react in any way, no LEDs were lit and there was no proof that the board would work. I've tried following all the instructions on this tutorial: https://learn.adafruit.com/adafruit-flo ... tory-reset to upload some code to the BLE, the code gets up correctly to the FLORA and seems that it finds the BLE module but nothing happens, and the BLE still does not make any sign of life. The monitor shows next message when I upload the code:

Code: Select all

Adafruit Bluefruit AT Command Example
-------------------------------------
Initialising the Bluefruit LE module: ATZ

<- ÿ




Line breaks appear continuously after that symbol "ÿ". And when I push the DFU button of the BLE appear some other strange symbols in the serial monitor.

I tried to reset the module via code, via DFU button and via the F.RST test pad, following all the steps of the tutorial but nothing change. Seems like the BLE module is dead.

I reported this issue to mouser Spain and they sent me another BLE module free of charge, but I have the same problem. I thought that maybe could be a problem of y FLORA v3 but I tried with a different FLORA and nothing changed.

I'm a little desperate because I need it to work for my project and I do not know if I'm doing something wrong or it's a problem of the module. Is there any way to try to resuscitate the BLE?

Thanks very much!
Sergio

Next I attach my code and photos of the BLE<->FLORA configuration:

atcommand:

Code: Select all

/*********************************************************************
 This is an example for our nRF51822 based Bluefruit LE modules

 Pick one up today in the adafruit shop!

 Adafruit invests time and resources providing this open source code,
 please support Adafruit and open-source hardware by purchasing
 products from Adafruit!

 MIT license, check LICENSE for more information
 All text above, and the splash screen below must be included in
 any redistribution
*********************************************************************/

#include <Arduino.h>
#include <SPI.h>
#include "Adafruit_BLE.h"
#include "Adafruit_BluefruitLE_SPI.h"
#include "Adafruit_BluefruitLE_UART.h"

#include "BluefruitConfig.h"

#if SOFTWARE_SERIAL_AVAILABLE
  #include <SoftwareSerial.h>
#endif

/*=========================================================================
    APPLICATION SETTINGS

? ? FACTORYRESET_ENABLE? ?  Perform a factory reset when running this sketch
? ?
? ?                         Enabling this will put your Bluefruit LE module
                            in a 'known good' state and clear any config
                            data set in previous sketches or projects, so
? ?                         running this at least once is a good idea.
? ?
? ?                         When deploying your project, however, you will
                            want to disable factory reset by setting this
                            value to 0.? If you are making changes to your
? ?                         Bluefruit LE device via AT commands, and those
                            changes aren't persisting across resets, this
                            is the reason why.? Factory reset will erase
                            the non-volatile memory where config data is
                            stored, setting it back to factory default
                            values.
? ? ? ?
? ?                         Some sketches that require you to bond to a
                            central device (HID mouse, keyboard, etc.)
                            won't work at all with this feature enabled
                            since the factory reset will clear all of the
                            bonding data stored on the chip, meaning the
                            central device won't be able to reconnect.
    -----------------------------------------------------------------------*/
    #define FACTORYRESET_ENABLE      1
/*=========================================================================*/


// Create the bluefruit object, either software serial...uncomment these lines
/*
SoftwareSerial bluefruitSS = SoftwareSerial(BLUEFRUIT_SWUART_TXD_PIN, BLUEFRUIT_SWUART_RXD_PIN);

Adafruit_BluefruitLE_UART ble(bluefruitSS, BLUEFRUIT_UART_MODE_PIN,
                      BLUEFRUIT_UART_CTS_PIN, BLUEFRUIT_UART_RTS_PIN);
*/

/* ...or hardware serial, which does not need the RTS/CTS pins. Uncomment this line */
 Adafruit_BluefruitLE_UART ble(BLUEFRUIT_HWSERIAL_NAME, BLUEFRUIT_UART_MODE_PIN);

/* ...hardware SPI, using SCK/MOSI/MISO hardware SPI pins and then user selected CS/IRQ/RST */
//Adafruit_BluefruitLE_SPI ble(BLUEFRUIT_SPI_CS, BLUEFRUIT_SPI_IRQ, BLUEFRUIT_SPI_RST);

/* ...software SPI, using SCK/MOSI/MISO user-defined SPI pins and then user selected CS/IRQ/RST */
//Adafruit_BluefruitLE_SPI ble(BLUEFRUIT_SPI_SCK, BLUEFRUIT_SPI_MISO,
//                             BLUEFRUIT_SPI_MOSI, BLUEFRUIT_SPI_CS,
//                             BLUEFRUIT_SPI_IRQ, BLUEFRUIT_SPI_RST);


// A small helper
void error(const __FlashStringHelper*err) {
  Serial.println(err);
  while (1);
}

/**************************************************************************/
/*!
    @brief  Sets up the HW an the BLE module (this function is called
            automatically on startup)
*/
/**************************************************************************/
void setup(void)
{
  while (!Serial);  // required for Flora & Micro
  delay(500);

  Serial.begin(115200);
  Serial.println(F("Adafruit Bluefruit AT Command Example"));
  Serial.println(F("-------------------------------------"));

  /* Initialise the module */
  Serial.print(F("Initialising the Bluefruit LE module: "));

  if ( !ble.begin(VERBOSE_MODE) )
  {
    error(F("Couldn't find Bluefruit, make sure it's in CoMmanD mode & check wiring?"));
  }
  Serial.println( F("OK!") );

  if ( FACTORYRESET_ENABLE )
  {
    /* Perform a factory reset to make sure everything is in a known state */
    Serial.println(F("Performing a factory reset: "));
    if ( ! ble.factoryReset() ){
      error(F("Couldn't factory reset"));
    }
  }

  /* Disable command echo from Bluefruit */
  ble.echo(false);

  Serial.println("Requesting Bluefruit info:");
  /* Print Bluefruit information */
  ble.info();
}

/**************************************************************************/
/*!
    @brief  Constantly poll for new command or response data
*/
/**************************************************************************/
void loop(void)
{
  // Display command prompt
  Serial.print(F("AT > "));

  // Check for user input and echo it back if anything was found
  char command[BUFSIZE+1];
  getUserInput(command, BUFSIZE);

  // Send command
  ble.println(command);

  // Check response status
  ble.waitForOK();
}

/**************************************************************************/
/*!
    @brief  Checks for user input (via the Serial Monitor)
*/
/**************************************************************************/
void getUserInput(char buffer[], uint8_t maxSize)
{
  memset(buffer, 0, maxSize);
  while( Serial.available() == 0 ) {
    delay(1);
  }

  uint8_t count=0;

  do
  {
    count += Serial.readBytes(buffer+count, maxSize);
    delay(2);
  } while( (count < maxSize) && !(Serial.available() == 0) );
}
BluefruitConfig.h:

Code: Select all

// COMMON SETTINGS
// ----------------------------------------------------------------------------------------------
// These settings are used in both SW UART, HW UART and SPI mode
// ----------------------------------------------------------------------------------------------
#define BUFSIZE                        160   // Size of the read buffer for incoming data
#define VERBOSE_MODE                   true  // If set to 'true' enables debug output


// SOFTWARE UART SETTINGS
// ----------------------------------------------------------------------------------------------
// The following macros declare the pins that will be used for 'SW' serial.
// You should use this option if you are connecting the UART Friend to an UNO
// ----------------------------------------------------------------------------------------------
//#define BLUEFRUIT_SWUART_RXD_PIN       9    // Required for software serial!
//#define BLUEFRUIT_SWUART_TXD_PIN       10   // Required for software serial!
//#define BLUEFRUIT_UART_CTS_PIN         11   // Required for software serial!
//#define BLUEFRUIT_UART_RTS_PIN         -1   // Optional, set to -1 if unused


// HARDWARE UART SETTINGS
// ----------------------------------------------------------------------------------------------
// The following macros declare the HW serial port you are using. Uncomment
// this line if you are connecting the BLE to Leonardo/Micro or Flora
// ----------------------------------------------------------------------------------------------
//#ifdef Serial1    // this makes it not complain on compilation if there's no Serial1
  #define BLUEFRUIT_HWSERIAL_NAME      Serial1
//#endif


// SHARED UART SETTINGS
// ----------------------------------------------------------------------------------------------
// The following sets the optional Mode pin, its recommended but not required
// ----------------------------------------------------------------------------------------------
#define BLUEFRUIT_UART_MODE_PIN        -1    // Set to -1 if unused


// SHARED SPI SETTINGS
// ----------------------------------------------------------------------------------------------
// The following macros declare the pins to use for HW and SW SPI communication.
// SCK, MISO and MOSI should be connected to the HW SPI pins on the Uno when
// using HW SPI.  This should be used with nRF51822 based Bluefruit LE modules
// that use SPI (Bluefruit LE SPI Friend).
// ----------------------------------------------------------------------------------------------
//#define BLUEFRUIT_SPI_CS               8
//#define BLUEFRUIT_SPI_IRQ              7
//#define BLUEFRUIT_SPI_RST              4    // Optional but recommended, set to -1 if unused

// SOFTWARE SPI SETTINGS
// ----------------------------------------------------------------------------------------------
// The following macros declare the pins to use for SW SPI communication.
// This should be used with nRF51822 based Bluefruit LE modules that use SPI
// (Bluefruit LE SPI Friend).
// ----------------------------------------------------------------------------------------------
//#define BLUEFRUIT_SPI_SCK              13
//#define BLUEFRUIT_SPI_MISO             12
//#define BLUEFRUIT_SPI_MOSI             11
Connections:

Image
Image
Image

User avatar
jps2000
 
Posts: 811
Joined: Fri Jun 02, 2017 4:12 pm

Re: Adafruit Flora Bluefruit LE has never worked

Post by jps2000 »

Check first those cables. Sometimes they are broken although new. (Chinese junk)

User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Re: Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

Thanks for the reply :)

I forgot to say it in the first post, but I've already checked all those cables (and try with a different ones). I also check with a multimeter that the BLE was powered.

User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Re: Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

Is there any support team from Adafruit that can help me?

Thanks!

User avatar
adafruit_support_carter
 
Posts: 29457
Joined: Tue Nov 29, 2016 2:45 pm

Re: Adafruit Flora Bluefruit LE has never worked

Post by adafruit_support_carter »

What baud rate is your serial monitor console set to? (lower right hand corner drop down)

User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Re: Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

I set it first at 9600 and (when it doesn't work) I tried with 115200, without any positive result.

User avatar
adafruit_support_carter
 
Posts: 29457
Joined: Tue Nov 29, 2016 2:45 pm

Re: Adafruit Flora Bluefruit LE has never worked

Post by adafruit_support_carter »

OK, that's correct. Just wanted to make sure it wasn't that. You say you aren't getting any LEDs to come on at all. So even if you do the factory reset step here:
https://learn.adafruit.com/adafruit-flo ... dfu-button
there is nothing?

User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Re: Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

OK, that's correct.
So the correct baud rate should be 9600 or 115200?
You say you aren't getting any LEDs to come on at all. So even if you do the factory reset step here:
https://learn.adafruit.com/adafruit-flo ... dfu-button
there is nothing?
That's it, I tried all the reset methods even factory reset via F.RST Test Pad and nothing happens.

Thanks!

User avatar
adafruit_support_carter
 
Posts: 29457
Joined: Tue Nov 29, 2016 2:45 pm

Re: Adafruit Flora Bluefruit LE has never worked

Post by adafruit_support_carter »

So the correct baud rate should be 9600 or 115200?
If you're running the sketch from the library, 115200:
https://github.com/adafruit/Adafruit_Bl ... nd.ino#L95
That's it, I tried all the reset methods even factory reset via F.RST Test Pad and nothing happens.
That is sounding like the module isn't getting power. But you say you checked that:
I also check with a multimeter that the BLE was powered.
Can you provide more detail on what you did here? Where and what you measured, etc.

User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Re: Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

With the connections as shown in the pictures of the first post and the FLORA connected to the PC via USB, I used a multimeter to check the voltage between the connectors 3.3V and GND of the BLE module, and the multimeter showed 3.3V (therefore, I understand that the module is powered).

The following picture shows the connections and the result that the multimeter shows:

Image

User avatar
adafruit_support_carter
 
Posts: 29457
Joined: Tue Nov 29, 2016 2:45 pm

Re: Adafruit Flora Bluefruit LE has never worked

Post by adafruit_support_carter »

Hmmmm. Weird. Seems like the module might be bad. But you're seeing this on 2 modules, which is unlikely.

You've tried different cables. Maybe the alligator clip connections are not good enough? Keep using the factory reset as a way to test - with power applied hold the DFU button for >5 seconds. Try moving the alligator clips around and see if you can get a more solid connection on the power pads. And then keep doing the factory reset and see if you can get any activity on the LEDs. Anything?

User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Re: Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

Nothing at all. I just tried with different cables and moving the alligator clips to trying a better connection and nothing happens in the BLE module, and with the 3.3V always in the multimeter. I also tried to push the DFU button > 5 seconds again but no LED puts on in the module.
I don't really know what's happening or if I'm doing something wrong, maybe I can send the modules to Adafruit technical team to check it, but I'm in Spain and I'm wondering if the shipping costs will be more expensive than buying a new module.

I do not know, the truth is that I am a little desperate because I need it for an academic project that I have to deliver this course. What do you recommend me?

Thanks for your time!

User avatar
adafruit2
 
Posts: 22187
Joined: Fri Mar 11, 2005 7:36 pm

Re: Adafruit Flora Bluefruit LE has never worked

Post by adafruit2 »

hiya do you *ever* see a red light blink on the module?

User avatar
ruzafito
 
Posts: 10
Joined: Fri Jan 19, 2018 7:37 am

Re: Adafruit Flora Bluefruit LE has never worked

Post by ruzafito »

No, I've never seen any light blink on the module.

User avatar
adafruit2
 
Posts: 22187
Joined: Fri Mar 11, 2005 7:36 pm

Re: Adafruit Flora Bluefruit LE has never worked

Post by adafruit2 »

just to verify, can you check that you have 3V difference from GND pad to 3V pad?

Locked
Please be positive and constructive with your questions and comments.

Return to “Wireless: WiFi and Bluetooth”