Micro:bit and Bluetooth on PC/Mac?

I’ve tried Bluetooth on both a PC and a Mac and although the micro:bit can be seen, and works with, multiple Android tablets, the PC and Mac simply do not see the micro:bit as a pairable Bluetooth device (the PC and Mac see my phone and tablet as pairable devices at exactly the same time as the micro:bit is in pairing mode).

Is there some magic I’m missing?


Which specific bluetooth features are you using?

Bluetooth support is a bit quirky. The computer will store previously paired bluetooth devices…so if it did pair even once, you may need to use Bluetooth settings on your computer to delete the device and then re-pair.

In most cases I feel that there isn’t much need for security and the pairing makes using the micro:bit significantly more difficult, so I disable the need for pairing on each project:

  1. Open a project that uses Bluetooth
  2. Click on the Gear icon in the upper right of the MakeCode editor
  3. Click on Project Settings
  4. Slide the switch on No Pairing Required
  5. Click the Save button.
  6. Download the program (without Bluetooth Security) to the micro:bit.

I created a video of streaming data via Bluetooth (to a Mac) that may be helpful (but maybe not): https://www.youtube.com/watch?v=eJiddQwKPck . The video has a link to the code used, which has No Pairing Required (Program: https://makecode.microbit.org/_3yT8KAcHuho3)

Oh, also — Is it still paired to the Android device? You should go into it’s bluetooth settings and un-pair it. It’s possible that the Android device is connecting immediately, which would prevent the Mac/PC from having a chance to see it.

For the moment, it’s strictly the ability to download new programs via Bluetooth to the micro:bit using a PC or Mac.

How does the PC app (web browser or offline app, preferably) know that you want to use Bluetooth versus USB? (the default seems to be USB)

With respect to the Mac, a MacBook or iPhone simply do not see the micro:bit as a pairable device when it is in pairing mode (showing the unique “code” on the LEDs). I had assumed that the Mac OS does not recognize insecure devices, therefore it gets ignored (ran into the years ago with other commodity Bluetooth devices).

Do you have any current YouTube examples of uploading code to a micro:bit from a PC? There is precious little covering this topic, other than a deprecated method that Chrome experimentally supported.

Hi @MCbubba77 ,

I think Bluetooth download was always a beta feature on the web-based MakeCode. I’ve done some tests on a Mac and haven’t had any success either. There are discussions on the GitHub issues here and here. (If I remember correctly, it was a lot slower than USB when it did work. I decided it wasn’t worth the effort for most of my interests)

I did some quick tests of the Serial Bluetooth Console on a Mac (which was shown in the video) and it still works for me. However, the v1/v1.5 micro:bits runtime has changed and there is less free memory available than when I made the video. I think they have just barely enough memory for a simple demo and I doubt they can even do what was shown in the video, although it worked fine on a v2.

I suspect you’re not “seeing” devices on Windows/Mac for a different reason. Are you using the Operating System “add bluetooth device” type windows? If so, they won’t typically see a micro:bit. I think on macOS, iOS, and Windows the operating system level Bluetooth search only show devices that are likely to have operating system level features, like keyboards, mice, etc. That doesn’t mean that they can’t connect, just that they won’t show you a micro:bit there. I think Android may just be a little less selective. An aside: It is possible to make a micro:bit support keyboard/mouse features and then it will show up when you go to add a Bluetooth Device in macOS/Windows/iOS, as shown here: https://www.youtube.com/watch?v=n4J5GN72N_4 .

Devices that do not provide operating system level services may be found by individual apps that support the device or generic bluetooth browsers that show all available devices (but operating system level devices may be removed on some operating systems). The bluetooth browsers I use are LightBlue (iOS, macOS) or nRF Connect (iOS, macOS, PC, Android). The Beta MakeCode “download” support used this approach: The web browser acted specifically tried to connect to micro:bits, so they would show up in it’s device selection box.