Difference between revisions of "Installing OpenOCD"
From spiderboard.org
Line 5: | Line 5: | ||
* For Debian based distributions the terminal command is: | * For Debian based distributions the terminal command is: | ||
*: '''$''' sudo apt install openocd | *: '''$''' sudo apt install openocd | ||
− | * If the package version does not work, it is possible to compile OpenOCD from [https://github.com/ntfreak/openocd source]. | + | * If the package version does not work, it is possible to compile OpenOCD from [https://github.com/ntfreak/openocd source (github)]. |
== Shell Script For Easier Use == | == Shell Script For Easier Use == | ||
Line 13: | Line 13: | ||
* Create the file '''mx10spider_prog''' under ''.local/bin'' in your home directory and insert the content below. | * Create the file '''mx10spider_prog''' under ''.local/bin'' in your home directory and insert the content below. | ||
* If not already done, add ''.local/bin'' to the path variable. | * If not already done, add ''.local/bin'' to the path variable. | ||
− | ** Open .profile in your home directory with a text editor and add the line: | + | ** Open ''.profile'' in your home directory with a text editor and add the line: |
**: PATH=".local/bin:$PATH" | **: PATH=".local/bin:$PATH" | ||
+ | ** Logout and login again or run following command to reload path variable: | ||
+ | **: '''$''' source ~/.profile | ||
* Open a terminal and add the executable flag. | * Open a terminal and add the executable flag. | ||
*: '''$''' chmod +x .local/bin/mx10spider_prog | *: '''$''' chmod +x .local/bin/mx10spider_prog | ||
* You are now ready to progrmm the fpga using the command: | * You are now ready to progrmm the fpga using the command: | ||
*: '''$''' mx10spider_prog ''<path/to/file.svf>'' | *: '''$''' mx10spider_prog ''<path/to/file.svf>'' | ||
+ | * If your project is for example located under ''/opt/quartus_projects/Example'', use one of the following commands: | ||
+ | *: '''$''' mx10spider_prog /opt/quartus_projets/Example/output_files/Example.svf | ||
+ | *: '''$''' mx10spider_prog /opt/quartus_projets/Example/output_files/Example_pof.svf | ||
+ | *: for programming the .sof or .pof file respectively. | ||
<br> | <br> |
Revision as of 11:57, 23 May 2019
Installing OpenOCD
- OpenOCD Version >= 0.10 with the libftdi driver is required.
- If your package distributor provides this version, use your package manager to install OpenOCD:
- For Debian based distributions the terminal command is:
- $ sudo apt install openocd
- If the package version does not work, it is possible to compile OpenOCD from source (github).
Shell Script For Easier Use
A shell script can be used that starts OpenOCD, runs the svf file and shuts down afterwards, allowing conveniently programming the FPGA using a single terminal command.
- Create the file mx10spider_prog under .local/bin in your home directory and insert the content below.
- If not already done, add .local/bin to the path variable.
- Open .profile in your home directory with a text editor and add the line:
- PATH=".local/bin:$PATH"
- Logout and login again or run following command to reload path variable:
- $ source ~/.profile
- Open .profile in your home directory with a text editor and add the line:
- Open a terminal and add the executable flag.
- $ chmod +x .local/bin/mx10spider_prog
- You are now ready to progrmm the fpga using the command:
- $ mx10spider_prog <path/to/file.svf>
- If your project is for example located under /opt/quartus_projects/Example, use one of the following commands:
- $ mx10spider_prog /opt/quartus_projets/Example/output_files/Example.svf
- $ mx10spider_prog /opt/quartus_projets/Example/output_files/Example_pof.svf
- for programming the .sof or .pof file respectively.
mx10spider_prog:
#!/bin/sh me=$(basename $0) if [ -f "$1" ]; then openocd -c "interface usb_blaster" -c "usb_blaster_lowlevel_driver ftdi" -c "usb_blaster_vid_pid 0x04d8 0xefd0" -c "jtag newtap max10 tap -irlen 10 -expected-id 0x31810dd -expected-id 0x318a0dd \ -expected-id 0x31820dd -expected-id 0x31830dd -expected-id 0x31840dd \ -expected-id 0x318d0dd -expected-id 0x31850dd -expected-id 0x31010dd \ -expected-id 0x310a0dd -expected-id 0x31020dd -expected-id 0x31030dd \ -expected-id 0x31040dd -expected-id 0x310d0dd -expected-id 0x31050dd" -c "init" -c "svf $1 progress" -c "shutdown" elif [ "$1" = "" ]; then echo "\tError: No file specified.\n\tUsage: $me <file.svf>" elif [ "$1" = "-h" ] || [ "$1" = "--help" ]; then echo "\tUtility script to start openocd and run an svf file.\n\tUsage: $me <file.svf>" else echo "\tFile not found: $1\n\tUsage: $me <file.svf>" fi