Hello,
After reboot it worked, I have the web interface, is there a way to start session/emulate pressing this button from jlink cli?
Hello,
After reboot it worked, I have the web interface, is there a way to start session/emulate pressing this button from jlink cli?
How can I start RTT server from JLink.exe,
But I don't see the system tray icon and status page won't load http://localhost:19080/rtt.htm
I'm trying to do a monitoring script that connects to existing product, want to avoid any chance of overwrite from IDE.
A good start:
https://github.com/modm-io/cmsis-svd-stm32
every STM32 svd files.
Since Jlink already has a database of all supported MCUs, why not provide svd file for each?
in Ozone.jdebug it could be a line, saying use the latest version available online for selected exact part.
Eliminating the need to search for it, manually storing it/version tracking it.
This would strengthen the company slogen "it simply works"
That works, thank you!
I see variables with zero len, e.g. dp
// Get access to the device specific peripherals from the peripheral access crate
let dp = pac::Peripherals::take().unwrap();
is that normal? I'm still learning Rust.
There would be nice to see some tutorial, or better a blinking LED from start to finish with Ozone debugging as a blog post,
since you already invested the time to add Rust support.
In Ozone Manual there is one line mentioning that Rust was added and nothing more.
I'm trying out Rust with Ozone v3.38 on Windows 10 and STM32F103C8
Download works fine, but straight after
It complains about
File not found:
/rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library/core/src/intrinsics/mod.rs
Please use the source files window to locate the file manually
Also when stepping into
panic!("msg") gives
File not found:
/rustc/4d91de4e48198da2e33413efdcd9cd2cc0c46688/library/core/src/fmt/mod.rs
Please use the source files window to locate the file manually
but it does find/steps correctly into other library sources at
.cargo/registry/src/index.crates.io-hash/panic-rtt-target/src/lib.rs
So it seems partially broken/working, maybe not working for core libs?
When executing J-Link_Commander script what's the proper way of retrying operations?
Currently I use:
// best effort masserase, implicit reset & halt,
ExitOnError 0
reset
WaitHalt 100
erase
//last one must pass, executes faster if it's already blank
ExitOnError 1
erase
Display More
and use it with
JLink.exe -NoGui 1 -CommandFile production.jlink
Is there a better/faster way? Like if conditions, retry counts?
Sometimes operations (connecting/erasing/programming) fail and need retrying.
Launching the entire script again would be very slow, so it has to be done inplace.
There are 0 results for 'retry' in documentation.
I tried both in .jlink
Exec.Command("SuppressGUI")
exec SuppressGUI
But still seeing pop up.
Hello,
That's what I did, but as I said it says this when I run the .jlink file:
J-Link>SuppressGUI
Unknown command. '?' for help.
I added into .jlink file, but when I run the file with
JLink.exe" -NoGui 1 -CommandFile test.jlink
it says:
J-Link>device NRF52805_XXAA
J-Link>SuppressGUI
Unknown command. '?' for help.
also this fails too:
JLink.exe SuppressGUI -NoGui 1 -CommandFile test.jlink
and I still see
How do I suppress "device is secured" popup msg by forcing Yes from jlink script? (unattended)
Without clicking remember.
Isn't there a forced parameter to "Erase all" command?
I tried:
unlock NRF52805_XXAA
but it says:
Syntax: unlock <DeviceName>
---Supported devices---
LM3Sxxx [<Auto>]
Kinetis
EFM32Gxxx
LPC5460x
surely it must know how to do it, because it does it after I click yes.
Sorry, you are right, the issue was Hercules TCP client added extra data to it.
After writing a simple TCP client in python I get raw data.
import socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('127.0.0.1', 19021))
while 1:
data = client_socket.recv(1024)
print('got', data.decode('utf-8','ignore'))
print('gothex', data.hex())
client_socket.close()
Thank you!
Hi,
No logic inside the J-Link software interprets rhe RTT data. It is just forwarded from one side to the other (host -> target or the other way around).
All the interpretation of the data itself is up to the host and target application.We will check again but there should not be any problem with sending 0xFF, 0xFE, … down to 0x00 for a byte.
When I checked, I have sent up from RTT target this:
0x23,0x00,0x01,0xff,0xfe
which dropped my TCP client, and on reconnection it sent me the banner plus something like
"NVT something 0xff,0xfe"
the NVT came from Jlink driver, not from my code.
I guess it's control commands for telnet.
Direct binary pipe would be great, that's the most versatile.
Any way I could send binary up to the PC on ch0 of RTT?
I'm connecting directly via telnet to Jlink driver, leaving RTTViewer out.
But when I send 0xFF it interprets it as control character and closes connection.
And next time I connect I get NVT message.
Telnet does support binary mode
https://github.com/kdart/pycopia/…/telnet.py#L170
it only has to be set once.
I know it listens on telnet for 100ms on startup for control commands, this would be perfect time for it, or even better as parameter.
If I cannot use binary mode then I have to send everything as hex ascii which reduces the speed to half.