Editing patches

How many patches will the owl hold? Can you delete unwanted patches?

At the moment the OWL firmware holds 40 patches, four of which are ‘user slots’, meaning you can store your own.
There are plans to make them all user writeable.

Can this be done with the existing device?

Yes 40 patches / 4 user slots is how it works for both OWL Pedal and OWL Modular.

Here is the factory patch list:
https://hoxtonowl.com/mediawiki/index.php/Firmware/v12

It is possible to compile your own firmware if you want a custom set of patches, but that would be considered advanced use.

What would be involved to put user determined patches on the owl?

You need to compile the firmware from source, see GitHub - pingdynasty/OwlWare: Firmware for the OWL programmable effects pedal

There are two files: factory.h and factory.cpp that need to list the includes and definitions of the patches you want to include. Edit these files, make sure that all patches are available and compile the code.

However because the patch API has changed over time you need to also make sure that the patches and the firmware are compatible. The code is not quite up to date because we’ve been working on the next generation firmware, where all patches are dynamically loaded and stored. You can find this code here: GitHub - pingdynasty/OpenWare: Firmware for OWL devices

One of my patches, “pingpong1”, works on your web site, but when I download it to my owl pedal, it distorts the signal pretty bad. Do you know why this happens?

I get a message “memory overflow” when I attempt to download a patch. What exactly does this mean? If I use factory reset, will this free up any memory?

It means that your patch allocates too much heap memory, probably in audio buffers.
Try halving the buffer size until the patch runs, then look at Memory Used message to detemine how much is left to scale up.

And no, factory reset won’t free up memory.

Sorry, I am not too familiar with that jargon. I tried reducing the delay time, it didn’t make much difference. I wouldn’t think the other operators would tax the memory much.

‘Heap’ is memory that is allocated dynamically. Exactly how that is done depends a bit what language you use. In C++ it would be done with the new operator or one of the ::create() methods. What language / environment are you using?
If you could link to your patch then I’m sure someone will be able to lend a hand.

Gen in Max 7. Which simplifys things some.

I think pretty much everything is on the heap with Max patches. Reducing everything to a minimum size then resizing one thing at a time should give you a good idea of what you can fit.