STM32L08 bank swap/remap/alias ?
Hi, I plan to use the STM32L082 for a product that must be safely in-field upgraded. I am trying to understand the dual bank feature to see if this could help me.
I would like to have the production firmware in Bank 1 via SWD, and the Bank 2 would be reserved to receive new firmware via RF. The bank 1 must be kept as a backup and never overwritten. Only the production firmware can receive and upgrade the MCU by writting bank 2. Could you challenge this strategy ?
I have read the documentation about the dual bank, the bank swap and so on, but I cannot find a clear explanation about the bank swap. I am confused about the remapping, the aliasing and the bank swapping. As an example, my production firmware "A" in bank 1 receives a new firmware "B", writes it in bank 2 and resets the MCU to start in bank 2 thanks to the BFB2 bit set. If I understand well, the system memory will check if the code is valid on bank 2 and jump on it. But, are the firmwares still in the same banks ("A" in bank 1, "B" in bank 2), or are they now swapped ("B" in bank 1 and "A" in bank 2) ? Since it is not clear in my mind, I do not know if I will be able to always boot onthe newest firmware which is always in bank 2 or not.
Thanks a lot for your help !
