When I started development on the RoyalBlue54L Feather the RP2350 had just been released. That was an effort herculean by the Rasperry Pi team--getting the product out, quietly, with a dozen hacker products ready for production? I immediately created a sister to nordic-lib-kicad, rpi-lib-kicad and started working on an Arduino Uno style board. I started to consider adding an RP2040 as an on-board debugger. Then I thought: Nordic Semiconductor (my day job!) needs to be pushed into the maker space, the products they offer are just too good to not have the maker-market adoption of Espressif. Why not get the ball rolling for the nRF54L15? It doesn't have USB (it needs a UART bridge at the least, debugger would be nice to have), it's about to be released to the broad market, there are modules available. How do I "make" a debugger though? What firmware would the debugger run?

Forget it for now, seems complicated. Let's just use one of the SiLabs CP21-something something USB-to-UART converters. 

Surely that'll be easy and I can check the price later. Let's get to designing!

No alt text provided for this image

My first system diagram. You can see the vision I'm sure. But no debugger. This got a great response on LinkedIn, including some contacts w/ Crowd Supply. New chips are always cool!

Now let's check the price of that USB-to-UART. It can't be that--

Oh. Those are quite expensive. That's only $0.25 less than an nRF52833! 

I get a full microcontroller with that, even if I don't need the BLE radio. I could do whatever I wanted with that!

At the time, I was unaware of an excellent effort that the Nordic cellular R&D team (Maximilian Deubel) was working on, permitting the nRF5340 within the Thingy91:X to take on three roles; BLE radio (duh), UART bridge (nice), and debugger (WHAT?!). Zephyr RTOS contains a CMSIS-DAP subsystem, bit-banging the required interface. This was combined with a few CDC-ACM serial ports and good ole BLE to create what they have titled "connectivity bridge" firmware that is able to interface with the nRF9151 beside the nRF5340. 

The other critical part was added support for the nRF54L15 in pyOCD and OpenOCD (thanks Max and team). With these pieces we can cobble together debugger firmware! That's a few months away though. Let's get onto designing the hardware.

Thankfully 2023/early Helmut had already added many of the critical components to the KiCAD library and created templates for Feather boards, Pro Micros (foreshadowing?), XIAOs. I started laying out the system in broad strokes--I'd use the nPM1300 for power management and battery charging, the Thing Plus variant of the Feather form-factor so that I have room for a Qwiic connector. Let's stick with the nRF52833 since it comes in an easy-to-assemble QFN. Fanstel had a module with its datasheet already public, let's make a footprint for that... I noticed I had plenty of room for an NFC connector and onboard flash. This looks great! 

Unfortunately, on this first iteration, I made a small mistake...


Everyone has done the ole UART TX/RX swap. I didn't feel too bad. This cable did though. Please pour one out.

For a first prototype there were relatively few issues, probably the smoothest board bring-up I've ever had (self-back-patting implied). I caught some interesting behavior with the TXB0106RGY level shifter (what if you want to operate the L15 at 1.8V?) I used between the debugger and nRF54L15's nRESET pin. I also abused the "AREF" pin in the Feather spec, so that was changed to "NC" since the only permitted external reference voltage on the nRF54L15 is 1.2V. I also changed our "wildcard" pin to the ship mode pin for the nPM1300 and reassigned our the button to an L15 GPIO. Some castellations, silkscreen art, and testpoints later:

You're all caught up! 

If you've found this log or the board interesting, please subscribe to its Crowd Supply page here: https://www.crowdsupply.com/lords-boards/royalblue54l-feather...

Read more »