Comments (12)
Hi! Is it a desoldered chip? You read flash in mode On-die ECC NAND? Use flag -d? I reflashed more than 30 chips of this name, never had any problems!
from snander.
Yes, it is a desoldered chip and I put it on a WSON8 to DIP8 adapter to use with CH341A. I read it with the -d flag.
Do you use windows/linux/mac primarily for this?
from snander.
If the problem data was multiple of the page sizes of 2Kb, then it would be possible to understand the problem, but in a few bytes, this is more likely your problem on your computer. The programmer reads everything into memory, and only then saves it to a file. Try using another computer. I tested on Linux and Windows this chips, no problems..
from snander.
Comparing files 8.bin and 9.BIN
00374EE1: 73 63
00859059: DB 5B
0114DEBF: 0C 4C
02A183E3: EA FA
This is an example. If i read the adress 02A183E3 by specifying:
SNANDer.exe -d -a 0x02A183E3 -l 10000 -r try1.bin
Out of 10 try. I would get 5 EA and 5 FA as the first byte of the file.
from snander.
Is the difference always at the same addresses? Try to solder capacitor on power supply of the flash chip at 0.1-0.47uF. You can also try commenting out several lines in the int enable_pins (bool enable) function CH341A_CMD_UIO_STM_OUT | 0x37 in ch341a_spi.c to reduce CS latency...
from snander.
you mean commenting out all the lines with 0x37 in func enable_pins() ?
from snander.
No. In turn, at the beginning one, then the second and so on, but at least one must remain.
from snander.
like this?
uint8_t buf[] = {
CH341A_CMD_UIO_STREAM,
// CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x36, // CS low (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_DIR | (enable ? 0x3F : 0x00), // Interface output enable / disable
CH341A_CMD_UIO_STM_END,
};
and then this?
uint8_t buf[] = {
CH341A_CMD_UIO_STREAM,
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
// CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x37, // CS high (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_OUT | 0x36, // CS low (all of them), SCK=0, DOUT*=1
CH341A_CMD_UIO_STM_DIR | (enable ? 0x3F : 0x00), // Interface output enable / disable
CH341A_CMD_UIO_STM_END,
};
from snander.
No. You commented out one line, checked, if it didn’t help to solve the problem, commented on the next one, leave the previous commented out, and so on!
from snander.
I strongly doubt that the problem is with my software, several people have been using it for over two years, no one has had a problem. Most likely the problem is in your programmer, a problem with the power supply, you may need to solder pull-up resistors for signals or a strong ripple in the power supply. Perhaps you need, on the contrary, to increase the delay time, add lines to the recommended function. I don’t know, didn’t face such problem. Perhaps your chip has bad blocks in the places it is trying to read ...
from snander.
just tried on another computer and it is the same. Maybe as you say, the chip has bad blocks...
I have a question though, will the ECC in the chip itself take care of these bad blocks during runtime?
from snander.
The NAND controller of your device, from where you desoldered the chip, uses its own work ECC algorithm. Most likely, he created a backup copy of the broken blocks and stores a table of these blocks somewhere on the flash. If you enable the mode of the internal ECC algorithm in the chip, then most likely the device will not work for you. NAND controller has its own view of data storage. Make a flash memory backup with the -d option, I think it will work for you even if there are bad blocks.
from snander.
Related Issues (18)
- Devices use 1.8v voltage HOT 2
- OLD issue new person TC58CVG2S0H HOT 20
- The read ECC data are all 0xFF, is this normal? HOT 3
- Adding support for different programmers. HOT 5
- Request for adding support for PN26Q01A HOT 4
- GigaDevice GD5F1GQ5UEYIG HOT 2
- Migrate a ROM MXIC HOT 1
- hello HOT 3
- SPI-Nand issue with programmer HOT 1
- '-a' flag will write to rest space of the whole chip by default. HOT 2
- Failed to write or erase when changing chips without reconnecting the programmer.
- ECC Fail Check HOT 1
- When I compile SNANDer, I got this error
- A build issue need fix! HOT 1
- Ecc error? HOT 5
- Question on status register and reading consistency HOT 1
- SPI NAND Flash not Detected HOT 21
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from snander.