(Aleph) JTAG port for blackfin

sorry if this is the wrong section. im wondering if it’s possible to hook up a jtag probe to the DSP processor with the case removed, and if this would be helpful with module development. i see a jtag header in the board file but im not sure which probe i would need. popping the SD card in and out between my computer and the aleph every time i recompile is sort of a drag, and it would also help to step code. has anyone done anything like this?

1 Like

Hey I also got bored of SD-wrangling for module dev! So much so that I came up with a couple of solutions which both have their place… So there’s a blackfin module ‘hotswap’ utility here: https://github.com/monome/aleph/blob/dev/utils/serial-com-proto/module-hotswap.c which is tested & works fine on linux.

There’s also C emulation of the fract arithmetic primitives & build targets for most of the existing modules which generate linux/jack executables. This technique was used to develop & debug a lot of the recent bfin dev work. I’d advise setting up some single-step tests for new DSP code on linux, catching all the segfaults with gdb then you can use printfs to generate csv & visualise what’s going on in different bits of the new algorithm…

Try “make” sim in the module directory for, e.g acid, on monome’s dev branch…

1 Like

wow! i had the idea to do something like that also, but had no idea where to start and figured a debug probe would be easier. but not having to buy something/open the case is a definite plus. this looks really cool. how is this handled on the device side? is there already a serial handler in place that can accept these commands?

yeah latest dev build of BEES should respond to the hotswap util. At some point I’ll get round to a puredata external or little scripting interpreter to make more of BEES’ moderately capable & well-tested serial protocol! (but for now it mostly just functions as a bfin serial-loader)

cool im having a hard time getting the aleph to show up as a serial port in my vagrant box. may just have to use actual linux. im very interested in the possibilities for this now that i know there is some serial handling going on in the aleph

yeah, I really got down to brass tacks on the core functionality of BEES so serial did get forgotten… Although actually believe it or not a few BEES bugs were caught using a serial stress test set up in common lisp under linux!

I’ve been thinking about ways to make the aleph simultaneously handle duplex midi & run grid apps. A really awful but probably effective way of doing this would be to write an aleph-serial-midi bridge & run it on linux.

i’ve found that some bees programming tasks are downright arduous on the device, so using the computer to work on bees scenes in real time with debug feedback sounds amazing. i got an aleph to get away from the computer a little bit, but using it constructively during hard parts of patching is ok with me.

1 Like

great job with this, i managed to get my serial drivers sorted in my linux vm and now it’s working like a charm. for anyone following at home, make sure you have a bees build from the dev branch for this to work

2 Likes

to answer the original question, yes you can definitely use jtag with bfin on aleph. I can’t remember if the headers are populated on production units so you may need to do that yourself (use right angle header)

also can be hard / expensive to find the jtag adapters these days

1 Like