BRT Community

General Category => Discussion - EVE => Topic started by: david on February 05, 2024, 04:17:58 PM

Title: Winbond W25Q01JV write problems
Post by: david on February 05, 2024, 04:17:58 PM
Hi,

I am trying the W25Q01JV flash with 1Gbit size and have problems while flashing. When I do a crc calucation after I wrote a sector (4K) I get errors on very specific sectors. All of them are the odd indices. F.e. Sector 0 (0-4095), sector 1 (8191) fails, the next one is successful again.
Just to show an example, those are the first few sectors which fail: 37, 43, 45, 67, 69, 73, 75, 77, 79, 97, 99
It seems to only happen, when I switch to FLASH_STATUS_FULL after writing the Blob. So I stopped to switch to FLASH_STATUS_FULL when writing on the flash.

But whenever I don't switch to FLASH_STATUS_FULL I cannot write more than 16 Megabyte. I get address errors back when using CMD_FLASHUPDATE (invalid address). This is the error I get when reading out RAM_ERR_REPORT:
illegal flash address in cmd_flashupdate()

This error I would usually get when my Flash would have a size of <= 16 Megabyte, but I am writing after that address. The BT chip seems to get the correct size, because I get "128" back for REG_FLASH_SIZE.

Is there a compatibility issue with that Winbond flash? I checked this list and did not find any flash with 1Gbit size, which I need: http://www.brtcommunity.com/index.php?topic=77.msg1658#msg1658

I also changed the flash on my board to make sure that it is not damaged, but had the issue with 4 different pieces. Do you have any suggestions how to debug that or any information if that Winbond flash has been tested by someone already?
Title: Re: Winbond W25Q01JV write problems
Post by: BRT Community on February 06, 2024, 04:11:32 PM
Hi David,

We will discuss with our hardware team to check,
Does your flash have other functions multiplexed onto the same IO pins such as HOLD and RESET?
Could you also advise if you have resistors pulling up certain flash pins etc.

Best Regards, BRT Community
Title: Re: Winbond W25Q01JV write problems
Post by: david on February 07, 2024, 11:47:59 AM
Thanks for the fast answer.
I am using 47K on CS, SCLK, IO2 and IO3. No pull ups on MOSI/MISO. I also tried it one time without any pull ups and one time with 10K.
The pins are not multiplexed by something else but are just connected to the BT817.

On the exact same board, the "W25Q128JVEIQ" is working fine. Both have the same package so I replaced them for testing.
A special thing about the "W25Q01JV" is, that it has stacked dies (2x 512M-bit), but they are both linear addressable.