Winbond 25q32 Programmator
воскресенье 27 января admin 14
Jul 12, 2015 Winbond, cFeon and Micron (W25Q64, EN25Q64, N25064A) are very popular chips used in notebooks, PC, TV tuners etc. Most hardware failures are due to bios or firmware corruption.
A small PCB (extension bus to DIP-8 adapter) and a well configured SD card are all you need to turn your RPi into a SPI Flash programmer/dumper that you can use from the command line or your browser! Written originally for WizYAsep in C for Linux, only the low-level routines (GPIO and SPI) are specific to the Raspberry Pi. A smart programming algorithm has been developed to reduce wear. This system was integrated in the YGWM framework and uses the HYX file format.
It is currently limited to 3.3V chips with 24-bits addresses (128KB to 16MB capacity). I have validated 25LC1024, M25P40, A25L40P, AT26DF321, W25Q32BV, W25Q64, W25Q128F. Please contribute your own chips:-) Raspberry Pi 2/3 compatibility is coming. The purpose of this project is to support the and other Free Hardware Designs with the help of a device that is: • Cheap: no significant investment so even beginners can do it • Compact and autonomous: can operate with a battery pack for easy handling on site (yes I have used mine outdoors in winter with no access to mains.) • Easy to make yourself: simple, easy to find components, no hard-to-solder parts. • Based only on Free Software (Affero GPLv3+ is chosen for everything) • Exempt of any proprietary technologies (directly or indirectly), such as USB: no driver or configuration to do for the user (you can use any OS or browser) • Plug&Play: connect it to your computer or the local hub, point your browser to the IP and start playing. • Perennial: store it for years on a shelf without fear of obsolescence. • Powerful through integration with other modules from the YASEP framework A Flash SPI programmer is an essential engineering tool that has been done over and over.
I built my first LPT-based SPI programming dongle around 2004, using instructions found on the Web. It was cheap and smart, stealing the power supply off the pull-up resistors, but you know what happened to the parallel printer port.
Do you even have one left somewhere? Today most interfacing duties are performed over USB but this creates a whole lot of problems that will make me digress and rant. Fortunately Ethernet is one of the last communication ports that still remains in today's cost-conscious consumer (autistic) 'PC's. It requires no driver or explicit configuration (nowadays DHCP is the norm) and TCP/IP is a venerable, well understood protocol that reaches wayyyy beyond the boundaries of your desk. You can use the programer on a desk across the room, in another room, in another building. The Raspberry Pi also bridges the gap between sophisticated OS and IO bitbang, along with affordability and availability.
Its success strengthens the world of the Linux nanoPCs, where the competition benefits everybody and reintroduces directly-accessible IO pins! Deciding to host the YGWM framework on a Pi was a natural choice, despite Pi's shortcomings (let the competition do its work:-D). For a Free Hardware Design project to succeed, it is essential that the entry barrier remains as low as possible and now most hackers have a nanoPC or two to tinker with. Turning a Pi into a SPI master interface requires little additional hardware so the differentiation comes from the software and its integration. The OS is derived from Raspbian, my version is that can work without monitor and can be abruptly powered off without any risk.
The flashing program tries to do one thing and do it well. It is a single C program working as a CGI with the standard Apache HTTP server. It handles a custom file format called that is easy to understand, parse or generate. The trick is that it can support other file formats through the use of filters, like oldfashioned UNIX programs. UNIX filters are already provided to export/import in JSON and raw binary formats.