Digital audio between Axoloti Boards


#1

MOD NOTE: I moved this from another thread, as its 'generally useful' information.

Streaming audio over USB was never announced or attempted in development. USB would introduce latency, and does not easily lock the sample clocks together. The idea is to connect some wires between the X3 and X4 pinheaders of two (or more) boards to exchange digital audio. The expected capacity is 4 channels of digital audio at 48kHz and 32bit per sample, both sending and receiving, in a ring topology, so every board can send 4 channels to the next board, and receive 4 channels from the previous board in the network, while all on-board audio is still enabled too. A proof-of-concept is developed, but it needs better diagnostic reporting and more testing before going into a release.


SirSickSik Contributions
#2

Ah yes i thought it was over USB. My mistake.

Will see What comes up​:smile: It Would a great addition to axoloti imo :smile:


#3

Again, this is an awesome concept and would help me a lot integrating fx into my multi layer looping setting.

I want to add here that streaming control data between boards would be great. Of course you can send midi back and forth but you loose resulition then.

Also editing patches on multiple axolotis becomes more complicated. Would it be possible to live on two different axolotis at the same time?


#4

It 'd be possible to multiplex 16 control rate signals into one of the digital audio channels. And 32 gate/trigger signals could be multiplexed into one control rate signal.

The digital audio link would be independent of patching each Axoloti Core individually.
You can open the patcher twice, but easily gets confusing...


#5

Is this something that can be done now? If so, how can it be done?

I have 2 Axolotis and would really like to use them both. Right now one of them is not really in use, cause I have only been able to use one at a time on my laptop. Well, to be honest I havent really tried using 2 at the same time, cause I dont know where to start....

Thanks


#6

I'm using up to 5 axoloti's at the same time. I have some audio chained into others, some have analog out gpio's into others gpio analog in.
I often have a digital Gpio chain for the main clock going from one to the other, and so on... It can be confusing, but I have named all my different boards and manage to not get too confused while editing them.
Being able to do what Johannes hopes to include would be amazing. But for now on, I'm having a great time with all of them.


#7

Nice @mtyas

Do you have all of them "live" with the editor at the same time, using same computer for all of them?


#8

Yes, all live with different editor windows active at the same time, all on the same computer.
I also sometimes have a few that run in standalone without being connected to the computer. I works any way


#9

Ha, nice :slight_smile: So what do you do? Just connect them both and open 2 patches and go live on both of them? Is it that simple? :wink:


#10

just be a little careful running multiple instances.... some things are shared (e.g. preference file, build directory) , so you can do things like have two patches live at once without issue, just dont try compiling at the same time.

note: nothing 'too bad will happen' if the shared things get mixed up, just odd compilation errors, or a corrupted preferences file.

note: on a mac you will need to start from Terminal (as Finder will just bring a current instance of the app forward)


#11

you need to launch the patcher software as many times as you have boards.
I do recommend naming them so you know which one you're editing. It's quite a simple process, and only needs to be done once (it remembers the settings). You just need to have the patcher console window open, and the board disconnected, then go to the board menu -> select Device. then you can double click on the name and call it whatever you want. Do that for each board.
Then each time you launch the patcher, you can see what board it is connected to (the name appears next to the Cpu ID)

It would be easier if that same name was visible on the patch window too, but I name my patches accordingly so that I don't get confused


#12

