Change BCW920737TAG from EEPROM to SFLASH failed

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi All,

We changed the resistors as 920737TAG03-HWUM100-R.pdf described.

setting.png

But when we tried to download in the IDE, the following error comes out:

err.png

The board worked well with EEPROM.

What should we check? Thanks in advance!

Best Regards,

Philip

0 Likes
1 Solution
Anonymous
Not applicable

Hi All,

Finally I changed the SPI flash on the EVK to the one supplied by Broadcom distributor Alltek and everything works fine now... I don't think the MXIC 4035 originally soldered on the 20737tag is supported well in broadcom minidriver..

Thank you all for the help

Best Regards,

Philip

View solution in original post

29 Replies
JaWa_2142591
Level 5
Level 5
25 likes received 10 likes received First like received

Have you put "PLATFORM_NV=SFLASH" when make target?

0 Likes
Anonymous
Not applicable

Thanks a lot. We will try...

I didn't notice the "PLATFORM_NV=SFLASH" in the documents. Could you please let me know which doc it is inside?

0 Likes

Hi janusw,

I had add the "PLATFORM_NV=SFLASH" in make target, but still download failed.

Failed log:

echo Downloading application... && Tools\ChipLoad\Win32\ChipLoad.exe -BLUETOOLMODE -PORT COM3 -BAUDRATE 115200 -MINIDRIVER Platforms/BCM920737TAG_Q32/uart_DISABLE_EEPROM_WP_PIN1.hex -BTP Platforms/BCM920737TAG_Q32/20737_SFLASH.btp -CONFIG build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release.hex -CHECKCRC -NOVERIFY -DLMINIDRIVERCHUNKSIZE 251 > build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/download.log 2>&1 && echo Download complete && "Tools/common/Win32/echo.exe" && echo Application running || echo '****Download failed - Press the reset button on the device and retry ****'

0 Likes
Anonymous
Not applicable

Hi Janusw and all,

I added "PLATFORM_NV=SFLASH" and the result still the same.

the console window of the IDE said

echo Downloading application... && Tools\ChipLoad\Win32\ChipLoad.exe -BLUETOOLMODE -PORT COM32 -BAUDRATE 115200 -MINIDRIVER Platforms/BCM920737TAG_Q32/uart_DISABLE_EEPROM_WP_PIN1.hex -BTP Platforms/BCM920737TAG_Q32/20737_SFLASH.btp -CONFIG build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release.hex -CHECKCRC -NOVERIFY -DLMINIDRIVERCHUNKSIZE 251 > build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/download.log 2>&1 && echo Download complete && "Tools/common/Win32/echo.exe" && echo Application running || echo '****Download failed - Press the reset button on the device and retry ****'

Downloading application...

'****Download failed - Press the reset button on the device and retry ****'

Please anybody can help me. Thanks in advance

0 Likes
Anonymous
Not applicable

I'm not sure I could help.

But what build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/download.log says?

0 Likes
Anonymous
Not applicable

It (build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/download.log) says

" BluetoolDownloadMinidriver failed!"

that's all.

what should I check further?

0 Likes

Can you try downloading after turning off dip switches 5,6,7, and 8 on SW4 and then resetting the device? It is likely that since this is the first time the chip tries to boot from SF (which is generally empty coming out of the factory), it will come up in recovery mode. So edit your application's make target and add UART=COMXX (where XX is the com port to which the device is connected to) and instead of 'download' use 'recover'. See the quick start guide for info on recovery mode.

0 Likes
Anonymous
Not applicable

Hi Arvinds,

Thanks for your reply.

I turned off 5,6,7,8 of SW4 and changed the command line to

hello_sensor-BCM920737TAG_Q32 recover UART=COM32 PLATFORM_NV=SFLASH VERBOSE=1

where COM32 is the first com port listed in windows device manger.

then reset target with SW5 pressed.

the recovery failed as the console window said:

"

echo Recovering platform ...
Opening ../../build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/A_20737A1-hello_sensor-rom-ram-spar.elf to read
Seeking to 3280 into ../../build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/A_20737A1-hello_sensor-rom-ram-spar.elf
Recovering platform ...

