Nano 33 BLE Sense not detected via USB (even after 2-click RESET trick)

Hi everyone,

I've just received a new Arduino Nano 33 BLE Sense board (with headers) and went on to try it on a Mac OS system.

After installing the Arduino IDE and the necessary packages via the 'Board Manager', I've never been able to have Mac OS detect the board.
The LEDs in the board seem to work normally.
I've tried multiple cables and followed the '2-click' RESET trick explained here.
I find it very strange that dmesg doesn't show anything when plugging the USB cable in and out.
The same behaviour happens in another computer with a Linux system.
The only thing I haven't tried is connecting to the Nano via a USB Hub (as suggested here), but will do it as soon as I get my hands on one.

Should I assume the board is defective?

EDIT : Tried two other things :

  • Connected the board via a USB hub : it still doesn't work
  • Connected two other Arduino boards, Uno and MEGA 2560 : both worked without issues

Welcome to the forum.

Can you try a Windows PC?

It is possible but there is very little required to get the board running. Both LEDs are I/O driven. When they light up it means the MCU is running some code.

Almost all boards are PRE-LOADED with the BLINK example sketch so an LED should be flashing about 1 second intervals.

You did remove the antistatic foam before use ?
Is your USB cable both power AND DATA or just power ?
It needs to be BOTH.

Please take a few moments to Learn and Use The Forum

How to get the best out of this forum Installation & Troubleshooting

Hello, Welcome to the Arduino Forum. This guide explains how to get the best out of this forum. Please read and follow the instructions below. Being new here you might think this is having rules for the sake of rules, but that is not the case. If you don’t follow the guidelines all that happens is there is a long exchange of posts while we try to get you to tell us what we need in order to help you, which is frustrating for you and frustrating for us. The people who try to help with your pro…

It will help you get the very best out of the forum in the future.

  • Your OS and version can be valuable information, please include it along with extra security you are using. Antivirus etc.
  • Always list the version of the IDE you are using and the board version if applicable.
  • Use quote or add error messages as an attachment NOT a picture.
  • How to insert an image into your post. ( Thanks sterretje )
  • Add your sketch where applicable but please use CODE TAGS
  • Add a SCHEMATIC were needed even if it is hand drawn
  • Add working links to any specific hardware as needed (NOT links to similar items)
  • Remember that the people trying to help cannot see your problem so give as much information as you can

COMMON ISSUES

  • Ensure you have FULLY inserted the USB cables.
  • Check you have a COMMON GROUND where required. ( Thanks Perry)
  • Where possible use USB 2.0 ports or a USB 2.0 POWERED HUB to rule out USB 3.0 issues.
  • Try other computers where possible.
  • Try other USB leads where possible.
  • You may not have the correct driver installed. CH340/341 or CP2102 or FT232 VCP Drivers - FTDI
  • There may be a problem with the board check or remove your wiring first.
  • Remove any items connected to pins 0 and 1.

COMPUTER RELATED

  • Close any other serial programs before opening the IDE.
  • Ensure you turn off any additional security / antivirus just to test.
  • There may be a problem with the PC try RESTARTING it.
  • You may be selecting the wrong COM port.
  • Avoid cloud/network based installations where possible OR ensure your Network/Cloud software is RUNNING.
  • Clear your browsers CACHE.
  • Close the IDE before using any other serial programs.
  • Preferably install IDE’s as ADMINISTRATOR or your OS equivalent

ARDUINO SPECIFIC BOARDS

  • CH340/341 based clones do not report useful information to the “get board info” button.
  • NANO (Old Types) some require you to use the OLD BOOTLOADER option.
  • NANO (ALL Types) See the specific sections lower in the forum.
  • NANO (NEW Types) Install your board CORE’s.
  • Unless using EXTERNAL PROGRAMMERS please leave the IDE selection at default “AVRISP mkII”.
  • Boards using a MICRO usb connector need a cable that is both DATA and CHARGE. Many are CHARGE ONLY.

CREATE editor install locations.

  • On macOs ~/Applications/ArduinoCreateAgent-1.1/ArduinoCreateAgent.app/Contents/MacOS/config.ini
  • On Linux ~/ArduinoCreateAgent-1.1/config.ini
  • On Windows C:\Users[your user]\AppData\Roaming\ArduinoCreateAgent-1.1

Performing the above actions may help resolve your problem without further help.

Language problem ?

