import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.B9AX-CPi.js"; const __pageData = JSON.parse('{"title":"WeAct Blackpill (STM32F4x1)","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_blackpill_f4x1.md","filePath":"platformdev_blackpill_f4x1.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_blackpill_f4x1.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

WeAct Blackpill (STM32F4x1)

This document applies to the F401- and F411-based Blackpills.

The WeAct Blackpill is a popular choice for handwired boards, as it offers a powerful micro controller, USB Type C, a good number of pins to use, and a large amount of firmware space. All for a ~$6 USD price tag.

Blackpill F411

Pin Usage Limitations

While the Blackpill is a great choice to use in your keyboard, there are a number of caveats in regards to using them. The first is that a number of exposed pins cannot be used, or have special considerations/hardware tweaks that are required for proper operation.

Unusable pins

Pins to be avoided

Shared Usage

Limited Usage

Additional Information

Bootloader issues

Due to the use of a 25MHz crystal, the controller may have issues entering the bootloader. Heating up the controller can help with this issue.

Also, if pin A10 is connected to anything at all, it needs to have a pull-up resistor (see Pins to be avoided, above)

Tiny UF2 Support

There is tinyuf2 support for the WeAct Blackpill. Instructions on how to compile the bootloader can be found here. Setting BOOTLOADER = tinyuf2 will enable support for this user bootloader, and the correct configuration to prevent it from being overwritten when flashing firmware.

', 21); const _hoisted_22 = [ _hoisted_1 ]; function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { return openBlock(), createElementBlock("div", null, _hoisted_22); } const platformdev_blackpill_f4x1 = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]); export { __pageData, platformdev_blackpill_f4x1 as default };