This repository has been archived on 2025-04-28. You can view files and clone it, but cannot push or open issues or pull requests.
iotsec-djw2/lab2/lab2.md
David Westgate ea7380774c start lab 3
2024-11-27 15:22:49 -08:00

1.8 KiB

Lab 2: BLE Microcontroller programming

Part 0: Setup

To prepare for this lab, I am working with the following setup

1.jpg

  • Blue - Bluetooth capable Android phone runing the Ada Bluefruit Connect App (mirrored via scrcpy)
  • Red - My assembled featherboard connected to my machine via USB
  • Yellow - The python code downloaded from the provided link for this lab, in my downloads folder
  • Purple - The filesystem of my RP2040 board, with Circuit Pi files present from the last lab.

Part 1: Copy code

I now copy the new supplied code to the CircuitPy device

2.jpg

Part 2: Solder

After reviewing the technical documentation for the pinouts of the EPS32 featherboard, it has become apparent that I will need to solder some pads for this device to work with bluetooth. Specifically, I have soldered the ESPGPIO0, ESPRX and ESPTX pads.

3.jpg

Part 3: Profit

The device now appears available as CIRCUITPYf1ea on the Bluefruit Connect App 4.png

I can connect to the device with a strong signal 5.png

Finally, I can control the LED colors as required. Below I demonstrate setting simple Red, Blue and Green colors

6.png 7.png 8.png

Reflections

The biggest challenge of this lab was figuring out what it took to enable bluetooth on the ESP32 board. My initial thought was that I would need to solder the various connections betwen the RP2040 board and the ESP32. At first, I did not realize that the featherboard already bridges those connections. With some advice, I took a closer look at the documentation to notice all that was needed was to solder the pads mentioned. Overall, it was fun to bring some new practical functionality to my hardware kit