Author Topic: Preenfm3 bank & midi list  (Read 3710 times)

Davidttl

  • Team member
  • *
  • Posts: 7
    • View Profile
Preenfm3 bank & midi list
« on: April 27, 2025, 08:30:09 PM »
Hi,

I assembled the Preenfm3 two years ago, and it was my first experience with hardware FM. As I prepared myself tables with CC values, NRPN (documentation for the preen is its Achilles' heel) and a general template it began to open up for me.

Sound bank - you won't find ‘classic’ FM sounds here. No bells and whistles (pun intended). I tried to step out of DX7/pads/pianos comfort zone a bit. There are some decent (IMHO) Kick presets .Some bass, leads, drones. A few presets made for a joke, because why not. I don't play keyboards, I use sequencers. This is made mostly (except for the drones) for fast 1/16 & 4/4 kick & offbeat hh paterns. Added some overview info, sometimes it's worth playing with env, lfo, IM, find a good octave...

In attachments - MidiCC list, NRPN tables (my audio workstation is without internet and I won't keep searching github or doing math equations to find what LSB value I need), value template, .bnk bank.
Have fun, maybe some preset will suit someone.

 
« Last Edit: May 17, 2025, 12:35:07 PM by Davidttl »

Toltekradiation

  • Sr. Member
  • ****
  • Posts: 277
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #1 on: April 29, 2025, 10:17:11 PM »
hello and many thanks for your patches,
there is many interesting ones.
loving the Amiga patches !

ericd

  • Team Member
  • **
  • Posts: 85
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #2 on: May 04, 2025, 09:11:05 AM »
Also, thanks for the updated Midi CC list; very helpful!

Davidttl

  • Team member
  • *
  • Posts: 7
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #3 on: May 05, 2025, 11:22:51 PM »
Hi,
thanks for the kind words, I appreciate it.
 
The midiCC/NRPM list or studying the algorithms (only algos 11-28 overlap with DX7) helped me a lot, so I wanted to share this.
I further consider myself a newbie when it comes to FM. I appreciate Preenfm3 more and more. It's really a unique concept that has been developed all these years. I'm very glad that I had the opportunity to acquire it and something makes me think that I'm going to assemble myself a pfm2 as a spare.

Back to the topic -
I think I got too excited and included this sound bank too quickly.
When selecting some presets (the lfo ones), there are some artifacts. As if the envelopes or modulations are not restarting. I need to take a closer look at this. Is it a change from mono to poly or maybe any of the sources in the matrix. Anyway this behavior precludes changing presets while playing and I'm used to (if you can) the approach Elektron/Renoise offer. And improve gain staging between presets...

Davidttl

  • Team member
  • *
  • Posts: 7
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #4 on: May 17, 2025, 12:34:42 PM »
Hi, another boring post. Unnecessary noise on such a quiet and peaceful forum.

I took a close look at the two files - midiCC and NRPN. This time I checked each parameter in turn using Renoise.
Of course there were surprises, several times I managed to hang pfm3 in specific settings. A couple of CCs look like they don't work, they do something there but not the way it probably should be (MFX - CC40-45).  CC97 is better not to use outside NRPN. I checked which knobs send midiCC when moved.
With NRPN I cleaned up the file a bit, added ranges and general values.
With NRPN Lfo Freq you have to be careful. In the range of 0.00-99.9 it works, but one careless move - a change to the clock hangs pfm3 (CC6 >77).
I add the corrected files as an attachment.

Dave

Toltekradiation

  • Sr. Member
  • ****
  • Posts: 277
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #5 on: May 20, 2025, 11:34:21 PM »
hi Dave,
a useful post if i must say ^^

It would be very cool if you could remember the settings that make hang the pfm3.

About the CC 40-45, yes it's far from ideal : they respond to the global midi channel to change some reverb params.
CC40 is for reverb preset change, CC41 to 45 are reverb params, that are overwriten when CC40 change the preset...
well, it's a really weird implementation ::)

CC40 may be used for something else ?
What do you think about it ?


Patrice

Davidttl

  • Team member
  • *
  • Posts: 7
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #6 on: May 21, 2025, 07:00:09 PM »
Hi Patrice,

I started writing a list of cases when pfm3 crashes recently. And I should do it much earlier, because in the two years I've owned it (although I've really only started using it extensively now) it has managed to hang or even crash the DAW many times :)

