From e0198083ae88a0e90f3129bf6daa8ed5907790df Mon Sep 17 00:00:00 2001 From: Robin Jones Date: Thu, 14 Dec 2023 18:07:52 +0000 Subject: [PATCH] [SC64][DOCS] Update 06_build_guide.md (#52) Make it more obvious that you need the repo when programming (and some other minor improvements). --------- Co-authored-by: Mateusz Faderewski Co-authored-by: Mateusz Faderewski --- docs/06_build_guide.md | 62 ++++++++++++++++++++++++------------------ 1 file changed, 36 insertions(+), 26 deletions(-) diff --git a/docs/06_build_guide.md b/docs/06_build_guide.md index c00f4dd..5420f9d 100644 --- a/docs/06_build_guide.md +++ b/docs/06_build_guide.md @@ -66,38 +66,48 @@ You can skip this step if PCB assembly service was used in previous steps. **Please read the following instructions carefully before proceeding with programming.** -For initial programming you are going to need a PC and a USB to UART (serial) adapter (3.3V signaling is required, e.g. TTL-232R-3V3). -These steps assume you are using modern Windows OS (version 10 or higher). +***Note:*** This guide assumes you are using Windows 10 or above. -As for software, here's list of required applications: - - [FT_PROG](https://ftdichip.com/utilities/#ft_prog) - FTDI FT232H EEPROM programming software - - [Python 3](https://www.python.org/downloads/) with `pip3` - necessary for initial programming script: `primer.py` (windows install: check option add python to PATH) +You will require the following hardware: + - A PC running Windows 10 or above (any Linux distro should also work but programming FT232H EEPROM is arguably trickier without an official app). + - A USB to UART (serial) adapter (with 3.3V signaling is required, e.g. TTL-232R-3V3). -Programming must be done in specific order for `primer.py` script to work correctly. +You will require the following applications and packages: + - [FT_PROG](https://ftdichip.com/utilities/#ft_prog) - FTDI FT232H EEPROM programming software. + - [Python 3](https://www.python.org/downloads/) with `pip3` - necessary for initial programming script: `primer.py` (Windows install: check option add python to PATH). + - [`sc64-extra-{version}.zip`](https://github.com/Polprzewodnikowy/SummerCart64/releases) - programming scripts and firmware files, download the latest version. -First, program FT232H EEPROM: - 1. Connect SC64 board to the PC with USB-C cable - 2. Locate FT232H EEPROM template `ft232h_config.xml` - 3. Launch `FT_PROG` software - 4. Click on `Scan and parse` if no device has shown up - 5. Right click on SC64 device and choose `Apply Template -> From File` - 6. Select previously located `ft232h_config.xml` - 7. Right click on SC64 device and choose `Program Device` +**Programming must be done in specific order for `primer.py` script to work correctly.** + +Preparations: + 1. Install FT_PROG. + 2. Install Python 3. + 3. Unpack `sc64-extra-{version}.zip` into a folder. + 4. Open terminal and navigate to the folder you've unpacked SC64 files. + +First, program the ***FT232H EEPROM***: + 1. Connect the SC64 board to your PC with a USB-C cable. + 2. Locate FT232H EEPROM template `ft232h_config.xml` from the `fw/ftdi/` directory. + 3. Launch `FT_PROG` software. + 4. Click on `Scan and parse` if no device has shown up. + 5. Right click on SC64 device and choose `Apply Template -> From File`. + 6. Select previously located `ft232h_config.xml`. + 7. Right click on SC64 device and choose `Program Device`. Your SC64 should be ready for next programming step. -Second, program FPGA, microcontroller and bootloader: - 1. Disconnect SC64 board from power (unplug USB-C cable) - 2. Connect serial UART/TTL adapter to `TX/RX/GND` pads marked on the PCB. Cross connection TX -> RX, RX -> TX! - 3. Connect serial adapter to the PC - 4. Check in device manager which port number `COMx` is assigned to serial adapter - 5. Connect SC64 board to the PC with USB-C cable (***IMPORTANT:*** connect it to the same computer as serial adapter) - 6. Locate `primer.py` script in root folder - 7. Make sure these files are located in the same folder as `primer.py` script: `requirements.txt`, `sc64-firmware-{version}.bin` - 8. Run `pip3 install -r requirements.txt` to install required python packages - 9. Run `python3 primer.py COMx sc64-firmware-{version}.bin` (replace `COMx` with port located in step **4**). On Windows it's python instead of python3. - 10. Follow the instructions on the screen - 11. Wait until programming process has finished (**DO NOT STOP PROGRAMMING PROCESS OR DISCONNECT SC64 BOARD FROM PC**, doing so might irrecoverably break programming through UART header and you would need to program FPGA and/or microcontroller with separate dedicated programming interfaces through *Tag-Connect* connector on the PCB) +Second, program ***FPGA, microcontroller and bootloader***: + 1. Disconnect SC64 board from power (unplug USB-C cable). + 2. Connect serial UART/TTL adapter to `TX/RX/GND` pads marked on the PCB. Cross connection `TX -> RX`, `RX -> TX`! + 3. Connect serial adapter to the PC. + 4. Check in device manager which port number `COMx` is assigned to serial adapter. + 5. Connect SC64 board to the PC with USB-C cable (***IMPORTANT:*** connect it to the same computer as serial adapter). + 6. Locate `primer.py` script in the root folder. + 7. Make sure these files are located in the same folder as `primer.py` script: `requirements.txt`, `sc64-firmware-{version}.bin`. + 8. Run `pip3 install -r requirements.txt` in the terminal to install required python packages. + 9. Run `python3 primer.py COMx sc64-firmware-{version}.bin` (replace `COMx` with port located in step **4**). On Windows it's `python` instead of `python3`. + 10. Follow the instructions on the screen. + 11. Wait until programming process has finished (**DO NOT STOP PROGRAMMING PROCESS OR DISCONNECT SC64 BOARD FROM PC**, doing so might irrecoverably break programming through UART header and you would need to program FPGA and/or microcontroller with separate dedicated programming interfaces through *Tag-Connect* connector on the PCB). Congratulations! Your SC64 flashcart should be ready for use!