2023-08-31 09:47 AM
I am using STM32L073RZI MCU on a custom PCB design. I am looking for a board that flashes the chip before I place it on the PCB. I checked st.com website and I didn't see any product to flash the chip. Is there any board to flash the firmware onto the MCU?
Thanks
2023-08-31 10:37 AM
You'd typically use a) an SWD/JTAG pod like an ST-LINK or J-LINK, or b) use the System Boot Loader in ROM via BOOT0=HIGH, and perhaps USART1 PA9/PA10, see AN2606 and AN3155
You could buy a Stand-Alone programmer pod, that holds a Golden Image which it flashes onto the device.
You could use another board with an MCU and enough flash to hold the Golden Image, and then reset/boot into the boot loader, and transfuse the image in. That's how the Arduino MKR WAN1300 updates the STM32F072 firmware in the Mutata LoRa module. The example firmware to do this is post on the relevant GitHub
https://github.com/arduino-libraries/MKRWAN/tree/master/examples/MKRWANFWUpdate_standalone
2023-08-31 10:46 AM
The suggestions of @Tesla DeLorean are good, but you wanted a board that is ultimately an adapter board with the minimum circuitry for programming. This is the job of programmer manufacturers or distributors with programming services. Your case is also a bit special because it is a UFBGA64 with a pitch of 0.5mm, which is not easy to adapt manually.
If you cannot program the chip soldered on, it seems to me that the easiest way is to have it programmed by one of the above-mentioned distributors or a programming service.
Good luck
/Peter
2023-08-31 12:24 PM
Option A - we have SWD and UART options available on the custom board but in case there is some issue with hardware and SWD/JTAG is unavailable.
Option B - Seeing the table below and reading that "The nBOOT1 bit is located at bit 31 of the FLASH_OPTR register, which is initialized to the value 0x807000AA during the production process. " made me worry if Boot Mode is changed to Embedded RAM then bootloader code might not be executed which is needed to flash firmware from USB or UART interfaces.
Stand-Alone programmer pod is exactly what I am looking for but I am using the BGA package which doesn't provide easy access to the pin legs.
2023-08-31 12:26 PM
Yeah, I will try to find Stand-Alone programmer pod for the BGA package.