Comments (30)
How do I reflash the firmware on the BL702?
I had this issue. My Tang Primer 20K Dock would always hang during the programming with openFPGALoader on Linux. I have reflashed the firmware of the BL702 and now I am both able to flash and load to load into SRAM without hanging, except that now the serial UART with the FPGA is not working. No communication at all. I have temporarily circumvented the problem by assigning a PMOD connector to an external USB to UART adapter and it not only works, as it is much more reliable loading games through this externall adapter, than going through the BL702.
from nestang.
The procedure to generate and flash the BL702 usb2uartjtag is as follows:
git clone https://github.com/sipeed/RV-Debugger-BL702
cd RV-Debugger-BL702
git submodule init
git submodule update
cd bl_mcu_sdk
make APP=usb2uartjtag APP_DIR=../app CHIP=bl702 INTERFACE=/dev/ttyACM0
cd tools/bflb_flash_tool/
./bflb_mcu_tool --chipname=bl702 --port=/dev/ttyACM0 --xtal=32M --firmware="../../out/app/usb2uartjtag/usb2uartjtag_bl702.bin"
from nestang.
Try something like "loader pacman.nes".
The loader takes the binary rom (ines format), not the .hex file.
from nestang.
okay - was able to load a rom! see the game running, but there's no response to the controllers. I'm using the NES original controllers...
Bus 007 Device 015: ID 0810:e501 Personal Communication Systems, Inc. SNES Gamepad
Also there's no sound via HDMI is that to be expected?
from nestang.
UPDATE2: gamepad -
so lsusb
shows Personal Communication Systems, Inc. SNES Gamepad
which I don't see in the gist sourced in the code... is that an issue?
https://gist.github.com/nondebug/aec93dff7f0f1969f4cc2291b24a3171
from nestang.
Sound: Are you on a TV or monitor? I ran into the no sound issue on a Sony TV too. I had a fix for that checked into master (unfortunately the code is in flux now).
Gamepad: that's probably the issue. Could you post the relevant lsusb -v part? That should show the vendor and product id.
from nestang.
from nestang.
Your device 0810:e501 is actually in the gamepad list. So it seems to be something else.
Try pass -v to loader. It will print everything the loader passes to the fpga. Check if there are packets when you press controller buttons.
from nestang.
from nestang.
from nestang.
UPDATE:
Some points of clarification:
- I cannot get the Gowin software to recognize the FTDI USB port and use it to program... solely using openFPGALoader
- using OpenFPGALoader to load flash fails consistently
- using OpenFPGALoader to load SRAM works but takes more than a few attempts before it either loads 100% and reboots after loading to accept roms correctly from the loader
not sure if this is expected behavior or if this is an indication of a configurations/hw issue with the TangPrimer20K
from nestang.
maybe this link can help you...
from nestang.
from nestang.
It looks like a defective board or BL702 firmware bug to me. I have 3 tang primer 20k and the Gowin programmer works on all 3. Maybe Sipeed can help?
from nestang.
from nestang.
I'm using windows Gowin programmer and openFPGALoader on Windows/Linux and Mac.
I haven't upgraded the firmware on this board. But afaik the BL702 firmware is closely related to this: https://github.com/sipeed/RV-Debugger-BL702
Try asking sipeed in places like here: https://github.com/sipeed/sipeed_wiki/issues
from nestang.
from nestang.
I had this issue. My Tang Primer 20K Dock would always hang during the programming with openFPGALoader on Linux. I have reflashed the firmware of the BL702 and now I am both able to flash and load to load into SRAM without hanging, except that now the serial UART with the FPGA is not working. No communication at all. I have temporarily circumvented the problem by assigning a PMOD connector to an external USB to UART adapter and it not only works, as it is much more reliable loading games through this externall adapter, than going through the BL702.
from nestang.
I had this issue. My Tang Primer 20K Dock would always hang during the programming with openFPGALoader on Linux. I have reflashed the firmware of the BL702 and now I am both able to flash and load to load into SRAM without hanging, except that now the serial UART with the FPGA is not working. No communication at all. I have temporarily circumvented the problem by assigning a PMOD connector to an external USB to UART adapter and it not only works, as it is much more reliable loading games through this externall adapter, than going through the BL702.
this could be in a wiki page, could you provide us more details?
from nestang.
from nestang.
Ubuntu 20.04 LTS
from nestang.
from nestang.
I don't remember where I got it from, but it came from a zip file named:
toolchain_riscv_thead_linux64.zip
from nestang.
from nestang.
from nestang.
from nestang.
Here it goes the compiled usb2uartjtag:
usb2uartjtag_bl702.zip
from nestang.
Maybe you forgot to update cmake to 3.26.4, it is mandatory on my Ubuntu to make a local installation of that cmake version.
With that added to the PATH and riscv toolchain, it gets straightforward.
from nestang.
so burning fails... am I missing something??
$ sudo ./bflb_mcu_tool --chipname=bl702 --port=/dev/ttyACM0 --xtal=32M --firmware=/home/robert/usb2uartjtag_bl702/usb2uartjtag_bl702.bin
[19:56:37.260] - ==================================================
[19:56:37.260] - Chip name is bl702
[19:56:37.261] - Serial port is /dev/ttyACM0
[19:56:37.261] - Baudrate is 115200
[19:56:37.261] - Firmware is /home/robert/usb2uartjtag_bl702/usb2uartjtag_bl702.bin
[19:56:37.261] - Default flash clock is 72M
[19:56:37.261] - Default pll clock is 144M
[19:56:37.261] - ==================================================
[19:56:37.267] - Update flash cfg finished
[19:56:37.268] - EFUSE_CFG
[19:56:37.268] - BOOTHEADER_CFG
[19:56:37.271] - Create bootheader using /home/robert/src/NES/RV-Debugger-BL702/firmware/bl_mcu_sdk/tools/bflb_flash_tool/chips/bl702/img_create_mcu/bootheader_cfg.ini
[19:56:37.271] - Updating data according to </home/robert/src/NES/RV-Debugger-BL702/firmware/bl_mcu_sdk/tools/bflb_flash_tool/chips/bl702/img_create_mcu/bootheader_cfg.ini[BOOTHEADER_CFG]>
[19:56:37.273] - Created file len:176
[19:56:37.275] - Image create path: /home/robert/src/NES/RV-Debugger-BL702/firmware/bl_mcu_sdk/tools/bflb_flash_tool/chips/bl702/img_create_mcu
[19:56:37.275] - Config file: /home/robert/src/NES/RV-Debugger-BL702/firmware/bl_mcu_sdk/tools/bflb_flash_tool/chips/bl702/img_create_mcu/img_create_cfg.ini
[19:56:37.275] - Image hash is b'7bf22d2b8644ead66173b83728f792f9efaad2d71bb152646e9cb8b96462a053'
[19:56:37.275] - Header crc: b'233e4063'
[19:56:37.275] - Write flash img
[19:56:37.276] - ========= eflash loader config =========
[19:56:37.283] - Version: bflb_eflash_loader_v2.1.2
[19:56:37.283] - Program Start
[19:56:37.283] - ========= eflash loader cmd arguments =========
[19:56:37.283] - Config file: /home/robert/src/NES/RV-Debugger-BL702/firmware/bl_mcu_sdk/tools/bflb_flash_tool/chips/bl702/eflash_loader/eflash_loader_cfg.ini
[19:56:37.284] - serial port is /dev/ttyACM0
[19:56:37.284] - chiptype: bl702
[19:56:37.284] - ========= Interface is uart =========
[19:56:37.284] - com speed: 115200
[19:56:37.284] - Eflash load helper file: /home/robert/src/NES/RV-Debugger-BL702/firmware/bl_mcu_sdk/tools/bflb_flash_tool/chips/bl702/eflash_loader/eflash_loader_32m.bin
[19:56:37.284] - Eflash load helper file: /home/robert/src/NES/RV-Debugger-BL702/firmware/bl_mcu_sdk/tools/bflb_flash_tool/chips/bl702/eflash_loader/eflash_loader_32m.bin
[19:56:37.284] - ========= load eflash_loader.bin =========
[19:56:37.284] - Load eflash_loader.bin via uart
[19:56:37.284] - ========= image load =========
[19:56:37.291] - usb serial port
[19:56:37.341] - clean buf
[19:56:37.341] - send sync
[19:56:37.443] - ack is b''
[19:56:37.443] - retry
[19:56:37.443] - usb serial port
[19:56:37.494] - clean buf
[19:56:37.494] - send sync
[19:56:37.696] - ack is b'4f4b'
[19:56:37.726] - shake hand success
[19:56:37.736] - get_boot_info
[19:56:38.843] - FL0102 unknown
[19:56:38.843] - Not ack OK
[19:56:38.843] - FL0102 unknown
[19:56:38.843] - result: FL0102 unknown
[19:56:38.844] - fail
[19:56:38.844] - Img load fail
[19:56:38.844] - Load helper bin time cost(ms): 1559.5830078125
[19:56:38.844] - {"ErrorCode": "0003","ErrorMsg":"BFLB LOAD HELP BIN FAIL"}
[19:56:38.844] - Burn Retry
[19:56:38.844] - 0
[19:56:38.844] - Burn return with retry fail
from nestang.
Here it goes the compiled usb2uartjtag:
usb2uartjtag_bl702.zip
installed snap
version of cmake
and rebuilt without issue
from nestang.
Related Issues (20)
- Can't synthesis the project. HOT 7
- [Help wanted][Testers] Multitap Four Score support
- add suporte for Family Computer Disk System =) HOT 1
- [Migration to softcore] Some issues bringing up the uC HOT 9
- Softcore not loading HOT 8
- [Enhancements][Cheats] Porting from NES_MISTer HOT 4
- [0.9][Nano][Cannot load ROM][f_puts failed] Latest master build won't load ROMs HOT 4
- tang nano 20K with blueretro adapter? HOT 3
- 8bitdo N30 2.4g gamepad not working HOT 4
- Screen tearing
- Screen tearing! HOT 1
- exFAT not work and file list load glitches on FAT32 HOT 2
- Compile primer25k error HOT 5
- NES controller connection issue HOT 4
- Video dropouts when using HDMI switcher HOT 21
- Elite rendering issues HOT 3
- Allow save games in nestang core HOT 6
- TetrisGYM 6.0.0 ROM hack rendering issues
- Micro Sd card read/write access via pc over usb? HOT 1
- [Rewind] In development HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nestang.