3 ms·
Trace32 & the Lauterbach JTAG. Expensive, but intuitive, scriptable, and performant.
by waiseristy 6y ago
Trace32 & the Lauterbach JTAG. Expensive, but intuitive, scriptable, and performant.
- paxys 6y agoFunny but I had the exact opposite experience with it back when I worked in the space like 10 years ago. The software was clunky and borderline unusable, every bit of the system was proprietary (I remember we had to pay $10K a pop for connector cables, which each came with their own limited license), support was clueless, and there was no ecosystem to speak of (again due to their tight controls).
- ferruck 6y agoJust a quick note on the $10K: The biggest part of that is the license itself. You can store multiple licenses on each connector cable, but you won't save much because, as I said, the license is the expensive part. I have to disagree with you on their support. But things may have changed since 10 years ago.
- waiseristy 6y agoThe expense I think is just a side effect of working in this space. Mayne when things open up prices will go down. As for the softwares usability, I don't know how much it's changed in the 10 years since you saw it last, but I really like it. Everything is clickable, the work flow for flashing, symbol loading, fiddling with registers + peripherals, is better than really any other system I've used in the space.
- bacon_waffle 6y agoDo you have much experience with gdb+openocd+<generic SWD/JTAG>? Aside from a couple chip vendor's IDEs (Analog Devices and Atmel, both at a previous employer), I've always used the open source stack for embedded debugging and found it adequate. Just wondering what I'm missing out on? While there are certainly some rough edges in the OSS stack, they've been no worse than the commercial solutions I've tried. And at least in principle, I can fix issues in the OSS tooling.
- ferruck 6y agoThis is a night/day comparison. With Trace32 and its scripting possibilities you can achieve things that GDB can only dream of. Access to the internals (registers, memory, etc.), flashing, altering at run time, watching, the list goes on. Many things can be done via GDB, too, but it's often not very ergonomic (for example write access to certain memory mapped registers). No hate here, I use GDB for "normal" debugging and love it, but for hardware debugging Trace32/Lauterbach is just a different world. Maybe the only thing to hate about Trace32 is its very clumsy UI. I'd rather use a TUI than their Motif/Qt based one.