Forum Replies Created
-
AuthorPosts
-
JohananParticipant
Tring to start a new project for NXP Rt106XX, i follow the instruction, but import of the SDK give this message:
the SDK you’ve specified doesn’t contain any linker scripts
If I ignore it, it returns to device selection.
Any Idea how to build a project for this chip?
Thanks
Attachments:
You must be logged in to view attached files.JohananParticipantRenewed. (Expired 3 days ago, BTW).
Thanks
JohananParticipantYou are very lucky if you pay 20$ for an STM32 device. We just payed 125$ (each) for 100 pcs of STM32F429. old price was 7$.
already invested over 10K$ in re-editing PCB for GD similar chip, which will take a lot of work to adopt, as all low level drivers need to change and re-code (hopefully GD will be easier to purchase, but no one can be sure about it).
JohananParticipantThe easiest way to use GD devices with VisualGDB is to import the Keil project in the GD examples template. Then Visual GDB ask for the chip, select any CortexM(x) from the available list according to the Cortex core, set correct link script according to available memories. Now you have a project with all hardware drivers that complies. Add your own sources as needed.
JohananParticipantWell, as already said, you can’t use ST drivers as the chips are not compatible. You need to use GD driver library and remove all ST files from the project. I don’t see any problem in using gcc for this chip.
JohananParticipantActually STM32F303CC can be used as a target for GD303CC, However I am using GD32F303VG, which has 1024K flash and 96K SRAM.
Is there a simple way to tweak the device configuration so this full memory range can be used?
( I changed the linker script, but the it is not enough)
Thanks
JohananParticipantGD32FXXXX is not compatible with STM32, it is legit and can be purchased at Digikey, Mouser and any other component supplier.
These are ARM devices, and in todays chips shortage, many of us are working very hard to find some solutions to the huge shortage. Using GigaDevice is some what a solution. I think you should reconsider adding these ARM chips to VisualGDB. STM32 chips are simply unavailable, at almost any price.
JohananParticipantTried it but it makes no difference, still same error.
Any other ideas?
Thanks
//————–
<div>
<div># script for stm32f1x family</div>
<div>#</div>
<div># stm32 devices support both JTAG and SWD transports.</div>
<div>#</div>
<div>source [find target/swj-dp.tcl]</div>
<div>source [find mem_helper.tcl]</div>
<div>set CPUTAPID 0</div>
<div>if { [info exists CHIPNAME] } {</div>
<div> set _CHIPNAME $CHIPNAME</div>
<div>} else {</div>
<div> set _CHIPNAME stm32f1x</div>
<div>}</div>
<div>//——————————-</div>
</div>JohananParticipantIts a niche all right, but it is so powerful. I assume it will gain popularity as more users will be exposed to it.
Once you get it to work with JTAG and VisualGDb its a great chip.
JohananParticipantWell, as I am “eating stones” with JTAG, it would be really nice to have it with the embedded version 🙁
I hope this will be added. After all, once they get JTAG to work, this will not be needed…
JohananParticipantWell, I am not absolutely sure what happen here, but it started working, maybe after updating latest Kendryte package.
see attached screen.
Only thing that bothers me is the:
invalid subcommand “protect 0 64 last off”
in procedure ‘flash’And:
invalid command name “mbatch”
how can these be removed?
It waits 2-3 seconds after the first invalid subcommand, then hit the breakpoint.
The dev board is connected via USB com port, which I connected to power the chip, and 20pins regular cable to Jlink, which is also connected to a USB port.
There is some link between the com port and the debugger, as when I try to open a terminal utility on this com port, the debugger crashes, I don’t know why/ I will try to investigate this and send you info if I can find anything.
BR Johanan
Attachments:
You must be logged in to view attached files.JohananParticipantI got the gdb server listening on port 3333 in a cmd shell window. (see screens).
Can you show me correct config for custom GDB stub, and how I can start a GDB manual session from within Visual Studio?
Thanks
Attachments:
You must be logged in to view attached files.JohananParticipantHi,
Trying to understand the source of the problem I contacted Olimex support, which replied with this detailed answer:
<hr />
<pre class=”moz-quote-pre”>Hello,
Seems like software mismatch or software misconfiguration. The log until
that point seems fine, device is found and connection is established. It
seems like a problem occurs when the command to remove the flash
protection is executed. Maybe you are not trying to write to the flash,
maybe the chip has no flash, maybe extra parameters are needed
specifically for this chip? I can’t say. Maybe a command from the list
of commands is not compatible with the OpenOCD version used by the
software you are using OR with the chip.
Check if you are using newest software for the chip.
You might also try to find in the software setup the line:monitor flash protect 0 64 last off
and comment it out and try again.
It is clear that the issue is not caused by ARM-USB-OCD. If the problem
remains, please, direct your questions to the Kendryte, VisualGDB,
RISC-V, and OpenOCD communities. I would recommend posting in the SiFive forums
<pre class=”moz-quote-pre”>———————————————————
Can you tell me how to change the OpenOCD script in VisualGDB, so I can make changes?
Thanks,
JohananJohananParticipantThank for your efforts, it looks like I am “falling between the chairs”.
as of now Kendryte support don’t know what
invalid subcommand “protect 0 64 last off”
in procedure ‘flash’Means, maybe you have an idea? The only thing that comes to mind is that K210 does not have an internal flash (program is uploaded to ram and run from ram), why ‘flash’ procedure.
As you can see there is connection, it finds the two cores RISCV, and fail at this flash procedure, any ideas will be appreciated.
<hr />
C:\Users\Johanan\AppData\Local\VisualGDB\EmbeddedDebugPackages\com.sysprogs.riscv.openocd-kendryte\bin\openocd.exe -c “gdb_port 4417” -c “telnet_port 4418” -f interface/jlink.cfg -c “adapter_khz 4000” -f target/kendryte.cfg -c init -c “reset init” -c “echo VisualGDB_OpenOCD_Ready”
_ __ _ _
| |/ /___ _ __ __| |_ __ _ _| |_ ___
| ‘ // _ \ ‘_ \ / _` | ‘__| | | | __/ _ \
| . \ __/ | | | (_| | | | |_| | || __/
|_|\_\___|_| |_|\__,_|_| \__, |\__\___|
|___/
Kendryte Open On-Chip Debugger For RISC-V v0.2.3 (2019-02-21)
Licensed under GNU GPL v2
adapter speed: 4000 kHz
Info : auto-selecting first available session transport “jtag”. To override use ‘transport select <transport>’.
srst_only separate srst_gates_jtag srst_open_drain connect_deassert_srst
Info : J-Link ARM V8 compiled Dec 1 2009 11:42:48
Info : Hardware version: 8.00
Info : VTarget = 3.267 V
Info : clock speed 4000 kHz
Info : JTAG tap: riscv.cpu tap/device found: 0x04e4796b (mfg: 0x4b5 (<unknown>), part: 0x4e47, ver: 0x0)
Core [1] halted at 0x80005f10 due to debug interrupt
Info : Examined RISCV core; found 2 harts
Info : Listening on port 4417 for gdb connections
Info : JTAG tap: riscv.cpu tap/device found: 0x04e4796b (mfg: 0x4b5 (<unknown>), part: 0x4e47, ver: 0x0)
VisualGDB_OpenOCD_Ready
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4418 for telnet connections
Info : accepting ‘gdb’ connection on tcp/4417
Info : JTAG tap: riscv.cpu tap/device found: 0x04e4796b (mfg: 0x4b5 (<unknown>), part: 0x4e47, ver: 0x0)
invalid subcommand “protect 0 64 last off”
in procedure ‘flash’JohananParticipantwell, I tried with Olimex Jtag same as in your tutorial, and Jlink.
In both cases it passes the test connection, but fail to program the chip.
As far as I got to Kendryte support, I got only some tips (in Chines, I used Google translate) how to use it on Linux with command line compile/debug which is a pain for me, I haven’t tried it yet as it will consume too much time.
Any ideas?
Thanks
-
AuthorPosts