Cycfi Q library on the Daisy

Hi everyone,

I set up an example repo with a CMake project that bring in the Cycfi Q library for use on the Daisy:

There is an interesting pitch detection algorithm implemented within the library that might be of interest to some people here.

Cheers,
Sam

3 Likes

Hi Sam, that’s amazing!!
I tried to follow the steps on the Github md, but no luck…
the cmake command fails, with a strange error that I don’t understand…
Can you help me with that ? I really want to use the pitch detection. I could compile other samples from the daisySP library, so I think my toolchain is ok.
Thanks from Freiburg ( Germany) !

c:/users/micha/source/repos/windows/bin/…/lib/gcc/arm-none-eabi/10.2.1/…/…/…/…/arm-none-eabi/bin/ld.exe: c:/users/micha/source/repos/windows/bin/…/lib/gcc/arm-none-eabi/10.2.1/…/…/…/…/arm-none-eabi/lib/thumb/v7e-m+dp/hard\libc.a(lib_a-exit.o): in function exit': exit.c:(.text.exit+0x16): undefined reference to _exit’
collect2.exe: error: ld returned 1 exit status

ok, it works now. I just had to use the Git bash terminal, instead of the windows cmd…
very strange, but, hey, it’s Windows…
It works amazingly good, thanks a lot.
next steps for me: understand what you did with cmake and transfer it to the i(mho quite user friendly) daisy standard project structure, so I can use the VSCode workflow.

Cool, glad you found a solution. Setting up VSCode/Cortex-Debug for a project like this pretty much just a matter of pointing your launch.json at the executable you want to debug.

I assume you found this project because you’re aware of Joel’s BACF algo. I’ve experimented pretty extensively with it. I’m not sure what you’re looking to do, but a bit of advice - good signal conditioning is key to its performance. Gain staging, high order filtering, compression, limiting, gating if necessary - Tweaking all of these things for your use case will get you the best results.

Grüße vom Bodensee,
Sam

Yes, right, Joel is the man! I tried your example code with a guitar, works quite well out of the box without any additional sound processing. The tracking (almost no noticeable latency) is impressive.
Thanks!