image-et-son / p600fw

GliGli based Prophet 600 firmware upgrade
10 stars 4 forks source link

The exponential decay and release curves of the envelopes are considered too short #64

Closed image-et-son closed 2 years ago

image-et-son commented 2 years ago

envelope_decay.xlsx

matrix12x commented 2 years ago

@image-et-son just to clarify, as I understand it you tuned the DAC based on how the tail of the envelope sounds, and not necessarily to 4.9V. Might you know what your final DAC voltage was?

Also, the service guide said that the DAC should read 4.9V at Vol A CV with the mix knob set fully to VCO A (MIX fully to A) and measured at U467 pin 7. However, the Gligli based software goes higher in level (voltage) at that pin (7) to allow for overdriving than the Z80 code. So the voltage in that situation should/would be higher than the 4.9V. no?

image-et-son commented 2 years ago

I have not measured the voltages. In fact, I have not measured any voltages inside my P600 yet.

What I did was creating a firmware version for myself in which I could adjust the VCA_DEADBAND. When you turn it up too high then you hear a voltage drop at the end of the release period. If you make it too small, the sound crosses zero before the intended end. I found the exact spot by iteration. So only software changes which I did.

el-folie commented 2 years ago

@image-et-son just to clarify, as I understand it you tuned the DAC based on how the tail of the envelope sounds, and not necessarily to 4.9V. Might you know what your final DAC voltage was?

Also, the service guide said that the DAC should read 4.9V at Vol A CV with the mix knob set fully to VCO A (MIX fully to A) and measured at U467 pin 7. However, the Gligli based software goes higher in level (voltage) at that pin (7) to allow for overdriving than the Z80 code. So the voltage in that situation should/would be higher than the 4.9V. no?

Allow me to respond to that question: I think what GliGli meant by "allowing higher osc levels" was just that even in 50:50 mix of both oscillators each oscillator has its full volume. Due to the mix logic on Z80 that was not possible before GliGli. On Z80 MIX full left or right are 4.9v, in the middle position it was less.

Anyway, I´d also be interested in imogen´s DAC gain value to maybe better the response on my machine - though every P600 will be a tiny bit different of course due to the analogue nature.

I´ve also recorded new examples and did graphs, to follow here soon.

el-folie commented 2 years ago
  1. I exactly calibrated DAC gain to 4.90v.
  2. I then compared the special deadband alpha to the 11.1 alpha to look for differences in release. Result: couldn´t find any - on my machine, which doesn´t mean much due to being analogue. At least my P600 is calibrated now as it was intended to be. Also, again, at the very end of the audio file you can here the drop to zero when turning up volume on your headphones at the end. I know it´s only a tiny tiny bit - I just thought that it was possible to make that last bit of sound more airy/fuzzy/slower dropping to nothingness...

To my ears, at the very end the audio drops to zero suddenly - maybe you hear that differently as it´s so tiny at the end, but my ears are telling me it´s not smooth and maybe it´s just me being too sensitive to ignore the last bits of sound...

P600_DAC4.90v_deadband cal_alpha_vs_11.1_alpha_release to zero behaviour_EXP-SLO.wav.zip

P600_DAC4 90v_deadband cal_alpha_vs_11 1_alpha_release to zero behaviour_EXP-SLO

The last bits at the drop to zero: P600_DAC4 90v_deadband cal_alpha_vs_11 1_alpha_release to zero behaviour_EXP-SLO_last bits to zero_magnified

el-folie commented 2 years ago

Would it maybe make sense to have a user parameter for "deadband calibration" or is my recording above the best "release phase to zero" we can get on the P600 hardware?

image-et-son commented 2 years ago

I can create a version with the function just for that purpose. I don't think that a "normal" user could be expected to do that kind of calibration. You need to be a little crazy :-)

el-folie commented 2 years ago

Well, if you´d create such a version, I´d surely like to be crazy enough using it! :-)

matrix12x commented 2 years ago

Maybe we should "expose" deadband as at least a temporary parameter and see how different it is at least amongst our three P600s.

Also, I've never tuned the DAC. I just went to do it and noticed I have the BB DAC 71. I don't have a gain pot (e.g., R4333) for the DAC or any DAC trimmers.

el-folie commented 2 years ago

No gain pot - one problem less to have ;-) Also, the DAC71 seemed to be the better/faster? variant of two DACs for the P600.

matrix12x commented 2 years ago

Interestingly, for my P600, on GliGli based software, at U467 Pin 7 when VCOA's volume pot is maxed out (99) I measure 5V. At about a pot value of 96 I get 4.9V.

el-folie commented 2 years ago

I think we could agree on good enough for the release shapes now?!?

The only thing still being nice would be to add the little hold time parameter to get an A-H-D-S-R envelope response to model the Prophet 5 "attack bump". Matrix12x and I got a bit distracted in our side topic on lag circuits but the hold time is seperate from that and would add equally as impressive to the synth character as the new fantastic fine-detune does.

matrix12x commented 2 years ago

I agree re: shapes. I think they are really nice.

I also agree, re: hold.

image-et-son commented 2 years ago

Hi, introducing a new separate phase of the envelopes is a medium size code change and it would set the project back quite a bit. From the experience so far it would destabilize the OS again producing side effects in the form of bugs and changed performance behaviour. So I hope you can agree to put this on the backlog log. There are quite a few interesting features in the backlog and this would be one of them.

image-et-son commented 2 years ago

Created a separate issue for the envelope enhancement