Try a language closer to your native language:

Thanks to all those who helped and added to this list.

Hi Klaus,

Thank you for your reply!

Can you try a Windows PC?

That's a good test. I'll try it as soon as I get access to a Windows system.

Hi Ballscrewbob,

First of all, thank you for all the tips I've seen you post around the forum about this issue.

Almost all boards are PRE-LOADED with the BLINK example sketch so an LED should be flashing about 1 second intervals.

Yes, the 'orange' LED is blinking at a 1 Hz rate, so I assume the 'BLINK' example came already loaded.

You did remove the antistatic foam before use ?

Yes: I've tested the board without the foam, both on and off a breadboard.

Is your USB cable both power AND DATA or just power ?
It needs to be BOTH.

Yes it is: I've tested the cable with my smartphone first, and I'm able to transfer data to/from my laptop.

Indeed. Code is evidently running on the device.

Futhermore, if you can get that led into a pulsating mode with the double tap of the reset button you can also get into bootloader mode.

Why the usb port (they are different) for either of those modes is not seen by your computer is the mystery.

Make sure the USB cable is completely plugged into both the Arduino board and the PC. The USB socket on a brand new board is sometimes a bit more difficult to plug the cable in to. A partial plug in can result in power connections being made (thus the LEDs lit up), but not the data connections (thus no port).

UPDATE: Unfortunately, I haven't been able to make the Arduino board show up in Windows as well (tried Windows 10).

I've ordered a new board which arrived today!
I've tried it now and it worked right out of the box on my Macbook running Catalina v10.15.5, even after plugging it in and out several times and uploading different sketches.
It shows up in my system as /dev/cu.usbmodem14201.

After this I've tried plugging in the 'old' board again, but it still isn't recognized by my system.
I'll keep the 'old' board around to try some more things in the future.

One interesting difference that I've noticed in the two boards : when I plug in the 'old' one to USB power, the mult-colored LED lights up.
This doesn't happen with the 'new' one, i.e. the multi-colored LED stays black.
Is this a hint to what might be wrong with the 'old' board?
... or is this a sign that the 'new' board is also defective :frowning: ?

That should not happen without you writing a sketch that uses the RGB LED.

No, I do not believe the RGB LED is used by the sketch shipped with the Arduino. Your Arduino is probably fine.

Here is a short sketch to test your LEDs. The sketch uses delay() to keep it simple.

Arduino Nano 33 BLE LED test example (click to view)
/*
  This example tests the on-board LEDs.

  The circuit:
  - Arduino Nano 33 BLE/ BLE Sense board.

  This example code is in the public domain.
*/

#define FLASH_ON_MS   100
#define FLASH_OFF_MS  300

void setup()
{
  pinMode( LEDR, OUTPUT );
  pinMode( LEDG, OUTPUT );
  pinMode( LEDB, OUTPUT );
  pinMode( LED_PWR, OUTPUT );
  pinMode( LED_BUILTIN, OUTPUT );

  // Arduino Nano 33 BLE onboard RGB LEDs are active low
  digitalWrite( LEDR, HIGH );
  digitalWrite( LEDG, HIGH );
  digitalWrite( LEDB, HIGH );
  digitalWrite( LED_PWR, LOW );
  digitalWrite( LED_BUILTIN, LOW );
}

void loop()
{
  flashLED( LEDR, true );
  flashLED( LEDG, true );
  flashLED( LEDB, true );
  flashLED( LED_PWR, false );
  flashLED( LED_BUILTIN, false );
}

void flashLED( int pin, bool activeLow )
{
  if ( activeLow )
  {
    digitalWrite( pin, LOW );
    delay( FLASH_ON_MS );
    digitalWrite( pin, HIGH );
  }
  else
  {
    digitalWrite( pin, HIGH );
    delay( FLASH_ON_MS );
    digitalWrite( pin, LOW );
  }
  delay( FLASH_OFF_MS );
}
2 Likes

Hi @Klaus_K, thank you for the reply and the sketch!

Just tried out your sketch and the RGB LEDs work fine on my new board !

After trying out and playing around with your sketch, I now understand that the 'old' board lights up all the colors at startup, only for an instant (i.e., red, green and blue LEDs, showing a white-ish color).

For the moment I'll continue with the new board (my plan was to work on tinyML projects with it), and close this thread. If by any chance I'm able to get the 'old' board to work again, I'll open another thread.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.