Cool. I cant believe that I never tried this before,...... I am just not sure what you are writting means? Do I need to launch Axoloti from terminal? And launch a new new editor window(not just new patch, but totally new patcher window?

I need to try this RIGHT away... :slight_smile:


#13

Ok, so got 2 versions running at the same time and I have selected device for both Axolotis in each of the 2 axoloti patchers. The first one connects and goes live. Second one does connects but does not go live and I get this error.

Generate code complete
Start creating directory on sdcard : /Mixers Send Out
creating dir: /Mixers Send Out
Done creating directory
Changing working directory on sdcard : /Mixers Send Out
Change working directory: /Mixers Send Out
file error: FR_DENIED, filename:"/Mixers Send Out"
file error: FR_NO_PATH, filename:"/Mixers Send Out"
Done changing working directory
Start compiling patch
Compiling patch... with /Applications/Axoloti.app/Contents/Java/firmware
BDIR = /Users/jakobskouborg/Documents/axoloti/build
Makefile.patch:35: /Applications/Axoloti: No such file or directory
FIRMWARE = .
Makefile.patch:35: copy.app/Contents/Java/chibios/boards/ST_STM32F4_DISCOVERY/board.mk: No such file or directory
Makefile.patch:36: /Applications/Axoloti: No such file or directory
Makefile.patch:36: copy.app/Contents/Java/chibios/os/hal/platforms/STM32F4xx/platform.mk: No such file or directory
Makefile.patch:37: /Applications/Axoloti: No such file or directory
Makefile.patch:37: copy.app/Contents/Java/chibios/os/hal/hal.mk: No such file or directory
Makefile.patch:38: /Applications/Axoloti: No such file or directory
Makefile.patch:38: copy.app/Contents/Java/chibios/os/ports/GCC/ARMCMx/STM32F4xx/port.mk: No such file or directory
Makefile.patch:39: /Applications/Axoloti: No such file or directory
Makefile.patch:39: copy.app/Contents/Java/chibios/os/kernel/kernel.mk: No such file or directory
Makefile.patch:40: /Applications/Axoloti: No such file or directory
Makefile.patch:40: copy.app/Contents/Java/chibios/os/various/fatfs_bindings/fatfs.mk: No such file or directory
make: *** No rule to make target `copy.app/Contents/Java/chibios/os/various/fatfs_bindings/fatfs.mk'. Stop.
shell task failed, exit value: 2
Compiling patch failed ( /Users/jakobskouborg/Documents/Axoloti OWN/Jaffy Jaf (1.0.11)/0. Favourites/Mixers/Mixers Send Out.axp )

@thetechnobear is this releated to what you mentioned about using terminal?

Could you explain it a bit further?

NOTE: For the second version of Axoloti I just copied the Axoloti app in applications so now I have 2 apps, one called Axoloti and another called Axoloti copy(this one also says "Axoloti developer").

Thanks


#14

You don't need to have 2 versions of the patcher on your system, you just need to launch it twice.
@thetechnobear just said that when using OSX, if you try to use Finder, it will bring you the same instance you launched in the first place. By using the terminal, you can launch in twice (or more). I don't have that problem using windows


#15

Cool. Maybe that is the issue, that I am running 2 different patchers.

Trying now with same version for both, running the app a second time from Terminal. The only thing that happens is that the first version of Axoloti is brought to front. A second version is not opened.

I dis this command:
Jakobs-MacBook-Pro:Applications jakobskouborg$ open Axoloti.app

Any ideas? I think I am back to just making a copy of Axoloti app and use that. That approach at least opens a second version. I think I just need to get that error sorted out and then I am good to go :slight_smile:

So if anyone has got an idea on how to get that error fixed, it would be most welcome :slight_smile:

Thanks


#16

in terminal you need to type

open -n -a /Applications/Axoloti.app

(you do not need, and it wont work, another copy of the Axoloti application - you just need to run 2 instances)


#17

Yep that worked. Got both running now. Awesome. Thanks. Having an extra copy, as I tried first managed to mess with my preferences so had to delete old and create new preference file for it. So that cant be recommended :wink:

Anyway, maybe this conversation about using 2 boards at the same time need to made a seperate topic? Just a thought, since it is not that much related the digital audio between Axoloti boards.

If you do the split, around post 5 of this thread, I will edit the post 5 to be more sutable for the "2 boards at same time" topic.

@thetechnobear?


#18

Im now happily patching to Axolotis at the same time, thx fo the tips here! I have them connected via midi, and one as an FX insert via the analog io.
Still I want to have more resolution for some controlls so I'm wondering how to do this:


#19

@Blindsmyth Did you get the digital audio stream from one to another working?

If so, could youexplain what you did what cables to use etc?

Thanks,

Jaffa


#20

no as I said i'm using the analog IO using one axoloti like an insert FX. So Axoloti one sends from one output to the other, and the signal goes back again to the first one. All in mono of course.
But I'm hot as hell for the digital stream, I'm already building really sophisticated FX setups in my head :slight_smile: