Actualizado el 28 de Abril, 2026.
https://github.com/lupyuen/lupyuen.github.io/blob/master/src/loader.md
https://lupyuen.github.io/articles/loader
https://pine64.github.io/bl602-docs/Quickstart_Guide/Linux/Quickstart_Linux_ubuntu.html
https://github.com/bouffalolab/arduino-bouffalo/tree/main
https://dev.bouffalolab.com/download
Descargar “Bouffalo Lab Dev Cube”
https://pine64.github.io/bl602-docs/Developer_Environment/BLFlashEnv/BLFlashEnv.html
https://github.com/sipeed/bl_mcu_sdk
https://github.com/SmartArduino/Doiting_BL/blob/master/README_EN.md
https://github.com/bouffalolab/bouffalo_sdk
Existen 3 SDK, el nuevo, bouffalo_sdk y 2 más, que son los antiguos. En los 2 SDK antiguos, bl_iot_sdk y bl_mcu_sdk la forma de compilar tu código es como está a continuación, utilizando genromap y luego flashear con BLDevCube, pero antes pone tu MCU en modo programación, con los botones que abajo se indican.
Se debe presionar el botón “D8” y luego “EN”, luego soltar ambos botones, así quedará en modo de programación(para “descargar”), osea subir el código en el MCU.
Para subir tu código al MCU es con BLDevCube, en el cual debes buscar 3 archivos para flashear el MCU:
/home/maximi89/Programacion/Doiting_BL/bouffalo_sdk/bsp/board/bl602dk/config/partition_cfg_2M.toml
/home/maximi89/Programacion/Doiting_BL/bouffalo_sdk/bsp/board/bl602dk/config/boot2_bl602_release_v8.1.3.bin
/home/maximi89/Programacion/Doiting_BL/bouffalo_sdk/examples/helloworld/build/build_out/helloworld_bl602.bin
En los SDK antiguos, debes compilar tu código con genromap, que internamente tiene un código como:
#!/bin/sh
make CONFIG_CHIP_NAME=BL602 CONFIG_LINK_ROM=1 -j
exit $?
Vale recordar que necesitas la variable de entorno, indicando la ubicación de tu SDK, de donde lo tienes almacenado, ya sea en “Descargas” u otra carpeta, en mi caso es así:
export BL60X_SDK_PATH=”$HOME/Programacion/Doiting_BL/bl_iot_sdk”
“git clone https://github.com/SmartArduino/Doiting_BL.git”
chmod -R 777 ./Doiting_BL/bl_iot_sdk/toolchain/
find ./Doiting_BL/bl_iot_sdk/customer_app -name “genromap”|xargs chmod 777
para compilar el código y generar el binario:
./genromap
En la nueva versión del SDK de Bouffalo(GNU/Linux), en mi caso tengo el SDK en esa ruta:
echo ‘export PATH=”$HOME/Programacion/Doiting_BL/bl_iot_sdk/toolchain/riscv/Linux/bin:$PATH”‘ >> ~/.profile
Con la variable anterior ingresada en tu entorno, podrás compilar rápidamente tu firmware para tu MCU con chip BL602:
make CHIP=bl602 BOARD=bl602dk
Una vez termine de compilar, podrás ver donde dejó todos los binarios para que los puedas ingresar en tu programa de flasheo, osea BLDevCube, tal como se muestra en la imagen a continuación:

Cabe indicar que utilizo mi aplicación para flashear con mi programador USB FTDI232 conectada a mi dispositivo por UART, por lo que el dispositivo que utilizo es /dev/ttyUSB0.
Velocidad 2.000.000 bps.
Una vez que pongas los 3 archivos, sólo le das a “Create & Download”, el código se debería subir e indicar 100% con la barra en color verde.
La placa DT-BL10 DevKit, integra el chip WCH CH340N (8 pines), que convierte desde USB a modo UART(serial por USB). Hoja de datos: https://www.alldatasheet.es/datasheet-pdf/pdf/1817214/WCH/CH340N.html
Velocidad soportada para Doiting DT-BL10 (WCH CH340)
| chip | baudrate |
|---|---|
| ch340 | <= 500K |
| cp2102 | <= 2M |
| ft232 | <= 2M |
| bl702 | <= 8M |
| bl616 | <= 10M |