MobiFlight Community Support

Welcome to the forum for MobiFlight! Feel free to reach out to the community in case you have questions, issues or just want to share great ideas or details about your latest home cockpit project.

You like MobiFlight? Donate via PayPal and support the MobiFlight development. Thanks! 

icon
Avatar
pluckas
Posts: 104
Supporter
Greetings,

My PMDG 737 NGXu overhead gauges all use stepper motors (2048 steps) and all work fine except for one: my differential pressure dial. It is graduated from 1 to 10, but it doesn't make smooth transition in between digits (eg it jumps suddenly from 5 to 6, or jumps down from 8 to 7).

I have defined 3600 steps, and although it is a linear gauge, I have tried setting transforms without any change. It tests fine (ie, if I test exact digits, or anything in between the digits it correctly goes to the correct position).

I'm stumped. The only thing I can think of is potentially a mis-wiring of the stepper on my Arduino, but I doubt that's the problem, as in every other respect it works just fine.

Any thoughts?

Paul

PS - the inner cabin altitude stepper works perfectly.
2021-11-03 14:19
Avatar
StephanHo
Moderator
From: EDDG, Germany
Posts: 1819
Supporter
Hi Paul,

you told about the behavior of the stepper. What is about the input value and the transform?

Does the input value also vary if the stepper moves "uncontrolled"?
Grüße,
Stephan (Time: UTC+1)
2021-11-03 15:30
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 5501
Supporter
Hi

Check the RAW Data ( Value that is on the Offset )

Its no mater if you use 3600 Steps, 100 Steps or 15000 Steps...... It only effected if the RAW Value also give you the same number of Steps !

Lets say your raw value is simply 1-10 without decimals.... then you have 3600 Steps but the value only have 10 Steps.... So it jump from 1 to 2 in one run. Means also your motor only move 1 time by 360 steps without something between..... Cause there is no information for that.


*******************
Solution:
Normaly PMDG work with decimals! Pretty sure Offset is a FLOAT.
Mobiflight truncate each Value behind Transform....... So a value of 1,01 and a value of 1,99 BOTH execute "1" to the Motor.
Simply MULTIPLY the Raw Value to get more Steps.....
For exampel" $*100"....... Then 1,01 change into 101 ..... 1,99 into 199 . Means NOW the area from 1-2 include 100 single Steps! and also the Motor can "see" them.

NOTE: Not forget to rework the Stepper settings..... by the Multiply also the "Sim Value" must be multiply same way to have the same situation !


EDIT: And to explane the "crazy" jumps..... As written above.... without Multiply the Value is truncate.
Lets say the sim value currently is between 6,98 and 7,01 and moves up and down in case of Flight siutation...... Without Multiply MF would see 6 and 7 and fully move the motor by one full number (every time the raw value override the 7,00 point...... With Multiply it move the needle just a little to show this 0,03 differences.
[Last edited by pizman82, 2021-11-03 15:39]
Good Luck !
2021-11-03 15:34
Avatar
pluckas
Posts: 104
Supporter
Thanks Pizman - solved.

Apologies for the lack of detail Stephan. I suspected something like the issue that Peter outlined, but had forgotten the solution.

Much appreciated,

Paul
2021-11-04 01:07
icon