Topic : Can't program STM32 with RFlasher/RLink-Pro

Forum : ARM

Original Post
Post Information Post
April 24, 2008 - 9:50pm
Guest

My new board programs successfully using IAR's EWARM and (Segger) jlink system, but not using RFlasher Version 6.10.22, Build number BN747-ST7-ARM-80C51-P1 with an RLink-Pro. (I am able to program STR750 boards with this RFlasher/RLink-Pro set.)

I have RFlasher configured for my device, STM32F101CBT6, but the little descriptor box is blank, unlike when I set it for my STR750, when it states: "32-bit MCU with single voltage (etc)". When I select the "Connect to RLink" button, the pop-up states: "Cortex Drv message / RLink Serial number is: "dngSR7P00000163" / This RLink can be used for STM3x devices without limitation."

But when I select the "Connect to target" button, the pop-up states: "Unknown device: WrongDevice: STM32F101CBT6."

Because our board is so small, we have built an adapter card to allow communications between the pod's JTAG connector and the one on our board. The IAR/Segger has no trouble with this, and reads the target as "Cortex-M3, Core Id: 0x3BA00477 / Endian Little."

What am I missing? What is wrong with my RFlasher/RLink-Pro system?

Replies
Post Information Post
+1
0
-1
April 25, 2008 - 8:40am
Guest

Try to select another device STM32F101RBT6 instead of STM32F101CBT6
Rgds

+1
0
-1
April 25, 2008 - 10:58am
Guest

Hi Larry

I think you will reeceive by email an answer to this issue.

For people who meet this problem:
We have noted this could happen depending on how the patches where added.

The best solution for this is try installing the new Ride7 and the corresponding toolchains you need and to use RFlasher7.
The bug has been fixed and also you can get support whereas RFlasher6 is not supported anymore.

Matloub

+1
0
-1
April 25, 2008 - 8:16pm
Guest

I downloaded the new Ride 7 as you suggested and brought up RFlasher7 (Ride7 IDE Version 7.02.0001, RKitARM for RIDE7 version 1.04.0001). I selected my processor (STM32F101CBT6). Then I set up Automatic mode configuration by checking every box: Erase, Blank Check, Program, Verify, Reset and Run, Loop (mass programming). When I selected Auto Mode - Go!, everything went well until verification, where I got the following messages:

Error: Flash and Memory are different at address 0x8001000
Found 0x4E in Flash expected 0x2.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x8002000
Found 0x8 in Flash expected 0x4E.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x8004001
Found 0x22 in Flash expected 0x28.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x8007000
Found 0x9 in Flash expected 0x0.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x8008000
Found 0x8 in Flash expected 0x9.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x800A000
Found 0x0 in Flash expected 0x2.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x800D000
Found 0x40 in Flash expected 0x2.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x800E000
Found 0xB8 in Flash expected 0x40.
The addresses higher than this have not been tested.

Error: Flash and Memory are different at address 0x8010000
Found 0x2 in Flash expected 0x0.
The addresses higher than this have not been tested.

This programming effort has caused the unit to become non-functional, presumably because of the errors listed above. (Power cycles don't help.) I've tried it three times, and each time got the identical set of Error messages.

I remind you that, as stated in my original post, I've had no trouble programming this device (i.e., not just the same model but the very circuit board) with a competitor's software and probe. What am I missing? What is wrong with my RFlasher/RLink-Pro system?

+1
0
-1
April 28, 2008 - 9:43am
Raisonance Support Team

Hi,

I will need more information for solving the problem. For this, please perform some tests and give me the results...

Please try to select the "STM32F103RBT6" in RIDE and to perform all the programming operations by hand, using the buttons in the panel instead of the auto mode. Please also uncheck the "verify" option in the auto mode configuration and tell me if the programmation succeeds. (and then perform the verification using the button)

If selecting the STM32F103RBT6 solves your problem, then it's probably the same bug I'm already working on. You can go on working by selecting the RBT6 until I make a patch.
If the problem persists when selecting the STM32F103RBT6, then I think that I will need to have to your hex file here before I can solve the problem.
Please send it to "support@raisonance.com".

Best Regards,

Vincent

+1
0
-1
April 28, 2008 - 12:08pm
Raisonance Support Team

Hi,

Please give a try at this fix, I think it will solve your problem:
ftp://www.raisonance.com/temp/ST/temp_fix_080428_try1.zip

Please tell me how it goes and if it's OK, then I will make an official release including it.

Best Regards,

Vincent

+1
0
-1
April 28, 2008 - 5:55pm
Guest

Dear VincentC --

I installed the file that you link to in your most recent post. Changing the processor per your slightly earlier suggestion, to STM32F103RBT6, allowed for proper programming.

I programmed in Auto mode, with the Configure still set to have every box checked. The only problem was that the unit didn't "Reset and Run" in Auto mode; I had to manually push the Reset and Run button. But this should not be a problem for production.

Auto mode programming with my actual processor selected, the STM32F101CBT6, still fails during the programming step, but with an "OPI Driver Error (ARM) / Plugin timeout expired." message this time.

Programming without Auto mode is not helpful to us, as we are looking for a production solution and don't want non-tech staff to have to push a lot of buttons. At this point it looks as though we have a working solution. Thanks for your efforts.

+1
0
-1
April 29, 2008 - 3:03pm
Raisonance Support Team

Hi,

Thanks for your tests and feedback.

Even though you have a working solution, I'd like to correct the "timeout expired" problem. Can you send me your hex file to "support@raisonance.com"? If it is confidential we can sign a NDA. But maybe if you just tell me the last address containing non-FF data in your hex file, then I could be able to reproduce and solve the problem.

About the "reset and run" problem, considering that it works fine on my board, I think I would need to see your board's schematic for understanding the problem. Can you check that you have connected both the RST and TRST signals from RLink to the respective signals on the STM32, and that they are NOT connected with each other?

Best Regards,

Vincent