aerobotics

NANDopen

 
Overview

###
This introduction is an open source project ported from Github: https://github.com/bbogush/nand_programmer. It is an open source NAND programmer based on STM32. I hope more enthusiasts can improve it.

#### Record

- 2022-11-29 The attachment `NANDO_Installer_x64_win10_3.4.2.exe` is a Windows 10 64-bit client, and the PCB version required is 3.4
- 2022-12-08 Due to the epidemic, the PCB just arrived today, and I took the time to put it in The board was welded by hand. It took two hours to solder the board. The main reason was that the 100-pin microcontroller was not easy to assemble and soldered easily.
- The program can be brushed directly according to the steps of the original author, that is, replacing the STM tools with GD tools, it is very simple!

![Main control board] ![Adapter board] ![Correct firmware identification]
#### PCB
![board.jpeg]
#### Application (linux)
![host_app.jpeg]
#### Features
> I won’t go into detail here, I believe all of you are much better at English than I am
- USB interface
- PC client software for Linux & Windows.
- TSOP-48 socket adapter for NAND chip (compatible with TL866 adapter)
- TSOP-48 solder adapter for NAND chip
- 8 bit parallel NAND interface
- SPI interface
- 3.3V NAND power supply
- NAND read,write and erase support
- NAND read of chip ID support
- NAND read of bad blocks
- NAND bad block skip option
- NAND include spare area option
- Open KiCad PCB & Schematic
- Open source code
- Read & Write LEDs indication
- Extendable chip database
- Chip autodetection
- Firmware update
#### Disadvantages
>- Low flash write speed on Windows 10. Probably issue with driver.
> - No support of ECC calculation. In order to recover some device firmware the dump with spare area is required.

It should mean that writing is slower in Windows 10 system, which may be a driver problem.
There is no ECC calculation, some firmware may need to be dumped!
#### Supported chips
- Parallel NAND:
K9F2G08U0C, HY27US08121B, TC58NVG2S3E, F59L2G81A, MX30LF2G18AC and others.
See full list of supported chips qt/nando_parallel_chip_db.csv
>Full list in qt/nando_parallel_chip_db.csv file, You can add it yourself, The attachment can be seen after decompression.

- SPI flash
AT45DB021D, MX25L8006E, W25Q16JV and others.
See full list of supported chips qt/nando_spi_chip_db.csv
>The complete list is in the qt/nando_spi_chip_db.csv file. You can add it yourself. You can see it after decompressing the attachment.
#### Original application & firmware
text: You can download host application deb package for Ubuntu/Windows installer, firmware binary for STM32, schematic and gerber files from Google Driver.
> It means that they are all on Google Cloud Disk, and of course they cannot be accessed in China. Yes, here I will move domestically.

#### License
original text:
In general the sorce code, PCB and schematic are under GPLv3 license but with limitations of:
firmware/libs/spl/CMSIS/License.doc
firmware/libs/spl/STM32_USB-FS-Device_Driver/ - http ://www.st.com/software_license_agreement_liberty_v2
firmware/usb_cdc - http://www.st.com/software_license_agreement_liberty_v2`
> The general idea is to follow the GPLv3 agreement. Of course, many domestic people will ignore this. You must not do this~~


