GithubHelp home page GithubHelp logo

Comments (12)

McMCCRU avatar McMCCRU commented on June 14, 2024

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.

jacksonium avatar jacksonium commented on June 14, 2024

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.

McMCCRU avatar McMCCRU commented on June 14, 2024

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.

jacksonium avatar jacksonium commented on June 14, 2024

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.

McMCCRU avatar McMCCRU commented on June 14, 2024

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.

jacksonium avatar jacksonium commented on June 14, 2024

you mean commenting out all the lines with 0x37 in func enable_pins() ?

from snander.

McMCCRU avatar McMCCRU commented on June 14, 2024

No. In turn, at the beginning one, then the second and so on, but at least one must remain.

from snander.

jacksonium avatar jacksonium commented on June 14, 2024

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.

McMCCRU avatar McMCCRU commented on June 14, 2024

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.

McMCCRU avatar McMCCRU commented on June 14, 2024

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.

jacksonium avatar jacksonium commented on June 14, 2024

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.

McMCCRU avatar McMCCRU commented on June 14, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.