-
Notifications
You must be signed in to change notification settings - Fork 131
Home
Bogdan Bogush edited this page Jan 1, 2021
·
24 revisions
Welcome to the nand_programmer wiki!
- Download Gerber files from Google Drive release/nando-x.x.x/PCB/gerber/
- Register on one of the PCB manufacture websites, for example, https://jlcpcb.com/
- Create order and load gerber files.
- Configure PCB parameters as in following example:
The received PCBs:
The device is based on STM32F103VCT6 in LQFP100 package with 256KB flash and 48KB SRAM. The other MCUs are not supported because firmware HAL supports only current family. In some cases it is not theoretically possible to port to another MCU due to flash memory size (<256 KB) or missing FSMC as in STM32F103Vx.
The crystal is in HC49-SD package, 8MHz and 18pF load capacitance. If clystal with the same load capacitance is missing the other one can be taken. The values of load capacitors should be fixed as follows:
Cl1 = Cl2 = 2 * (Cl - Cs) = 2 * (18pF - 3pF) = 30pF
Cl1 = Cl2 = 2 * (Cl - Cs) = 2 * (16pF - 3pF) = 26pF.
Resistors, capacitors, LEDs are in the 0805 package. Pinheaders with 2.54mm step.
Parts for adapters are not included in the BOM file but it is just a few pinheaders and TSOP-48 socket. TSOP-48 socket can be bought on https://www.ebay.com. Another option is to order a TSOP-48 adapter for TL866.



ST-Link is connected to the board's SWD pins as shown below.
Brand-new MCU may require to be powered on with connected BOOT0 pins and sometimes additionally with RST pins (available in new PCB).
After programming BOOT0 and RST pins must be unconnected.
- sudo apt-get install libusb-1.0-0-dev
- git clone https://github.com/texane/stlink.git
- cd stlink/
- mkdir -p build && cd build
- cmake -DCMAKE_BUILD_TYPE=Release ..
- sudo make install
- sudo cp ../etc/udev/rules.d/* /etc/udev/rules.d/
- sudo udevadm control --reload-rules
- sudo udevadm trigger
- Connect ST-Link to board.
- Download firmware from Google Driver release directory.
- st-flash write nando_fw.bin 0x8000000
- Download and install STM32CubeProgrammer from https://www.st.com or Google Driver tools directory.
- Download firmware from Google Driver release directory.
- Write firmware using STM32CubeProgrammer programmer.
To be continued...