I don't know how to write code, C++ is really unknown to me (I know a bit of python and I'm reasonably familiar with bash (because Linux)) but I feel that I'm better at finding bugs than debugging them. Plus I like manuals. I've had a really hard time these two years to understand how pfm3 works, also because FM synthesis is a bit abstract at first. There is a giant elephant in the room, which everyone knows. I know it's impolite to complain and sometimes it's good to be happy with what you have, rather than hoping for what will be (and it won't be).

Now I have started to be more methodical in approaching the whole pfm universe. To learn the functions of the synthesizer I read github (after two years I discovered that it also works as a midi controller), because the wiki is 4 years old :) The fact that there are hidden combinations keys I found by accident on the forum (also not all work as they should, depends on the algorithm and the number of carriers).

Pfm2controller as the name suggests is more to the earlier version - it has potential, but it doesn't work as it should. Standalone is most useful as a preset librarian, but also not for creating new banks, because it creates empty presets as <empty> and when browsing the bank you move to such a preset it crashes :)
Vst can crash hardware and DAW, moreover, it does not always read NRPN from the device. I tried the code in juce and the result is known. Transferring it to modern juce is a horror and I gave up.

For me personally vst, what I would be able to use in Renoise or Reaper to have parameters from/to the device, is something I am looking for and will try some walkaround with API/Lua, maybe some simple instrument in juce what will operate only on values, I do not need GUI (something like airwindows).

After reading hexter.cpp it became clear to me which parameters when importing .syx are not implemented.
I recently started using Perf tab - great! Additional 4 sources + 2 hardcoded encoders for fx1 1 and 2.

Sequencer - after it boiled my blood many times running by itself - I still don't like it and don't use it. It's cool that it's there but I have better ones. Thank you again for fixing it quickly - the latest firmware works!
And while we are at MI - at the same time as I was learning to solder and pfm3 was my first hardware made, MI Anushri was the second and x0xb0x the third. I managed to build that infamous firmware file and here with stm32 still nothing...
Ok, rant over.

I'm gathering information from the code (although for me it's like reading Joyce's Ulysses - all good and at the end 30 pages of Molly's stream of consciousness at 3 am), from the forum and I'll try to write an unofficial manual. Only this will also take time, but here it is unlikely that anyone is in a hurry. How (I'm likely to succeed only not in the near future) I manage to solve problems with building firmware I will also write. I have a feeling that it may be useful for others as well.

Of the simple things to modify in the code:
- changing/removing the modulation matrix value in Presets.cpp for “Default” and “Sound”
- triangle wave in waves.c. Yes, I know you can have 6 user, but.... I don't need sine0 and sine+

Is it possible?
- In FX2 adding LP3, HP3 - a double filter
- UserCC & Perf - as modulation destnations - this would probably make problems
- A dot/point/coma. Ftyp fixe Ftun dot - like 99.9Hz

CC40 - maybe finetune parameter ?

Dave

rayultine

  • Team member
  • *
  • Posts: 3
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #7 on: May 22, 2025, 02:39:10 PM »
Hi Dave,
We appreciate you making the forum less peaceful!!
When you edited your original post, did you take down the preset bank attachment? I don't see it.
Thanks!

Toltekradiation

  • Sr. Member
  • ****
  • Posts: 277
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #8 on: May 22, 2025, 07:33:38 PM »
oh, yeah, thanks, lots of good ideas here we got !

i will definitively try to change the default preset matrix.



Davidttl

  • Team member
  • *
  • Posts: 7
    • View Profile
Re: Preenfm3 bank & midi list
« Reply #9 on: May 22, 2025, 09:44:47 PM »
Hi Dave,
We appreciate you making the forum less peaceful!!
When you edited your original post, did you take down the preset bank attachment? I don't see it.
Thanks!

Hi,
I'm doing my best!
Unfortunately, yes. That bank was as one of the files in the zip archive. And unfortunately those midi tables, well no, they were not suitable for people to use, so I really checked them and corrected them.
That bank of presets, I also need to fix - in some cases when browsing  presets it sort of didn't reset the sound (and it should. Somewhere on the forum and in the code I saw that there was such a protection).
I will improve that bank, unify the mod matrix and gain, add more drum presets (mostly kick, but I also managed to make snare drums acceptable). Well, I'll confess - In Renoise I did such a test project: kick, snare, hh, hh, synth, bass. I use 6 mono outputs, 6 instruments, 3 midi channels. To test drums I have Cardinal set up and in it Valley Topograph - a port of the MI Grids (the same as I have in MI Anushri), hy-plugins for bass and synth. Nothing special, but hours of fun. That's why I like pfm3 so much. It's a small, slick sound module with massive capabilities.

Dave
« Last Edit: May 23, 2025, 12:31:33 AM by Davidttl »