Oopsy Update Prerelease! Want to Try the New Features Early?

I’ll set up a Seed with OLED tomorrow (EST time) and look at this closer with you. :slight_smile:

In the meantime, could you share the JSON file that you have been using? And a screenshot of the [gen~] patch as well as the main patch with the Oopsy object. I would like to see what the console displays when you flash with the Daisy Bootloader.

Thanks!

{
	"name": "patch",
	"som": "seed",
	"app_type": "BOOT_SRAM",
	"defines": {
		"OOPSY_TARGET_PATCH": 1,
		"OOPSY_TARGET_HAS_MIDI_INPUT": 1,
		"OOPSY_TARGET_HAS_MIDI_OUTPUT": 1,
		"OOPSY_IO_COUNT": 4,
		"OOPSY_HAS_ENCODER": 1,
		"OOPSY_TARGET_HAS_OLED": 1
	},
	"max_apps": 8,
	"display": {},
	"audio": {
    "channels": 4
  },
	"external_codecs": [
		{
			"periph": "SAI_2",
			"a_sync": "SLAVE",
			"b_sync": "MASTER",
			"a_dir": "TRANSMIT",
			"b_dir": "RECEIVE",
			"pin": {
				"fs": 27,
				"mclk": 24,
				"sck": 28,
				"sb": 25,
				"sa": 26
![Screenshot 2023-07-12 at 6.24.06 PM|371x500](upload://2ydHNuOCHcvnDzNgxSo81mBFUuU.png)
![Screenshot 2023-07-12 at 6.24.17 PM|414x299](upload://anrTOzYEdlhBxwChII6HLp7pEcS.png)

			}
		}
	],
	"components": {
		"knob1": {
			"component": "AnalogControl",
			"pin": 15,
			"flip": "true"
		},
		"knob2": {
			"component": "AnalogControl",
			"pin": 16,
			"flip": "true"
		},
		"knob3": {
			"component": "AnalogControl",
			"pin": 21,
			"flip": "true"
		},
		"knob4": {
			"component": "AnalogControl",
			"pin": 18,
			"flip": "true"
		},
		"encoder": {
			"component": "Encoder",
			"pin": {
				"a": 12,
				"b": 11,
				"click": 0
			}
		},
		"gateout": {
			"component": "GateOut",
			"pin": 17,
			"display": ""
		},
		"cvout": {
			"component": "CVOuts"
		},
		"gatein1": {
			"component": "GateIn",
			"pin": 20
		},
		"gatein2": {
			"component": "GateIn",
			"pin": 19
		}
	},
	"aliases": {
		"gate": "gatein1",
		"gate1": "gatein1",
		"gate2": "gatein2",
		"cvout": "cvout1",
		"encswitch": "encoder_rise",
		"enp": "encoder_press",
		"press": "encoder_press",
		"knob": "knob1",
		"ctrl": "knob1",
		"ctrl1": "knob1",
		"ctrl2": "knob2",
		"ctrl3": "knob3",
		"ctrl4": "knob4"
	}
}

Heres what I have. The files and json can also be downloaded from this wetransfer link: https://we.tl/t-wS3pWnQb3W. Thanks for the help Takumi, I’ll be available tomorrow if you have follow-up questions

Hi guys,

it’s a month later and i wanted to ask if someone looked into the encoder not working problem in the new version.
Is there something new to clone and test ?
I know it’s summer…so i am cool walking back to the pool if not :slight_smile:

Thank you for the wait!

From what I can tell, the OLED is still working while using the Daisy Bootloader.
It initially wasn’t showing after I flashed but then I pressed the reset button and the OLED started displaying. This may have been something else though.

One thing I recommend is extending the grace period. After you press the reset button to enter the grace period when you can flash, you can extend that period by immediately pressing and letting go of the boot button. So, press and let go Reset, then right after press and let go Boot, and hit the button object on the Oopsy object. See if that helps.
And I was testing with the patch.json but with that line "app_type": "BOOT_SRAM", added similar to how you did. And I was just using the patches in the example folder. modfm.maxpat and pulsar.maxpat.
Flash those back and forth to double check that it’s actually flashed using the Daisy Bootloader.

Of course, there’s a chance that I’m testing this wrong from my side of things, so I will mention this to the team.

Feel free to keep me posted when you test further :slight_smile:

We haven’t had a chance to look closer at it.
So keep on swimming until we can get back to you :swimming_man::sunglasses:

Hi,

I have exactly the same problem, OLED doesn’t work with BOOT_SRAM and I test with modem.maxpat to be in the same configuration.

I tried to press button reset as you did but with no success.

Here is the log

oopsy-verbose: flashing...
oopsy-verbose: "created binary 106KB"
oopsy-verbose: "stdout dfu-util -a 0 -s 0x90040000:leave -D build/modfm.bin -d ,0483:df11"
oopsy-verbose: "dfu-util 0.11"
oopsy-verbose: 
oopsy-verbose: "Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc."
oopsy-verbose: "Copyright 2010-2021 Tormod Volden and Stefan Schmidt"
oopsy-verbose: "This program is Free Software and has ABSOLUTELY NO WARRANTY"
oopsy-verbose: "Please report bugs to http://sourceforge.net/p/dfu-util/tickets/"
oopsy-verbose: 
oopsy-verbose: "Opening DFU capable USB device..."
oopsy-verbose: "Device ID 0483:df11"
oopsy-verbose: "Device DFU version 011a"
oopsy-verbose: "Claiming USB DFU Interface..."
oopsy-verbose: "Setting Alternate Interface #0 ..."
oopsy-verbose: "Determining device status..."
oopsy-verbose: "DFU state(2) = dfuIDLE, status(0) = No error condition is present"
oopsy-verbose: "DFU mode device DFU version 011a"
oopsy-verbose: "Device returned transfer size 4096"
oopsy-verbose: "DfuSe interface name: "Flash ""
oopsy-verbose: "Downloading element to address = 0x90040000, size = 108112"
oopsy-verbose: "Erase   	[                         ]   0%            0 bytes"
oopsy-verbose: "stderr dfu-util: Warning: Invalid DFU suffix signature"
oopsy-verbose: "dfu-util: A valid DFU suffix will be required in a future dfu-util release"
oopsy-verbose: "dfu-util: Error during special command "ERASE_PAGE" get_status"
oopsy-verbose: "make: *** [program-dfu] Error 74"
oopsy-verbose: 
oopsy-verbose: "oopsy dfu error"
oopsy-verbose: "Command failed: export PATH=$PATH:/usr/local/bin && make program-dfu"
oopsy-verbose: "dfu-util: Warning: Invalid DFU suffix signature"
oopsy-verbose: "dfu-util: A valid DFU suffix will be required in a future dfu-util release"
oopsy-verbose: "dfu-util: Error during special command "ERASE_PAGE" get_status"
oopsy-verbose: "make: *** [program-dfu] Error 74"
oopsy-verbose: 
oopsy-verbose: "dfu error"

hanks for for help.

Heyyyyyy what’s happening? When can we expect an update? Hoping to be able to make a sweet slicer/FX box out of my Field but need the extra memory space of the Bootloader Additions.
Are we waiting for Pedal 125b to be released “soon”?

Hi Felart!
Thank you for reporting this also. I’ll bring this OLED + the Daisy Bootloader issue to the team.

Hi Manysounds!

You can try the update right now if you want to :slight_smile:

Hello again :slight_smile:

The water in the pool is getting cold and a bit muddy… (Burning Man…lol)
Can i come out now ?
Is there a new update yet ?

Hi Sascha!

Other projects had to take priority over Oopsy so new update yet. Thank you for the wait.

1 Like

Hi Takumi,

Some precisions about new boot loader:

Problem avec OLED is random and can be solved temporarily with many reset
Patch with data object fail after flashing (add “data buffer1 48000*10 2” in any patch to reproduce).

Maybe these problems are linked with memory management like problem described here Bootloader_v6 doesn't work on restart

Is there any improvement with boot loader V6?

Thank you for investigating further and sharing more details.
I put it in my notes of issues to bring up to the team, so we’ll look into it when we get the chance.

1 Like

Hi Takumi,

Do you have any update about a new release with fixes, I don’t see any activity on github?

Actually I can’t develop with oopsy because my projects are not compatible with classic boot loader (program size are too big with my projects (1306,CD4051 et PCA9685 driver)).

Bootloader V6 seems to correct some bugs. Is there a way to test it oopsy?

Thanks.

Hi Felart,

Other projects had to take priority over Oopsy, so we haven’t had a chance to update it. Once we are ready to resume, we should revisit this thread to see if there are any new issues that need to be resolved (including the OLED issue when using the Daisy Bootloader).

Thank you for your understanding and the wait.

By the way, the version is 5.4 in the bootloader-additions branch. If you want to use v6, you can use git to check out the v6 PR in your Oopsy folder and then recompile libDaisy.

A stereo I/O version of the 125b would kick this over the top for me.
Kudos on your amazing work.

Can we make the v6 PR available through normal means now?

Hello again,

could we get a summary what works and what does not work at the moment ?
I saw there have been two commits last month…
What exactly do they do ?

Do we still have to " Run git checkout bootloader-additions" to get the version that allows for the bootloader to work ?
I tried flashing my existing patches (petal, 4 apps) and they do not compile anymore as they become bigger than before .

Progress :slight_smile:
I managed to flash some code with the new bootloader addition into my Petal using the modified .json file.
After trying 5 different patches that all failed i found one that worked…
I could make 8 copies and for the first time use all 8 slots available in the Petal.
The combined .hex was around 168kb, so definitely over the old limit
But only i found out that i needed to make new gen~ object and only drag and drop my saved ones.
That would always result in compiler error as oopsy adds all the names and folders and subfolders into one massive string.
Anyway, i also found out what made my old patch crash the Daisy.
The delay node…
And here is where it gets really weird.
All my algos have one or more delay nodes, most with a 96000 value to provide 2 second of delay time at 48khz.
Once i reduced the delay time to exactly 32768 samples it would run fine.
So what could that be ? Did Max break oopsy ? Or the bootloader broke the memory allocation ?
Try it…
Make a new patch, load in a .json file with the bootloader string and try to flash this simple gen~

Screenshot 2024-03-19 at 15.36.15

The thing is, it worked before when not using the bootloader.
I just tested one of my old patches, the one that did not work and flashed it with the old method…
Works…
Then back to the bootloader mode…no dice…does not start
I reduced the combined delay samples in the patch to 32000 and it works again.
Now thats some weirdness :stuck_out_tongue:

Hi! I notice in the JSON example above, there seem to be RGB LED’s in use. Could you please share an example of how will this be controlled inside of gen?