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! 

05/03/2024 - This forum is read-only

The community support for MobiFlight has moved exclusively over to our Discord server. Register for free and enjoy more interactive functions like image and video upload, voice chat. More than 7,000 registered users around the world make it a great experience!

See you on our MobiFlight Community Discord server.

A HUGE Thank You to everyone who participated in the forum, especially obviously to Pizman and Stephan who did an outstanding job over so many years providing an incredible service to the MobiFlight community.

The forum is still providing a lot of good content, hence we keep this information accessible.

icon
Avatar
edwardwtlam
Posts: 6
Hi there,

First of all, thank you for your effort in developing MobiFlight.

Recently I tried to connect MF8.0.2 with my LCD1602. I followed exactly the step in there (https://www.mobiflight.com/forum/topic/838.html & https://www.youtube.com/watch?v=ja0tvTbaEnI) however I do not even see the message "MobiFlight Rocks". I tried to change another piece of both LCD and I/O in case that first one is not working, but it still does not work.

Please help!

Version: 8.0.2
LCD: 1602A (VSS VDD V0 RS RW D0 D1....D7 A K) with I2C (GND VCC SDA SCL)
I/O: Mega 2560 (Wiring: GND > GND, VCC > 5V, SDA to pin 20, SCL to pin 21)

Meanwhile, I wanna check with you for the Step 7 since I believe the front end has been updated.

Thanks in advance!!!
2021-03-17 05:48
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 6010
Supporter
Hi

The changes from Step 7 ( Screenshot) are not realy important. The only change is that the GUI Area where you select the needed Placeholders move to another Tab.
In case we now use these placeholders also for Expressions in formulas we decide to include them in the FSUIPC Tab.
But there is no effect to the LCD..... You simply select the needed Config refferences and the used placeholder Symbols THERE.... Everything else is the same.

So.... Why does your Display not work.
This can have many reasons.... And i can not awnser just in case of your short report.

First question.... Does it light ?
The backlight is indipended from the MF Controlls. If Display is fully dark then there is a power problem or the display is broke or wrong wired.

If display light up... Is the Brightness to low ?? In deliver state most displays have the brigthness set to minimum.... So the Display show no Text. You need to increase the bright by turning mostly a potentiometer with a screwdriver.... Somewhere on the backpanel.

RESTART is also a thematic.... After Upload the Board in MF sometimes a restart of the Mega ( to initialise the Display Controller) is needed. Whartever not official recommend.... I restart a Board ( and MF Connector) everytime when i include a new Element and it not work directly as it should.
9 of 10 Situations can be solved with this easy workflow!

At last... Confirm your Adress is correct. Each Display ( or IC2 Device) got a individual adress. Some are hardcoded by manifactur..... Others got a Jumper System so user can set the adress in 4 or 16 different values.
Check the Manuals of your Display.... Sure. You need to use the SAME adress for Both. Hardware in Display and Settings in Mobiflight !

************
Please report if this was helpfull..... Else we need to go deeper !
Good Luck !
2021-03-17 06:25
Avatar
edwardwtlam
Posts: 6
Thanks for your reply.

Please let me start from your direction.

For Step 7, while Selection has been moved to "FSUIPC" Tab, do I need to select anything for "Load Preset" or "Base Settings"? Or I should just tick the devices on "Config References"?

Thanks again
2021-03-17 08:51
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 6010
Supporter
A LCD Display ( like every other Device) not care about if you use Presets or if you input the data by hand.
A Preset is just a "helpfull tool" .... means it enter the data like "Offset adress, size, typ and so on) automaticly instead of do it by hand.
In easy words.... this is for lazy people who not like to insert the data themself ! The result is 100% the same !


Normaly we use for a LCD Config NO Offset itself ( whatever PReset or by hand) .... Let the Offset field simply on preselected Status (0000) .
The Offset in that config is only used if you need more then 6 Variables ..... Then $ can be used as 7th Placeholder ( by use the needed Offset Data in that config additionaly) .
Good Luck !
2021-03-17 20:44
Avatar
edwardwtlam
Posts: 6
Hi again,

Thank you for your quick reply! It work!! Appreciated it.

I have two more questions and probably I will good to go after that. Hope that you can help:

1. Right now I am using my LCD1602 (via Mega 2560) to display the SPD (Digit 1-3) and HDG (Digit 5-7). It shows the correct information however once I click "Run" along with the MSFS2000 (Airbus 320 Neo by the way), the whole display is keep flashing (as well as the TX/RX indicators on the board). I was thinking it may be the hardware issue, but eventually, it appears the same with the other piece of LCD1602. Can you please provide me some directions for me to solve this? May be the electrical supply (Voltage) issue?

2. The SPD is not showing 3 digits when the value is less than 99. How can I make the, "99" for example, shows as "099"? I know how to fix this if this is a 7-segment LED but I have no idea for LCD1602. Any suggestion?

Finally, this is the side-topic. I know you guys are really contributing to the sim community so I am glad to make a small donation to your team. But when I tried to donate via Paypal, the below message appears:

"Donations to this recipient aren't supported in this country"

Is any workaround for me to donate?

Thanks a lot!!
2021-03-18 02:26
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 6010
Supporter
Hi
At first.... Please take care this topic not change into a private Question/awnser thread. For those Questions the DISCORD System is much more better.
Take a Headset and join our Group there..... Then you can call me if i´m Online and ask me whatever you want.... And i can share my screen also.

About Questions:


1. Donate:
I not know this issue... May its a setting in your paypal account . Check the Paypal Options. Like a blocking of Paymnets to private people or a missing verification of the account.

Basicly Donates goes to Sebastian only.... Stephan and myself do this support for free whatever we get cool merchendise stuff from Sebastian like MF Clothes :P
This is our way to support Sebastian and this wonderfull software !

So feel free to make a donate to support Sebastian for buying Hardware and for paying the Server Costs.


2. Flickering
Here we talk 99% about a Config Issue from Yourself.... Not a electrical or hardware problem.
If 2 ( or more) Configs try to controll the SAME Display at SAME time then this occure in your reported situation.

For example Config 1 like to write the SPD.... And use Something in Text field like " SPD : %%% _ _ _ _ _ __ _ _" ("_ " means a empty field in that line )
Then Config 2 is used e.g. for HDG and show something like " _ _ _ _ _ _ _ _ HDG : &&&" in same line.

If you now RUN Mobiflight then both Configs try to handle the display.... Each like to "blank" the not used Segments..... Means Config 1 "overwrite" the Text of Config 2 with its blanks and reversed Config 2 overwrite the Text of Config 1.

To solve: Use only ONE Config for the Display.... And use BOTH Placeholders in this.
So Config1 read Speed from a Offset No device. Called e.g. "SPD Raw"
Config 2 read Heading... No Device.... Called e.g. "HDG Raw"
Config 3 is Your Display Config. It use the LCD as device. It not need a own offset as explaned in last posting.... remain "0000" here.
In placeholder you use Nr1: Config "SPD Raw" Symbol e.g. % ..... Nr2: Config "HDG Raw" Symbol e.g. &
As Text you use something like : "SPD: %%% - HDG: &&&"

Then only one Config controll the Display and include BOTH values ..... So the flickering is gone !

****

3. Wrong Number format:

Your right. The Left Padding tool is not available for LCD . In case most people not need this and it was a little difficult to implement.
But there is a way to handle this with some Syntax code in the compare Tab.
(We know this is advanced and not comfortable.... But it is needed so rare... So we decide to do it this way for now)

Try the follow:
In the SPD Config ( you read out the raw value and maybe also use transform to bring it into a clear knots format) . Use here COMPARE
Say.... IF VALUE less then 100 "< 100" in THEN you say : if($<10,'00'$,'0'$) OR if this not work try if($<10,'00'+$,'0'+$) ELSE can remain empty or you say $ there.

With this formula we say IF Value is below 10 ( so 1-9) show two Zeros and the value behind . So e.g. 5 change into 005 .
We also say... If value is not below 10 but still below 100 ( so 10-99) then show one Zero and value behind.... e.g. 35 change into 035
If value is 100 or above ( still 3 diggit long) we simply show it without changes.



Hopefully this work..... I not do this for longer time. If you get in trouble, then tell me. I will figure out for you once again !
Good Luck !
2021-03-18 07:11
Avatar
edwardwtlam
Posts: 6
Hi, Thanks!!

I tried your method over the weekend. Flickering issue is solved! You are a GENIUS!

For SPD, I am still having the issue to show 3 digits.

And indeed, I have found another issue related to ALT (Encoder). Whenever the ALT is showing "00100", I turn anti-clockwise (DEC in ALT) one more time, it will change from "00000" then "99900". I am completely loss of how to solve it.

Do you have any idea?

I am happy to connect with you via DISCORD. How can I search you?

Thanks in advance!
2021-03-22 03:50
Avatar
edwardwtlam
Posts: 6
I have already joined the group. Thanks
2021-03-22 03:55
Avatar
pizman82
Moderator
From: ETSI, Germany
Posts: 6010
Supporter
Yeah.... Lets talk via Discord when i´m online next time!

About last question.....

This is logical and it occure in case of the math and programming logic of a Offset. I could explane you all the stuff but it will take long time and you only understand this if you basicly learn how Offsets, Hexadecimal System and programm code is working.... In the future you should learn this but for now i will explane more easy.....

You pretty sure use in the Encoder Configs something like "$-100" or "$+100" ( Maybe other values.... But you use $ and add or subtract something with left or right)
Without a "protection" system your Input can "overdrive" a Limit Line.....
For example Altitude start from "0" .... It can not be below "0" . If you say "$-100" whatever your still at "0" then in verry easy words it flip over and go to the most highest point . Like it start from the other side in case there can be nothing below zero.

To solve this we use a IF Condition..... Like for ON LEFT : if($<100,0,$-100)
So IF Value is still near the zero Point then a leftturn will SET to "0" (instead of subtract something and overdrive the Zero Point) If Value is above e.g. 100 and another leftturn can decrease it without trouble then it use $-100.

NOTE: This is just a example.... Pretty sure your values are different here! I not know the Offset. So this is just the "logic" and you need to figure out the correct values yourself!
Good Luck !
2021-03-22 12:33
icon