Dekrispator on Daisy Pod

Got it working on Patch. Makes disgusting sounds, I’m loving it!

OLED code barely fits in -Os built, but looks like it’s possible to make a UI for it. A better solution would be make bootloader for storing LUTs on flash.

2 Likes

@BlueXav great to see this port for Daisy! Dekrispator still lives on one of our STM32F4 Discovery boards and is one of the coolest open projects for the Discovery boards I’ve come across!

Regarding the USB hosting, looks like the circuitry is almost there on the pod, but I don’t know if it’s bodge-able (we don’t have a pod but are using Dasiy with own circuitry).

The pod already uses the Seed pins for an extra USB connector and if you are able to provide VCC to VBus and pull the floating ID ground to pin you should technically have all the setup you need from the hardware side. Edit: As I understand it! Happy for others to chime in here : )

One problem is that if you are to provide USB gear with power, there seem to be multi-LED grid controllers etc. that just seem to ignore the current limits and draw a lot of power.

2 Likes

@MakingSoundMachinesGlad to hear this ! Thank you ! I quit USB host for a moment…
I’ve added some controls : freeze, mute, tempo.
I’ll continue later.

1 Like

That’t great, love the nice and sometimes weird sounds! I played with Dekrispator before, together with the STK and nice long JCVerb reverb. Was easy to run cross-platform.

1 Like

A new github location and some controls added !

The bin file is here :
https://drive.google.com/file/d/1X8BFGIxLuZ6o2eK0niHISvsUXnOwR6v8/view?usp=sharing

Thanks! Sounds work on the Daisy Patch, but controls don’t. Would be nice to use CV to trigger sounds, select sound type and FX etc, visible on OLED display for Daisy Patch. Will look at it.

1 Like

Hey is there any way you can post the code for the patch? Thanks!

BlueXav pushed all sources to github, just click the link to github :wink:

A fork for Daisy Field would be a great addition
…once I figure out how to write code for this thing in a few months I’d hack at it :slight_smile:

edit: YES the code runs and generates sound in the auto-mode but assigning controls will next-level it.

/(total DSP code n00b)

How would I compile this for my Patch? sorry Im kind of a coding noob

Marcu, did you follow the examples in the wiki?

If you do not want to compile you can upload the bin file Xavier shared through the web uploader specified in this wiki.

1 Like

Thank you! I’ll be giving this a try soon!

Love it, sounds like a bunch of Cylons battling R2D2 in a lumber mill. Thanks for sharing the binary!

1 Like

This looks awesome! But i’m not able to build it / or flash it to my daisy pod? when i try to build it, i get this error region 'FLASH' overflowed by 20132 bytes. And when I just try to flash the bin file supplied in this thread via the webprogrammer, it successfully flashes to my pod, however I don’t get any audio.

Any help would be greatly appreciated!

You could try this to reduce code size - Jellybeans - Diatonic Quantizing Arpeggiator for Daisy Patch - #8 by antisvin

1 Like

Well, same here. Daikrispator won’t fit anymore in Daisy’s Flash…
I tried Os and lto optimizations but it’s not enough.
Maybe recompile all the libs with Os ?
I knew 128k Flash was not enough !!! Value line STM32H7 suck ! :grin: :grin: :grin:

Yes, it’s very annoying. And really you end up using about ~80kb for firmware, leaving very little space for your own patch code.

You could also try to use the new bootloader and store code on QSPI - Creating a Bootloader via the Uart - #18 by shensley

Thank you for the link @antisvin !
The new bootloader and QSPI trick seems a bit complex for me.
I didn’t understand how to load this new bootloader.

I can’t get under 106 % of Flash with Os-ing all libs.
I could get rid of my minBlep oscillators (and wave tables) and use DaisySP oscillators.

By flashing this file instead of normal firmware - https://github.com/electro-smith/libDaisy/blob/master/core/dsy_bootloader_v4.bin?raw=true

Generally, the state of art in DSP is to use polyblep rather than minBlep - it’s computationally cheap (only requires computing 2 polynomials per discontinuity) and doesn’t need a precomputed LUT. As for sine table, you could compute it on the fly when the code starts.

Thank you again @antisvin !
I managed to use daisySP polyblep oscillators. I’m now at 71% !
As far as I remember, minBlep oscillators had better sound than polyblep. I guess the difference is slight.
Anyway I’ll stick to that solution at the moment.
The github repository has been updated.