I am really trying to make the Zynthian work for my gig setup, but I keep encountering issues with the snapshots not restoring correctly when loading:
Volume levels saved either to snapshots or sub-snapshots will reset back to full 100% volume.
setBFree organ patches sound different each time they are loaded. I can reset them back to their preset by reselecting the preset, but this change doesn’t stick when I reload the saved snapshot.
Example 1:
I will set the volume level of a chain to 1/3 the total, then save the snapshot. When I reload the snapshot, the volume may be at 1/3 level, or it may be at 100 percent, or sometimes greater. I started a song last night where the volume was jacked up beyond max after I selected the snapshot.
Example 2:
I will set the setBFree chain to use the “Standard B” preset. It initially is loaded with its default sound. When I reload the snapshot, the sound is distinctly more nasally even though the drawbars are set the same as before. The only way to restore the “Standard B” to what it sounded like is to reload the preset from the setup. Not something I can do in the middle of a gig!
In all cases, I correct the volume issues or resave the setBFree preset and overwrite the snapshot or the sub-snapshot. When I reload the snapshot, I never know what volume level will be set for the different chains or what sound will come from the setBFree organ. This has introduced a level of randomness to my setup that is increasingly difficult to stomach at live performances.
I used to think these issues were limited to sub-snapshots, but I have come to find that they are related to full snapshots as well. I can send examples, but I want to know first if anyone else has experienced these issues with their snapshots.
I am also wondering if I am somehow dealing with a corrupted build of the Zynthian system. It doesn’t show that there are any updates on the Oram build.
I should also note that when I built this system, I was unable to get the external card reader to work. I am running this with the SD card directly in the Raspberry Pi instead of using the external card reader.
Please let me know if you have any thoughts on this. When the Zynthian is working it is fantastic. It’s just when I need to load/reload snapshots that I do not know what to expect when the system comes on.
I have a suggestion and several questions-requests:
Please give us a screenshot of the “dashboard” from webconf.
Please provide a copy of the relevant snapshot(s) and subsnapshot (zs3) files. Either here or in a bug report from webconf. I suggest a trouble report - it automatically grabs some info and will prevent (hopefully!-usually) the problem from getting lost.
Does it always happen? If not about how many times relative to times it loads correctly? I don’t know if that was clear, hopefully you get the idea what I’m asking.
edit: I see you’ve already provided the files in earlier topic…
I just read-skimmed Sub-snapshots not saving information reliably .
One suggestion, which I do understand if you feel it’s too much effort - see if you can reproduce under Vangelis, preferably with a fresh sd card. I will try to reproduce under Oram, but it might be a while, my Zynthians are on various levels of Vangelis.
Also can you reproduce without the external MIDI controllers-input devices? They seemed to be the source of the problem a while back, and I realize we might have to deal with it, I’m just trying to troubleshoot and wondering if they have been taken out of the picture.
Thanks @tunagenes for getting back to me quickly on this. I’m at rehearsal tonight but will send you the latest snapshots as soon as I get back home.
Also I should add that I’m experiencing this solely from loading the snapshots from the Zynthian interface. At one time I thought it was caused by using an external MIDI controller to send the program changes, but I’ve since ruled that out.
@tunagenes I think I may have finally figured out what seems to be happening. It appears that the first time I switch between snapshots containing different presets for the setBFree engine, Zynthian isn’t clearing out the old preset and replacing it with the new. If I reload the same snapshot a second time, it correctly loads the expected preset.
This contains a setBFree chain with a “Paul Schaffer” preset
When you load 001 and there was nothing in the Zynthian loaded before, it correctly loads the “Standard B” present.
When you load 005, it sometimes loads “Paul Schaffer” but sometimes stays on “Standard B”
When you go from 005 back to 001, it always keeps “Paul Schaffer” as the preset instead of “Standard B”. If I load 001 again, the “Standard B” preset is loaded.
If I do a “Remove All” between loading the different snapshots, then the intended preset is loaded as expected. I therefore think it has to do with when you transition from one snapshot to the next, the setBFree chain isn’t being fully cleared out. If you Remove All and then load the snapshot, it works as intended every time.
Per your request I have also included a snapshot of my webconf screen:
Please let me know if this helps to troubleshoot the issue. I wonder if the insufficient clearing between selecting different snapshots is also causing the issues with the inconsistent volume levels.
For now, as a workaround I am going to try a “remove all” between each preset load to see if that fixes the problem. Not ideal, and may take a few more seconds between songs, but I’ll take that over the inconsistency of not knowing what sound is going to appear.
Each snapshot loads ZS3 so, the problem can be with ZS3 even if you think it is with full snapshot. (ZS3-0 is the base ZS3 saved and loaded in a full snapshot.)
If the issue is not evident when performing CLEAR ALL between loading snapshot then it would appear the optimisation, that avoids removing reused engines could be to blame.
ZS3 are supposed to build on ZS3-0 but, if ZS3-0 is not sufficiently populated with parameter settings, then maybe something is going awry. In theory, the base preset should be loaded and then parameter adjustments applied.
I think there was some tweaks to setBfree a while ago which might have introduced a regression. Is it only setBfree that you are seeing this issue with?
Thanks @riban for chiming in. How would I know if zs3-0 is sufficiently populated with parameter settings?
The preset issue seems to only happen with the setBFree engine. The issue where the volume of different chains gets reset back to 100% or sometimes 0%, seems to randomly occur on many different engines, including MDA5 (electric piano) setBFree, and whatever engine hosts the Salamander Piano (can’t remember, away from my Zynthian at the moment). In the case of the wrong volume, it too is corrected if you load the snapshot a second time.
Please let me know if this helps. Thanks for looking into this!
The setBFree presets appear to be loading as expected, but during the gig there were a number of times when loading a new zs3 and the setBFree chain (#3 in the snapshot list) would have its volume set to 0%. I have checked and rechecked the subsnapshots and in all of them, setBFree is set to a volume of around 60%. I asked Google Gemini to evaluate the snapshot file and it says that Chain 3 (i.e., the setBFree chain) was at 0.63:
Well, I don’t think there is any question about it. It can only be attributable to human error. This sort of thing has cropped up before, and it has always been due to human error.
I certainly hope that this is user error. There doesn’t seem to be anything in the snapshot file that would cause this behavior. It appears to be related to how the snapshot is cleared out prior to being loaded with the new zs3’s preset values, as selecting the zs3 a second time usually fixes the issue.
I am also wondering if I should rethink my overall approach to managing these sounds. Currently, I have all of my sounds as different chains on a single snapshot, and I use zs3s to mute or unmute the various chains depending on whether I need “piano and organ” for one song or “electric piano and organ” for another. Perhaps it would be better to load full snapshots for each song, each with only the chains needed for the song, but as @riban said the snapshots always have zs3s, so I’m not sure this would solve the problem.
I’m willing to try anything to make this setup more stable for my gigs. I’m on the fence as to whether my current setup is reliable enough to support my performances. Thanks everyone for your input on this.
Well, I did say I’m willing to try anything, so yes, I’ll give that a shot. Quick question: Does Vangelis “force” updates? Once I get to a stable place with my setup I’d like to tightly manage how often I upgrade, probably as new images with the old one as a backup.
I think so. Per song there are typically only 2-3 chains needed (e.g., “electric piano on MIDI channel 1, organ on MIDI channel 2”). The RPi5 is much faster to load so perhaps sub-snapshots are unnecessary for my setup. I thought I saw that you can send program changes that will load entire snapshots, not just sub-snapshots? If that’s the case, then I may just want to go that route, Vangelis or not.
@tunagenes I’ve upgraded to Vangelis and so far, so good! setBFree presets are stable and volumes are not being set to 0 on initial load of the zs3. I’m very hopeful whatever the issue was has been fixed in the Vangelis branch! I’ll have another 3 hour rehearsal to test it out more fully on Thursday before our next gig. Thanks much for your help!
I can’t post recordings of my rehearsals without the rest of the band’s permission, but here’s a solo rendition of one of the songs we do, “If I Ain’t Got You” by Alicia Keys: