I currently develop a PCB compatible with Maple, but with additional functionality. For this I need to replace the STM32F103RBT (LQFP-64; 128kB Flash) with a STM32F103RZT (LQFP-144; 128kB Flash). Is this device (only more pins) compatible with the original Maple bootloader, IDE, compiler,...? For your help thanks a lot in advance!
Bootloader compatible with higher pincount?
(6 posts) (3 voices)-
Posted 3 years ago #
-
There is no such CPU. The 'R' behind 103 stands for 64 pins, 'V' is 100 pins, 'Z' 144 pins, so the CPU name must start with STM32103Z. It looks like all available devices are high density devices, so the next letter is at least 'C' for 256KB flash.
Posted 3 years ago # -
@wattsohn, you can take bootloader sources and tweak to make it work with your board. Since you're going to use high density device, probably Maple Native or Maple RET6 edition bootloader will be better starting point in this case. Once you'll have bootloader working, you can add definition for your board in Maple IDE.
Posted 3 years ago # -
Well you migh be rigth, but at the end of the day. my question is about
the bootload, IDE, compiler,... compatibility between the STM32 F103Z and
the original Maple bootloader.Posted 3 years ago # -
@Sir , yeah i tought about that but u know humain beain is lazy ;) so i was looking for a easy way to get over it. Actually i would have to follow ur suggestion. Thx
Posted 3 years ago # -
@wattsohn, OK, I'll try to rewrite my answer in more details. As long as we're talking about STM32F103, there are two parts of bootloader which may differ depending on particular board - USB disconnect functionality and device-specific differences. Device-specific differences do not depend on pin count, but depend on device type - low, medium and high density. In other words, device with, for example, 512K flash (high density) will be identical from the point of view of bootloader code and it does not matter how many pins in package. So, if you're trying to select proper bootloader among existing ones, then first you need is to find the board which uses MCU with same amount of flash. Then you should check if USB disconnect pin at this board connected to same GPIO as in your board. If both these parameters match, then bootloader will work with your board. If there are is no suitable board, then you can take bootloader code and tweak it to make it match your hardware. Just update disconnect pin definitions and linker script for flash size and you'll get bootloader for your board.
Forgot to mention: if your board has completely different LED and BUT pins you'll also need to update wiring code in order to make your board work in IDE. But this is another part of the picture.
So, if you're only designing your board, simplest way to reuse existing bootloader and make sure that everything will work, just wire up disconnect and BUT pins to same GPIO pins as at board which uses MCU closest by flash size to one you're plan to use.
Posted 3 years ago #
Reply
You must log in to post.