Tools\ChipLoad\Win32\ChipLoad.exe -BLUETOOLMODE -PORT COM32 -BAUDRATE 115200 -NODLMINIDRIVER -MINIDRIVER Platforms/BCM920737TAG_Q32/uart_DISABLE_EEPROM_WP_PIN1.hex -BTP Platforms/BCM920737TAG_Q32/20737_SFLASH.btp -CONFIG build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release.hex -CHECKCRC -NOVERIFY -DLMINIDRIVERCHUNKSIZE 251 > build/hello_sensor-BCM920737TAG_Q32-rom-ram-Wiced-release/download.log 2>&1 && echo Recovery complete && "Tools/common/Win32/echo.exe" && echo Application running || echo **** Recovery failed - retry ****

"

However, there were more information in download.log file this time. It seemed that the flash write CRC check failed.

"

Download minidriver successfully had written 251 bytes to address 0x00209F00
Download minidriver successfully had written 251 bytes to address 0x00209FFB
Download minidriver successfully had written 251 bytes to address 0x0020A0F6
Download minidriver successfully had written 251 bytes to address 0x0020A1F1
Download minidriver successfully had written 251 bytes to address 0x0020A2EC
Download minidriver successfully had written 251 bytes to address 0x0020A3E7
Download minidriver successfully had written 251 bytes to address 0x0020A4E2
Download minidriver successfully had written 251 bytes to address 0x0020A5DD
Download minidriver successfully had written 251 bytes to address 0x0020A6D8
Download minidriver successfully had written 251 bytes to address 0x0020A7D3
Download minidriver successfully had written 251 bytes to address 0x0020A8CE
Download minidriver successfully had written 251 bytes to address 0x0020A9C9
Download minidriver successfully had written 251 bytes to address 0x0020AAC4
Download minidriver successfully had written 251 bytes to address 0x0020ABBF
Download minidriver successfully had written 251 bytes to address 0x0020ACBA
Download minidriver successfully had written 251 bytes to address 0x0020ADB5
Download minidriver successfully had written 251 bytes to address 0x0020AEB0
Download minidriver successfully had written 251 bytes to address 0x0020AFAB
Download minidriver successfully had written 251 bytes to address 0x0020B0A6
Download minidriver successfully had written 251 bytes to address 0x0020B1A1
Download minidriver successfully had written 251 bytes to address 0x0020B29C
Download minidriver successfully had written 251 bytes to address 0x0020B397
Download minidriver successfully had written 251 bytes to address 0x0020B492
Download minidriver successfully had written 251 bytes to address 0x0020B58D
Download minidriver successfully had written 251 bytes to address 0x0020B688
Download minidriver successfully had written 251 bytes to address 0x0020B783
Download minidriver successfully had written 251 bytes to address 0x0020B87E
Download minidriver successfully had written 251 bytes to address 0x0020B979
Download minidriver successfully had written 251 bytes to address 0x0020BA74
Download minidriver successfully had written 251 bytes to address 0x0020BB6F
Download minidriver successfully had written 251 bytes to address 0x0020BC6A
Download minidriver successfully had written 251 bytes to address 0x0020BD65
Download minidriver successfully had written 251 bytes to address 0x0020BE60
Download minidriver successfully had written 251 bytes to address 0x0020BF5B
Download minidriver successfully had written 251 bytes to address 0x0020C056
Download minidriver successfully had written 251 bytes to address 0x0020C151
Download minidriver successfully had written 251 bytes to address 0x0020C24C
Download minidriver successfully had written 251 bytes to address 0x0020C347
Download minidriver successfully had written 251 bytes to address 0x0020C442
Download minidriver successfully had written 251 bytes to address 0x0020C53D
Download minidriver successfully had written 251 bytes to address 0x0020C638
Download minidriver successfully had written 251 bytes to address 0x0020C733
Download minidriver successfully had written 251 bytes to address 0x0020C82E
Download minidriver successfully had written 251 bytes to address 0x0020C929
Download minidriver successfully had written 104 bytes to address 0x0020CA24
Download minidriver successfully had written 8 bytes to address 0x0020D254
Launch minidriver at 0x00209F00 succeeded
Download config successfully had written 40 bytes to address 0xFF000000:  01 08 00 F0 00 00 62 08 C0 5D 89 FD 04 00 FF FF FF FF 40 06 00 00 B6 1E 7A 73 20 02 0A 00 00 40 00 00 00 20 00 00 00 10
Downloaded 0 code bytes ( 0.0%) and 40 data bytes ( 0.7%). Verified 0 code bytes ( 0.0%) and 0 data bytes ( 0.0%).   Current state: Terminated with error