#### WiKi
original text: Check WiKi page for more information.`
>Here is a link to Github. I wonder if you can access it. The address is: https://github.com/bbogush/nand_programmer/wiki

#### The porter said
- I don’t know if the platform has this project. I searched for nand and it seems No relevant ones were found, most of them are SPI programmers.
- I moved this project because my classmate Xiao Ai was bricked by me. It costs several hundred to buy a nand. It is too expensive and I can’t afford it.
- The project wiki is still very helpful. If a friend cannot access it, just leave a message and I will find a way to synchronize it to China.
- The attachments of Google Cloud Drive are very large, I will try my best to download them all.
- The attachment nand_programmer was downloaded on 2022-11-24. If Github is updated, I should upload it simultaneously.
- This supported nand film seems to be very few, but you can actually add it by yourself. It is quite easy to read the instructions.

### **Finally, I wish you all no bricks in flashing your phone! **

>I am too poor to buy a commercial programmer!

PS, here is the original text of adding the chip:
Add new parallel NAND chip
Open Settings - Parallel chip database and add chip parameters from datasheet.
- Name - name of chip.
- Page Size - page size in bytes without spare area (hexadecimal).
- Block Size - block size in bytes without spare area (hexadecimal).
- Total Size - total size in bytes without spare area (hexadecimal).
- Spare Size - spare size in bytes (hexadecimal).
- BB mark off. - the offset of byte in the spare area which contains bad block mark. The block is considered as bad if the byte contains non 0xFF value. The offset starts from 0.
- tCS - Chip Enable (CE) setup time (ns).
- tCLS - Command Latch Enable (CLE) setup time (ns).
- tALS - Address Latch Enable (ALE) setup time (ns).
- tCLR - Command Latch Enable (CLE) to Read Enable (RE) delay (ns).
- tAR - Address Latch Enable (ALE) to Read Enable (RE) delay (ns).
- tWP - Write Enable (WE) pulse width (ns).
- tRP - Read Enable (RE) pulse width (ns).
- tDS - Data setup time (ns).
- tCH - Chip Enable (CE) hold time (ns).
- tALH - Address Latch Enable (ALE) hold time (ns).
- tWC - Write cycle time (ns).
- tRC - Read cycle time ( ns).
- tREA - (RE) access time (ns).
- Row cycles - number of clock cycles required to program row address.
- Col. cycles - number of clock cycles required to program column address.
- Read 1 com. - command to read page 1st clock cycle (hexadecimal).
- Read 2 com. - command to read page 2nd clock cycle (hexadecimal). Optional (-).
- Read spr. com. - command to read spare area (hexadecimal). Optional (-).
- Read ID com. - command to read chip ID (hexadecimal).
- Write 1 com. - command to program page 1st cycle (hexadecimal).
- Write 2 com. - command to program page 2nd cycle (hexadecimal) . Optional (-).
- Erase 1 com. - command to erase block 1st cycle (hexadecimal).
- Erase 2 com. - command to erase block 2nd cycle (hexadecimal). Optional (-).
- Status com. - status command (hexadecimal).
- ID1 - 1st chip ID - manufacturer (hexadecimal).
- ID2 - 2nd chip ID - device ID (hexadecimal). Optional (-).
- ID3 - 3rd chip ID (hexadecimal). Optional (-).
- ID4 - 4th chip ID (hexadecimal). Optional (-).
- ID5 - 5th chip ID (hexadecimal). Optional (-).
Example Samsung K9F1G08U0E:
! [parallel_nand_chip_db1.jpeg] ![parallel_nand_chip_db2.jpeg] ![parallel_nand_chip_db3.jpeg] ![parallel_nand_datasheet1.jpeg] ![parallel_nand_datasheet2.jpeg] ![parallel_nand_datasheet3.jpeg] ![parallel_nand_datasheet4.j peg] ![parallel_nand_datasheet5.jpeg] ![parallel_nand_datasheet6 .jpeg] ![parallel_nand_datasheet7.jpeg]
参考设计图片
×
 
Related Devices
Devices Class introduce Datasheet
CC0805JRNPO9BN300 Passive components;The patch capacitance Accuracy: ±5% Capacitance: 30pF Rated voltage: 50V Temperature drift coefficient (dielectric material): NP0 Material: NP0 Download
TJ-S2012SW8TGLC2G-A5 LED optoelectronic/LED;Light-emitting diodes (leds) Lighting color: Green Main wavelength/Color coordinate: 525nm Color temperature - CCT (K): - Green Green SMD LED 0805 Download
SODDB3 Discrete semiconductor;Trigger diode Turning current: 100uA Turning trigger voltage: 28 ~ 36V Peak output current: 2A Download
105017-0001 The connector;The connector USB - Micro B USB 2.0 Socket Connector 5-Position Surface Mount, Right Angle, Through Hole 1050170001 Download
5107 SMD resistor Download
0805W8F1501T5E Passive components;SMD resistor Resistance (ohms): 1.5K Accuracy: ±1% Power: 1/8W Temperature coefficient: ±100ppm/°C Download
LM1117S-3.3 Power/power management;Low dropout linear regulator (they) Output type: fixed Maximum input voltage: 12V Output current: 1A Output voltage (minimum value/fixed value): 3.3V 3.3V 1A Download
STM32F103VCT6 The embedded processor and controller;Microcontrollers and processors Operating voltage: 2V ~ 3.6V CPU bits: 32-Bit CPU core: ARM® Cortex®-M3 Main frequency (MAX): 72MHz ROM type: FLASH STM32 Series 32-bit 256 kB Flash 48 kB RAM ARM Based Microcontroller - LQFP -100 Download
HC-49/U-S8000000ABJB Analog mixed-signal IC;Into the crystal resonator (passive) - Download
AT45DB161E-SHD-T storage;storage Memory architecture (format): FLASH Memory interface type: SPI Memory capacity: 16Mb (2M x 8) Memory type: Non-Volatile 16-Mbit (2M x 8bit), SPI interface, operating voltage: 2.5V to 3.6V Download
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2024-11-14 23:15:07

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号