• Visit https://www.embeddedcomputers.net/ for Hardware; Software and all other things related to FlashcatUSB

Build 330 and SST/PCT 25VF064C

GBreese

New Member
Build 330 isn't able to program SST (or PCT rebranded) 25VF064C. I also program 25VF016B frequently, and build 330 is working correctly with those.

1) The definition in SPI.VB is incorrect. It uses AAI mode that doesn't exist in the SST device. A second (correct) definition with PCT branding is included in SPI.VB, but the program stops searching when it finds the first (incorrect) definition. I can override this in three ways (patch source and rebuild in VS2010, patch binary EXE to change ID# of first definition, use manual SPI setting). But...

2) Writing to the device from firmware versions 3.04 and 3.05 will fail. Only every third page is written. I can use versions 1.09 or 2.02 of firmware with builds 282-312 with 100% stability.

I'm programming soldered devices on PC motherboards via a DediProg connector. The cable is 2" long and the longest traces on the motherboards is about 1".

PS: Any hope of releasing the Atmel source someday?
 
Never realized that they both have the same ID. I see it now:
AddDevice("SST 25VF064C", MB064, &HBF, &H254B, SST_64KB)
AddDevice("PCT 25VF064C", MB064, &HBF, &H254B, PCT_64KB)
I will see if the software can somehow figure out which chip you are using.
 
There's no need to differentiate between the two. The two chips are identical. PCT is a licensee of SST. They buy SST wafers. You'll find the partnership announcement posted at PCT's web site.

There should be a single item for BF/254B in the source code. It can have "SST/PCT" as the manufacturer.

I think the firmware author should be made aware of the issue I'd found where versions 3.04 and 3.05 no longer work with 25VF064C.

When I posted my original message, I'd spent a fair amount of time performing a mix-and-match of FlashCat software and firmware versions in order to support both 25VF064C and 25VF016B properly. I'm using build 312 of software and 2.02 of firmware for now.
 
The code is being update now. And a new SPI flash engine has been added. So there is going to be a BETA out shortly asking for people to verify the features they use. In addition, the Flash library has been updated to include the proper definitions for all Microchip devices (includes the SST and rebranded PCT).
 
Interesting!

I hope the developers can add a way for users to describe additional SPI devices by their JEDEC ID. The manual settings in the current app aren't great when I'm using a mix of devices.

Any hope of releasing the source code for the FlashCat's Atmel chip? I would have attacked the problem of 25VF064C failing to program (my #2 issue in the original post).
 
Last edited:
I revisited the issue (see my #2 in original post) of failing to program devices in v3.04+ firmware. (Can program with v1.09 or v2.02 firmware, not 3.04+.)

It isn't just SST/PCT. I can fail to program Winbond W25Q64BV and W25Q64FV. But, as noted in my original post, I'm programming soldered devices via the board's DediProg SF100-compatible ISP connector. This is apparently a factor. I now have another model of board with the same failure mode...

I have a sample of BCM MX87QD motherboard with a socketed W25Q64BV flash device and a DediProg connector. I can remove the flash chip, insert it in a ZIF socketed adapter, and program it using v3.04+ firmware. But I can't program the same chip via the DediProg connector.

I have a schematic for the older (non-BCM) board. There's a 3.3K pullup on CS# that effectively becomes a pulldown during ISP flashing, due to being attached to a +3.3v line that isn't powered by the DediProg connector. I can share this schematic privately.

One possibility... Perhaps the older FlashCat SPI firmware was always using output mode on CS# when not actively programming a flash device, and the newer firmware is not?

PS: MX87QD = http://www.bcmcom.com/e-ad/eletter_073013_MX87QD_Intel_Q87_Haswell_mini_ITX.html
 
I've settled my DediProg issue. The issue was fixed in firmware version 4.01. Along the way, I spent a fair amount of time figuring out what versions of hardware, firmware, and software can support SPI flashing on my discontinued 90USB162-based v1.7 BlackCat board.

Here are my findings in case other 90USB162 owners are interested.

The last working SPI firmware is version 4.05, found in builds 370, 390, 392 in the "Software\Firmware\PCB_1.x" folder.

The software versions that support firmware 4.05 for SPI flashing are builds 352 to 380. (Later versions cause the firmware to crash when writing.)

* The v1.2.0.0 signed driver works with these builds of software. This is the driver whose files are dated January of 2015, and are found in all builds between at least 340 and 446.

* The 352 to 380 software builds don't support updating the firmware of the 90USB162 via DFU. Use build 345 or lower.

Note that I only tested a single write-with-verify of a single SST 25VF064C using a Dediprog connector when collecting these findings. Your Mileage May Vary, as they say...
 
Back
Top