A total of 1 contiguous memory areas were filled:
[FF000000..FF000027] DATA (40 bytes)
CRC mismatch while checking 40 bytes starting at address 0xFF000000; host computed 3B99D3C8, firmware computed 8CD04C73

"

Are you using the same Macronix Serial Flash that is supported by the ROM and ships on the latest TAG board?Macronix.png

0 Likes

Hi mwf_mmfae,

Yes, I use the 20737 EVK, Macronix Serial Flash is on it.

I had turned off the dip switch 5-8 on SW4, and try the download and recover mode, still download failed.

0 Likes

And do you have the resistors as in Table 2/Figure 2 (page 9) populated as in 920737TAG03-HWUM100-R.pdf?

0 Likes

Hi arvinds,

Yes, I do it, change the RD2/RD3/RD4, and install R100 and R101.

0 Likes
Anonymous
Not applicable

Hi mwf_mmfae, arvinds,

Thanks for your replies..

I did not change the flash ic on the EVK. And I did all the resistors settings according to the Broadcom document 920737TAG03-HWUM100-R.pdf.

Is it a bug? Does the same BCW920737TAG work well with the on-board sflash at your site?

Regards,

Philip

0 Likes
Anonymous
Not applicable

By the way, have you changed hello_sensor_puart_cfg?

> // Following structure defines UART configuration.  Please note that

> // if Serial Flash is being used GPIO_PIN_UART_TX should be 24 and

> // GPIO_PIN_UART_RX should be 25.  Because standard 31 and 32 are used

> // by Serial Flash

> const BLE_PROFILE_PUART_CFG hello_sensor_puart_cfg =

> {

>     /*.baudrate   =*/ 115200,

>     /*.txpin      =*/ GPIO_PIN_UART_TX,

>     /*.rxpin      =*/ GPIO_PIN_UART_RX,

> };

0 Likes

Hi ewarrior,

I have a BCM920737TAG board, have the same issue.

My modification:

1. according the 920737TAG03-HWUM100-R.pdf, change the RD2/RD3/RD4 position, and install R100 and R101.

2. turn off the dip switch 5-8 on SW4

0 Likes
Anonymous
Not applicable

By checking MXIC web-site:

MX25U4035 which is used on TAG board is NOT Recommended.

This should mean, 1.8v sFlash is actually okay, but the flash used on TAG board is immature yet.

0 Likes
Anonymous
Not applicable

we find the right way to download firmware with the SDK . please check it :

  1. Empty SFlash

Must use the recover mode to download image because 20736 P0 is high on your board.

  1. Had program the application in SFlash, and the application can run successfully

Most downloading can use the normal downloading, but sometimes still need use the recover downloading.

  1. Had program the application in SFlash, and the application can NOT run successfully, how to recover it.
  • Connect the SPI_MOSI to GND, power on
  • Check reset command whether is OK in bluetool, if not re-do setp(1)
  • Disconnect the SPI_MOSI from GND
  • download image by SDK or bluetool

BTW, you can use the following the HEX file to erase the SFlash, the manual erasing flash can’t work in the bluetool that I used.

0 Likes
Anonymous
Not applicable

Hi Level 4 and all,

I suspect my SPI flash corrupts and it needs a erase. because in the download.log file I saw CRC failure of Flash.

Download config successfully had written 40 bytes to address 0xFF000000:  01 08 00 F0 00 00 62 08 C0 5D 89 FD 04 00 FF FF FF FF 40 06 00 00 B6 1E 7A 73 20 02 0A 00 00 40 00 00 00 20 00 00 00 10
Downloaded 0 code bytes ( 0.0%) and 40 data bytes ( 0.7%). Verified 0 code bytes ( 0.0%) and 0 data bytes ( 0.0%).   Current state: Terminated with error


