Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Certains patches ne sont pas transmis au Gmajor #19

Open
ewidance opened this issue Dec 16, 2024 · 5 comments
Open

Certains patches ne sont pas transmis au Gmajor #19

ewidance opened this issue Dec 16, 2024 · 5 comments

Comments

@ewidance
Copy link

ewidance commented Dec 16, 2024

Bonjour. Je viens d'acheter un G Major. J'ai eu pas mal de difficultés à le mettre à jour car le logiciel d'update est très chatouilleux en midi. J'ai d'abord tenté avec une carte Midiman USB Midisport 2x2 Anniversary edition et cela n'a pas fonctionné, cela s'est interrompu à plusieurs reprises. Il m'a fallu utiliser une Midiman USB Midisport 2x2 "classique" (la verte) pour que cela fonctionne. A partir de ce moment je suis donc sur que ma carte midi est de bonne facture et supportée. Mon G Major est donc en version 1.27.

Dans free Major, j'ai constitué une banque avec plusieurs programmes collectés. Certains programmes de cette banque ne sont pas correctement transmis (pour être plus précis, il ne sont pas compris) par le Gmajor.

J'ia l'impression que cela tournerait (sous toutes réserves...) autour du format de données liés aux Chorus "Advanced Chorus". Le programme 2 de la banque ci jointe par exemple ne peut pas être recu par le Gmajor.
BankUser1.zip

Peut être que le format midi a changé depuis la 1.27?

Pour mémo, voici le descriptif des fonctionnalités de l'update 1.27:
In Level, Global Out Level and Preset Out Level
We have added a Mapping Response Curve to the three level parameters the Mod Menu. This will make you able to define your own curve to the "In Level", "Global Out Level" and "Preset Out Level" parameters. This gives highly added value when using an Expression pedal to control one or more of these parameters.

External control of EQ and Noise Gate On/Off added
The Noise Gate and EQ blocks can now also be switched On/Off either via a MIDI CC message sent from your MIDI board or via a momentary pedal connected to the External Control In.

Level at "Bypass All" has been changed to be equal with Preset Output Level
This way the Output level is kept according to the set Preset Output Level also when the G-Major is bypassed.

Gain Parameter added to the Compressor
In many cases the Compressor will reduce the signal level. G-Major has a built in Auto Makeup Gain to compensate for this. On request we have now added a regular Gain parameter also.

Kill Dry Parameter
To get full benifit of all effect blocks the G-Major should be used in a serial loop. However, some amps or setups uses parallel loops. To achieve the best performance in these setups the new added Kill-Dry parameter muting the Dry signal on the Outputs, should be used.

The Pitch detection for the Tuner is now positioned before the Input Level control
This means that the Tuner works perfectly even if your expression pedal controlling the Input Level is turned down.
Independend level control of the two voices in the pitch section
The Pitch Shifter in the Pitch block features two voices. It is now possible to set individual Levels on the two voices.

Bugfixes:

  • Fixed issue with DRAM timing.
  • Small bugs fixed in the Reverb filters.
  • The digital Input now works when you set G-Major to "Digital In" and "Internal Clock".
  • Bug in Switch Input solved.
  • Momentary switch now also works with Preset Boost.
  • Global Input Level control has been moved to after the Noise Gate.
@ewidance
Copy link
Author

J'ai fait quelques tests et visiblement la longeur d'un patch n'a pas changée en Sysex, elle fait toujours 615 octets (en incluant les F0..F7).
Je m'interroge par contre sur le fait que la structure d'un patch puisse avoir changée...

Voici en doc joint 2 patches individuels (dont le premier preset "Realmajor" ) pour éventuelle comparaison avec un Gmajor avec une autre version de firmware...
GMajorSysDump.zip

@ewidance
Copy link
Author

ewidance commented Dec 17, 2024

Après encore une savle de tests complémentaires, j'ai l'impression que le soucis vient plutot de patches téléchargés sur internet, mais contenant des données erronées. Ils sont bien chargés dans les éditeurs mais ne peuvent pas être correctement transmis. A contrario, lorsque l'on utilise l'éditeur pour faire un patch from scratch, il semblerait qu'on ne perde jamais la capacité qu'il soit correctement reçu par le Gmajor.

Par contre, il est systématiquement transmis dans l'emplacement mémoire correpondant. J'ai cru comprendre que le patch "0" en Sysex correspondait à la mémoire d'édition (que l'on peut demander par F0 00 20 1f 00 48 45 00 00 F7 ). Il semblerait que Freemajor ne travaille jamais avec cette mémoire tampon, mais sauve toujours le patch dans l'emplacement. J'ai bon?

Ne serait il pas intéressant d'ajouter un emplacemernt ("Edition") dans liste des patches (numérotés de 1 à 100) pour permettre de bricoler un patch sans déjà avoir à choisir ou on veur le sauver?

@jujudusud
Copy link
Collaborator

Bonjour,
Je n'ai pas eu le temps d'analyser tout ce que tu as envoyé.
De plus, le développeur initial de FreeMajor n'est plus présent aujourd'hui sur Github.
Ce que je sais c'est qu'on a fait une retro ingenierie d'un logiciel Windows duquel on a intercepté les transmissions avec et depuis mon G Major.
Dans un premier temps je ne sais pas t'en dire plus que ça.

@ewidance
Copy link
Author

OK je comprend. C'est quoi la chaine de compilation recommandée pour Windows (CMake + ??). J'ai tenté d'installer Visual 2022 + Cmake, mais impossible d'avoir une compilation fonctionnelle.

@jujudusud
Copy link
Collaborator

OK je comprend. C'est quoi la chaine de compilation recommandée pour Windows (CMake + ??).

Nous n'avons compilé qu'en utilisant "Docker" et une "cross compilation". Du coup c'est pareil de ce côté là. Je ne sais pas quoi dire de plus.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants