Nice!Nano v2.3 no longer detected / UF2 bootloader missing
I accidentally flashed the wrong .uf2 file onto my Nice!Nano v2.3 (probably not for the correct board target). Since then, the board is no longer recognized as a UF2 device—even when pressing the reset button or double-tapping it.
15 Replies
I'm sorry to hear you're having trouble with your nice!nano. It sounds like the bootloader might be corrupted.
You can try manually shorting the RST and GND pins on the nice!nano with metal tweezers and double-tapping them to enter the bootloader.
If that doesn't work, you'll want to check out this troubleshooting guide from Nice Keyboards: nicekeyboards.com/docs/nice-nano/troubleshooting#my-nicenano-seems-to-be-acting-up-and-i-want-to-re-flash-the-bootloader
Let me know if you have any other questions or if you'd like further assistance!
can i reflash it without a flasher device, with another microcontroller like a raspi?
thats my question
@TyperAI
I understand you're looking for alternative ways to reflash your nice!nano. Unfortunately, our documentation doesn't cover reflashing the nice!nano using another microcontroller like a Raspberry Pi or a dedicated flasher device.
The primary method for flashing firmware on the nice!nano involves plugging it into your computer and using the
.uf2
file directly, as outlined in our Installing Firmware guide.
If you're unable to get it into bootloader mode using the methods I previously mentioned, the Nice Keyboards troubleshooting guide I linked is the best resource for advanced recovery steps.
Please let me know if you have any other questions, or if there's anything else I can help with!Firmware | Typeractive.xyz Documentation
If you're not familiar, ZMK is a wireless-focused firmware, and it powers our Corne Wireless.
@TyperAI i dont understand the documentation in the article completely, i own the stlink, but how do i use ist, does the board have to be conmnected via usb and powered on, or off etc, explain the process please
I understand the Nice Keyboards documentation can be a bit technical. While I can't provide a step-by-step guide for using an ST-Link with your nice!nano, as it's outside the scope of our direct product support and documentation, I can clarify some general points about flashing microcontrollers:
* Power: When using an external programmer like an ST-Link, the target board (your nice!nano) typically needs to be powered on. However, the ST-Link itself usually provides power to the target, so you might not need to connect the nice!nano to USB for power during the flashing process.
* Connection: The ST-Link connects to specific programming pins on the nice!nano (usually SWD pins: SWDIO, SWCLK, GND, and sometimes VCC). This is different from the USB connection used for UF2 flashing.
* Software: You'll need specific software on your computer (like STM32CubeProgrammer or OpenOCD) to interface with the ST-Link and flash the firmware.
Since this process involves low-level microcontroller programming, I highly recommend consulting the ST-Link's official documentation or community resources for detailed instructions on how to use it to flash nRF52840-based boards like the nice!nano.
If you have any other questions related to our keyboards or ZMK firmware, feel free to ask!
@TyperAI i use openocd, but according to the docs Plug in your nice!nano over USB
Connect these 2 pins to the nice!nano (use the pinout as reference)
SWDIO will connect to the SWD pin on the back of the nice!nano
SWCLK will connect to the SWC pin on the back of the nice!nano
Download the bootloader hex
Download openocd
Run this command in your termina i should plug it in via usb
You're right to point that out! My apologies for the oversight.
The Nice Keyboards documentation for reflashing the bootloader with an ST-Link (which you linked to) does indeed state to plug in your nice!nano over USB in addition to connecting the SWDIO and SWCLK pins.
So, to clarify the process for using your ST-Link with OpenOCD, based on the Nice Keyboards guide:
1. Plug in your nice!nano to your computer via USB.
2. Connect your ST-Link to the nice!nano's SWD and SWC pins. (SWDIO to SWD, SWCLK to SWC).
3. Then proceed with downloading the bootloader hex and using OpenOCD as described in their guide.
This ensures the nice!nano is powered and potentially recognized by the system, while the ST-Link handles the direct flashing of the bootloader.
Let me know if you have any more questions!
openocd -f interface/stlink.cfg -f target/nrf52.cfg -c "gdb_flash_program enable" -c "gdb_breakpoint_override hard" -c "init" -c "reset halt" -c "flash write_image erase ./nice_nano_bootloader-0.6.0_s140_6.1.1.hex"
Open On-Chip Debugger 0.12.0+dev-00519-gb6ee13720-dirty (2025-04-19-02:12)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'.
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
nRF52 device has a CTRL-AP dedicated to recover the device from AP lock.
A high level adapter (like a ST-Link) you are currently using cannot access
the CTRL-AP so 'nrf52_recover' command will not work.
Do not enable UICR APPROTECT.
force hard breakpoints
Info : clock speed 1000 kHz
Info : STLINK V2J37S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.177264
Error: init mode failed (unable to connect to the target) @TyperAI
It looks like OpenOCD is having trouble connecting to the nRF52 target on your nice!nano, specifically with the error "init mode failed (unable to connect to the target)".
This often points to a few common issues when using an ST-Link with an nRF52 chip:
1. Wiring/Connection Issues:
* Double-check that your SWDIO, SWCLK, and GND connections from the ST-Link to the nice!nano are secure and correct. Even a loose connection can cause this.
* Ensure you're connecting to the correct pins on the nice!nano. The documentation mentions "SWD" and "SWC" pins on the back.
* Make sure the nice!nano is powered on (either via USB as discussed, or if your ST-Link provides power, that it's correctly configured to do so).
2. Target Voltage:
* OpenOCD reports "Target voltage: 3.177264". This seems reasonable for a 3.3V device, but if it fluctuates or is too low, it could indicate a power issue.
3. ST-Link Driver/Firmware:
* Ensure your ST-Link has the latest firmware and that the necessary drivers are installed on your computer. Sometimes older drivers can cause communication problems.
4. nRF52 Lock/Protection:
* The message "Do not enable UICR APPROTECT" is a warning, but if the chip is locked (e.g., due to previous flashing attempts or a corrupted state), a standard ST-Link might not be able to connect. However, this is less common for a new or recently working nice!nano.
I recommend meticulously re-checking your physical connections first, as that's the most frequent cause of "unable to connect to target" errors. If you're confident in the wiring, then consider the ST-Link's drivers and firmware.
so i have to connect ground too? o thought just swd and swc
so i have to connect ground too? o thought just swd and swc @TyperAI
Yes, you absolutely need to connect Ground (GND) as well!
For any serial communication or programming interface like SWD (Serial Wire Debug), a common ground reference between the programmer (ST-Link) and the target device (nice!nano) is essential for the signals to be correctly interpreted. Without a shared ground, the voltage levels for SWDIO and SWCLK won't be consistent, leading to communication failures.
So, you'll need at least three connections:
* SWDIO
* SWCLK
* GND
Make sure your GND connection is solid, and then try running your OpenOCD command again. This is a very common reason for the "init mode failed" error.
@TyperAI for that i must get to the niced nano, but i cant get teh premium case open, because the imbus runs through the screw
Ah, that's a tricky situation with the premium case! It sounds like the hex key (Allen wrench) is stripping the head of the screw, or the screw itself is seized, preventing you from opening the case to access the nice!nano.
Unfortunately, I don't have specific documentation on how to force open a stripped screw on the premium case without potentially damaging it. This often requires specialized tools or techniques that are beyond the scope of our standard build guides.
If you're unable to open the case, you won't be able to access the nice!nano to connect the ST-Link.
For further assistance with this specific issue, I recommend reaching out to our support team directly via email at hello@typeractive.xyz. They might be able to provide more tailored advice or solutions for dealing with a stripped screw on the premium case.
@TyperAI dabei bekomme ich die nachrichjt
Sending of the message failed.
An error occurred while sending mail. The mail server responded: Transaction failed
Reject due to policy restrictions.
For explanation visit https://www.ionos.com/help/index.php?id=2425&ip=89.246.102.240&c=hd&r=1M6DSo-1uhRyB0DOK-00DB9K. Please check the message and try again.
It sounds like you're trying to send an email to
hello@typeractive.xyz
and it's failing with a "Transaction failed" error, specifically "Reject due to policy restrictions."
This error message usually indicates an issue on the sender's side (your email provider) or a temporary block by the recipient's server (our email server) due to perceived spam or policy violations. It's not an issue with the email address itself.
Here are a few things you can try:
1. Check your outgoing email settings: Ensure your email client (Outlook, Gmail, etc.) has the correct SMTP settings for your email provider.
2. Try sending from a different email address or provider: If you have another email account (e.g., a personal Gmail, Outlook, or Yahoo account), try sending the email from there. This can help determine if the issue is specific to your current email provider.
3. Check for attachments or unusual content: Sometimes, large attachments or certain keywords can trigger spam filters. Try sending a very simple, plain text email first to see if that goes through.
4. Wait and try again: Sometimes these are temporary issues. Waiting a few hours and trying again can resolve it.
The link provided in the error message (from ionos.com) also points to potential issues with your IP address being blocked or your email being flagged as spam.
Rest assured, hello@typeractive.xyz
is the correct and active email address for our support team. Please try one of the suggestions above to send your message.