FreeJoyConfiguratorQt icon indicating copy to clipboard operation
FreeJoyConfiguratorQt copied to clipboard

About encoders bug& optimization

Open uwlftoe17 opened this issue 2 years ago • 2 comments

FJ is a great software. I like it very much and always use it to make controllers. I recently found a problem with the encoder. Although I can solve it by replacing 1/2 of the encoder, I still want to ask your team to optimize the 1/1 encoder.

I bought a 16 position and 16 pulse encoder, which I like very much because of its great torque and good handle. In the encoder tab of FJ software, I selected 1x. I think this choice is correct, but there are problems in the process of using it. When I keep turning in the a direction, I occasionally trigger the button in the B direction. Similarly, when I keep turning in the B direction, I occasionally trigger the button in the a direction. In another case, the encoder is 16 positioning, so the stroke of each step is a little long. When I stop rotating it, I will also trigger the keys in the opposite direction. This is because when I stop rotating it, my action has entered the next rotation. When it stops suddenly, it will go back and trigger the keys in the opposite direction.

I have been looking for the reason. I thought the encoder I bought was broken. However, when I use OSH Studio software to select a 1/1 encoder to write to the firmware, this encoder can work normally. It's great to turn it quickly or slowly.

So, I think I have found the reason. After my description, I think you know the difference. So I found you and hope to optimize the 1x type encoder code in the next version.

In addition, if you can help me solve this problem, please refer to the code used by oshstudio's 1/1 type encoder. I am willing to pay for help. Please email me [email protected] , please tell me how much it costs. My name is Joe.

Thank you very much for reading. I really need your help. Thank you freejoy team

uwlftoe17 avatar May 27 '22 08:05 uwlftoe17

Hey Joe, if this issue will be confirmed as bug we will take a look at this for sure. Please specify which encoder you are using and share documentation for it if you can.

P.S. This is free software and my position is that there is no need to pay for fixing bugs in it. But even if you wanted to support the project by donate we won't be able to get the money

vostrenkov avatar May 28 '22 08:05 vostrenkov

Thank you for your reply and take care of this. The encoder manufacturer did not provide me with documentation. He told me that the encoder data is the same as 20 positions and 20 pulses, and sent me a video (please check it in the email attachment). After talking to me, the manufacturer suggested that we set it up as follows:

  1. Because this encoder has 16 positions and 16 pulses, the stroke per rotation is relatively long, so its output is prone to oscillation. Therefore, the manufacturer suggests that we add code to filter oscillation, or set the delay time, and increase the delay time. For example, after extracting the output in the A direction, extract the output in the B direction by setting a suitable delay time, so as to avoid the encoder outputting two outputs at the same time. data. If the current code does not set a delay time, it needs to be added. If the current code has set the delay time, it is possible that the time is too short, and the delay time needs to be increased.
  2. The number of output nodes of the extraction encoder is minimized. The makers suggest us: In order to improve the stability of the encoder, only one of the outputs of the encoder needs to be extracted, not all of them. (I don't quite understand what he is trying to express, because I have not learned this knowledge)

Finally, thank you very much for your willingness to communicate with me and let's fix this bug together. Have a nice day. Thank you FREEJOY team

------------------ 原始邮件 ------------------ 发件人: "FreeJoy-Team/FreeJoyConfiguratorQt" @.>; 发送时间: 2022年5月28日(星期六) 下午4:25 @.>; @.@.>; 主题: Re: [FreeJoy-Team/FreeJoyConfiguratorQt] About encoders bug& optimization (Issue #21)

Hey Joe, if this issue will be confirmed as bug we will take a look at this for sure. Please specify which encoder are you using and share documentation for it you can.

P.S. This is free software and my position is that there is no need to pay for fixing bugs in it. But even if you wanted to support the project by donate we won't be able to get the money

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

uwlftoe17 avatar May 30 '22 05:05 uwlftoe17