Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flash test reads wrong value for status register 3 #340

Open
PatrickKa opened this issue Jan 12, 2025 · 0 comments
Open

Flash test reads wrong value for status register 3 #340

PatrickKa opened this issue Jan 12, 2025 · 0 comments

Comments

@PatrickKa
Copy link
Contributor

Description

Andriy found that on COBC 3.0 and 2.7 the status register 3 is 0x40 instead of 0x41. Seems like we never noticed that fail until now, but it was always there. A look at the datasheet shows that the bit that makes the difference shows whether the chip is in 3- or 4-byte-address mode. When initializing the chip, we explicitly enter 4-byte-address mode, but since we read 0x40 instead of 0x41 for status register 3, it seems like this does not work. Upon more datasheet reading, I found out that we only use the explicit 4-byte-read/write/erase commands, which always expect a 4-byte address no matter which mode the chip is in. Therefore, the simple solution to the problem is to just remove Enter4ByteAddressMode() from flash::Initialize() and check if status register 3 is 0x40 instead of 0x41.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants