Comments (9)
I tried this again recently by trying to configure openocd to write the swo trace to a fifo instead of a file, and telling orbuculum to read from teh fifo. It now at least "runs" but it doesn't seem to get any data from it, it just sits there. I know openocd's writing to the fifo, because I can manually cat it and get the swo trace I expect.
from orbuculum.
Solution here is to just use netcat with openocd's captured file. In this case, using plain STLink hardware.
# openocd configured to write to swo.dump.log via...
tpiu config internal swo.dump.log uart off <corespeedinhz>
$ tail -f swo.dump.log | nc -v -v -l 9999 -k
And orbuculum in another window reading that. It's not really "segger" format, it's just "raw swo pin data"
./ofiles/orbuculum -g 9999 -b md/ -c 0,text,"%c"
Perhaps this can just be addressed as documentation, rather than trying to make it follow the file itself.
from orbuculum.
Originally the file input mode was really just there for development purposes. It doesn't work well because of the timing relations that are implicit in the tpiu decoder....and, as you've found, it doesn't wait for data to arrive in the file.
I'll leave this open for now and look at enhancing the file handling to wait for data so it can be used with tools like openocd. I've added some documentation to the README referencing this thread too.
Sorry this has taken a while to respond to....been away creating the parallel trace fpga configuration, but now is time to solidify the core apps.
from orbuculum.
no problem, glad to see you back again :) the tail -f | nc is working very well anyway, just wasn't going to make a bunch of PRs for documentation on that sort of thing.
from orbuculum.
If you look in the Devel branch I added the file tracking capability but it's not extensively tested. It now won't drop out at the end of the file but rather will continue to wait for new input (CTRL-C to interrupt). Please give it a try and see if it avoids you needing the nc hack. There are some other not well tested changes in that branch too so ymmv but I think it should be a reasonably safe experiment.
from orbuculum.
Hrm, I don't really see anything in the Devel branch that adds this? It's a bit hard to see from your commits though, you've only got a single commit there which fixes mkdir, changes transfer sizes for everyone and then a whole pile of seemingly irrelevant EOL printf changes all in the same commit. Are you missing a git push from your end perhaps?
from orbuculum.
from orbuculum.
OK. Please give that a try on the Devel branch. If it works for you I'll close off this PR.
Dave
from orbuculum.
Yep, this works, as long as I still have my "force itm sync" hack. but that's a different issue, so this can be closed thanks!
from orbuculum.
Related Issues (20)
- Install more files on Linux HOT 1
- Extraneous arguments in meson.build file HOT 3
- Inconsistent results from orbfifo when reading from file and writing to permanent file HOT 3
- Arch linux builds need a meson prefix HOT 3
- Cannot set server and port in orbfifo HOT 2
- Do not require trailing slash in orbfifo basedir HOT 2
- Cannot abort orbfifo with Ctrl + C when not yet connected HOT 6
- First contribution HOT 1
- gdbtrace.init does not seem to work with newer version of arm-none-eabi-gdb HOT 7
- Windows CLI output has corrupted characters HOT 2
- orbtop CPU usage increases over time
- Orbmortem save to file not working HOT 2
- 'ARM_INS_ERET' not in /usr/include/capstone/arm.h HOT 2
- orbtop should provide immediate error about missing objdump HOT 2
- orbtop: Exception number format, 0..N vs -16..N HOT 5
- orbtop exception tick count wrong for nested instructions HOT 1
- Weird help message for the orbtrace -T option HOT 1
- Loosely formatted orbcat output specification doesn't result in output HOT 1
- Package binaries along with releases HOT 1
- Orbuculum fails to connect to J-LINK GDB Server on Windows. HOT 3
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 orbuculum.