A total of 1 contiguous memory areas were filled:
[FF000000..FF000027] DATA (40 bytes)
CRC mismatch while checking 40 bytes starting at address 0xFF000000; host computed 3B99D3C8, firmware computed 8CD04C73

Can you show me in detail of bluetool to manual erase? I am a newbie to your broadcom tools.

Thanks in advance!

Bluetool is an internal tool the development team uses.  It's not for public release as far as I know.

0 Likes

Note that serial flash, especially at smaller densities is a moving target as life expectancy for most devices in this space is less than a year.  This was not intentional and it actually happens more often than you'd think with development boards from a multitude of chip suppliers.

If I'm not mistaken, the 4033 supersedes this device.

0 Likes
Anonymous
Not applicable

Wow!   This is the exact same thing I am seeing in my download.log file.  I have a circuit with a BCM20736S and we are using an external memory chip connected to SDA/SCL.  Is there some connection maybe?

In the download log there is this:

Download minidriver successfully had written 8 bytes to address 0x002043FC

Launch minidriver at 0x00201000 succeeded

Chip erase in progress

Downloaded 0 code bytes ( 0.0%) and 0 data bytes ( 0.0%). Verified 0 code bytes ( 0.0%) and 0 data bytes ( 0.0%).   Current state: Executing -- erasing chip

Download config successfully had written 40 bytes to address 0xFF000000:  01 08 00 F0 00 00 62 08 C0 5D 89 FD 04 00 FF FF FF FF 40 06 00 A3 02 1B 6A 73 20 02 0A 00 80 05 00 00 40 01 00 00 00 04

Downloaded 0 code bytes ( 0.0%) and 40 data bytes ( 0.6%). Verified 0 code bytes ( 0.0%) and 0 data bytes ( 0.0%).   Current state: Terminated with error

A total of 1 contiguous memory areas were filled:

[FF000000..FF000027] DATA (40 bytes)

CRC mismatch while checking 40 bytes starting at address 0xFF000000; host computed 7BD66B74, firmware computed 8CD04C73

0 Likes

Per below:

"Hi All,

Finally I changed the SPI flash on the EVK to the one supplied by Broadcom distributor Alltek and everything works fine now... I don't think the MXIC 4035 originally soldered on the 20737tag is supported well in broadcom minidriver..

Thank you all for the help

Best Regards,

Philip"

Hi ehoffman,

Do you use the SDK to download image?

Anonymous
Not applicable

Hi zhaohua, thanks for the reply.

Yes, I use the SDK to download (both recover and download fail the same way).  The BCM20736S has internal EEPROM memory.  Our custom circuit adds additional external EEPROM via the SCL/SDA pins on the module.  I have received suggestions on other threads that maybe there is an address conflict between the two.  Also one suggestion to hold SDA high while resetting, although this is difficult for me since the board is small and we don't have SDA line easily accessible.  Also I don't see this in the docs for 736S so I wonder if he's talking about the 732 perhaps.

0 Likes
Anonymous
Not applicable

My problem with CRC error on download was unrelated to the original post in this thread.  In case it is of interest to future readers, my problem was fixed by reassigning the address pins on the external EEPROM.  The internal EEPROM in the BCM20736S module has the three address pins set to zero.  We had used the same address on our external EEPROM and this was causing the CRC to fail on the readback.   Another way to bypass the CRC error on download is by removing the -CHECKCRC switch from the Chipload command in the makefile, however this just masked the problem and didn't solve it.

Anonymous
Not applicable

Hi All,

Finally I changed the SPI flash on the EVK to the one supplied by Broadcom distributor Alltek and everything works fine now... I don't think the MXIC 4035 originally soldered on the 20737tag is supported well in broadcom minidriver..

Thank you all for the help

Best Regards,

Philip

Thanks for adding the resolution to the thread.  Which flash device did you end up using?

0 Likes
Anonymous
Not applicable

MX25U4033 works well.

0 Likes

Thanks.

0 Likes