diff --git a/INSTALLING.md b/INSTALLING.md index 70cb7752..f2cbdb76 100644 --- a/INSTALLING.md +++ b/INSTALLING.md @@ -84,16 +84,20 @@ sudo snap connect fixgateway:serial-port snapd:serial-name-here ### Managing auto start By default fixgateway and pyefis will auto start on reboot.
-To disable this edit the config files and change `auto start` to `false` +To disable this edit the config files and change `AUTOSTART` to `false` +``` +enabled: + AUTO_START: true +``` pyefis config: ``` -~/makerplane/pyefis/config/default.yaml +~/makerplane/pyefis/config/preferences.yaml.custom ``` fixgateway config: ``` -~/makerplane/fixgw/config/default.yaml +~/makerplane/fixgw/config/preferences.yaml.custom ``` Below are commands to start/stop pyefis and fixgateway @@ -120,66 +124,50 @@ sudo snap start fixgateway.daemon ### Customizing or using different configuration file Currently it is not possible to change the configuration filename with the auto start feature.
You can edit the default, your changes will not be overwritten when the system is updated.
-In my case I have a `left.yaml` and `right.yaml` file for the left and right screens. I simply created a `default.yaml` symlink to the correct file on each side. +In my case I have a `preferences.yaml.custom.left` and `preferences.yaml.custom.right` file for the left and right screens. I simply created a `preferences.yaml.custom` symlink to the correct file on each side. On the left side I did: ``` cd ~/makerplane/pyefis/config -rm default.yaml -ln -s left.yaml default.yaml -``` - -Now when it auto starts it uses the `left.yaml` config - - - -### Get data needed for Virtual VFR -The virtual VFR feature uses FAA data to display runways and glide slop indicators in the atitude indicator. - -#### Create directory for the CIFP data -``` -mkdir ~/makerplane/pyefis/CIFP/ -cd ~/makerplane/pyefis/CIFP/ +rm preferences.yaml.custom +ln -s preferences.yaml.custom.left preferences.yaml.custom ``` -#### Download the CIFP Data -Visit https://www.faa.gov/air_traffic/flight_info/aeronav/digital_products/cifp/download/ and copy the link to the latest data. +Now when it auto starts it uses the `preferences.yaml.custom.left` config -Download the latest data using the link you copied and unzip it -``` -wget https://aeronav.faa.gov/Upload_313-d/cifp/CIFP_231228.zip -unzip CIFP_231228.zip -``` - -Create the index: -``` -pyefis.makecifpindex FAACIFP18 -``` +If you are starting new or only have a single display just edit the `preferences.yaml.custom` file to make customizations. +
+For more information on how to customize the display see [Screen Builder Documentation](https://github.com/makerplane/pyEfis/blob/master/docs/screenbuilder.md) -When updating in the future just delete the CIFP directory and start over at the beginning of this section +### Data needed for Virtual VFR +The virtual VFR feature uses FAA CIFP data to display runways and glide slop indicators in the atitude indicator.
+When using the snap installation method, outlined above, this data is automatically downloaded and periodically auto updated. ### Important information: NOTE: Upon starting a folder named makerplane will be created in your home folder and default configs copied into that folder.
It will not overwrite any file that currently exists so your customizations are safe. If you would like to get updated default configs you could delete the old configs and then start pyefis and fixgateway.
Directories you need to know: -pyefis configs: ~/makerplane/pyefis/config -fixgateway configs: ~/makerplane/fixgw/config -flight data recorder logs: ~/makerplane/pyefis/fdr + + * pyefis configs: ~/makerplane/pyefis/config + * fixgateway configs: ~/makerplane/fixgw/config + * flight data recorder logs: ~/makerplane/pyefis/fdr Commands: -* stop fixgateway: `sudo snap stop fixgateway.daemon` -* start fixgateway: `sudo snap start fixgateway.daemon` -* stop pyefis: `sudo snap stop pyefis.daemon` -* start pyefis: `sudo snap start pyefis.daemon` -* While stopped you can run them manually to see real time debug output: -* pyefis: `pyefis.server --config-file=$HOME/makerplane/pyefis/config/default.yaml --debug` -* fixgateway: `fixgateway.server --config-file=$HOME/makerplane/fixgw/config/default.yaml --debug` -* fixgateway client: `fixgateway.client` -* CIFP index builder: `pyefis.makecifpindex` - -Installing pyefis and fixgateway updates: + + * stop fixgateway: `sudo snap stop fixgateway.daemon` + * start fixgateway: `sudo snap start fixgateway.daemon` + * stop pyefis: `sudo snap stop pyefis.daemon` + * start pyefis: `sudo snap start pyefis.daemon` + * While stopped you can run them manually to see real time debug output: + * pyefis: `pyefis.server --config-file=$HOME/makerplane/pyefis/config/default.yaml --debug` + * fixgateway: `fixgateway.server --config-file=$HOME/makerplane/fixgw/config/default.yaml --debug` + * fixgateway client: `fixgateway.client` + * running fixgateway in FDR playback mode: `sudo snap start fixgateway.daemon; fixgateway.server --playback-start-time 2024-07-13-18:51:10` + * CIFP index builder: `pyefis.makecifpindex` + +Installing pyefis, FAA CIFP data, and fixgateway updates: ``` snap refresh ``` diff --git a/src/pyefis/config/preferences.yaml b/src/pyefis/config/preferences.yaml index 46045a9d..b761b020 100644 --- a/src/pyefis/config/preferences.yaml +++ b/src/pyefis/config/preferences.yaml @@ -99,6 +99,7 @@ enabled: CYLINDER_3: true CYLINDER_4: true DIMMER: false + BUTTONS: true # enabled/disable navigation buttons # Here you can define what include files are used to render some # portion of the screen so you can customize as needed easily diff --git a/src/pyefis/config/preferences.yaml.custom b/src/pyefis/config/preferences.yaml.custom index b39ece40..b67dc75f 100644 --- a/src/pyefis/config/preferences.yaml.custom +++ b/src/pyefis/config/preferences.yaml.custom @@ -10,6 +10,7 @@ style: segmented: true enabled: + AUTO_START: true VSI_BALL: false VSI_TAPE: true diff --git a/src/pyefis/config/screens/android-left-buttons.yaml b/src/pyefis/config/screens/android-left-buttons.yaml index 3851413c..4100a93d 100644 --- a/src/pyefis/config/screens/android-left-buttons.yaml +++ b/src/pyefis/config/screens/android-left-buttons.yaml @@ -48,9 +48,21 @@ ANDROID: args: - show-full-ui - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: BUTTONS row: 0 column: 14.5 + span: + rows: 70 + columns: 30 + - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: not BUTTONS + row: 0 + column: 0 + span: + rows: 70 + columns: 44.5 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 0 - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml diff --git a/src/pyefis/config/screens/android.yaml b/src/pyefis/config/screens/android.yaml index fb1de6ab..6a1ed46e 100644 --- a/src/pyefis/config/screens/android.yaml +++ b/src/pyefis/config/screens/android.yaml @@ -48,9 +48,21 @@ ANDROID: args: - show-full-ui - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: BUTTONS row: 0 column: 155 + span: + columns: 30 + rows: 70 + - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: not BUTTONS + row: 0 + column: 155 + span: + columns: 45 + rows: 70 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 185.5 - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml diff --git a/src/pyefis/config/screens/ems-left-buttons.yaml b/src/pyefis/config/screens/ems-left-buttons.yaml index cfafd956..6d8cccbc 100644 --- a/src/pyefis/config/screens/ems-left-buttons.yaml +++ b/src/pyefis/config/screens/ems-left-buttons.yaml @@ -1,7 +1,5 @@ -EMS: - include: - - screens/virtualvfr_db.yaml - - HMI_ENCODER_BUTTONS +EMS2: + include: HMI_ENCODER_BUTTONS module: pyefis.screens.screenbuilder title: Engine Management New layout: @@ -12,161 +10,152 @@ EMS: - type: value_text disabled: DEMO_TESTING_TEXT row: 100 - column: 0 + column: 95 span: rows: 10 - columns: 80 + columns: 140 options: dbkey: MAVMSG font_percent: 0.9 - - type: include,includes/ahrs/virtual_vfr.yaml - row: 0 - column: 75 - span: - rows: 70 - columns: 125 - - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml - row: 0 - column: 44.5 - - type: include,includes/arcs/vertical/four_high_one_state_preferences_ARC9-12.yaml - row: 0 - column: 14.5 - - type: include,BUTTON_GROUP1 - row: 0 - column: 0 - - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml - row: 70 - column: 155 - - type: include,includes/bars/vertical/4_CHT.yaml - row: 70 - column: 123 - - type: include,includes/bars/vertical/4_EGT.yaml - row: 70 - column: 91 - type: ganged_button - #disabled: true - gang_type: vertical - row: 74 - column: 80 - #move: - # shrink: 25 - # justify: top + gang_type: horizontal + row: 103 + column: 50 +# move: +# shrink: 25 +# justify: top span: - rows: 30 - columns: 10 + rows: 4 + columns: 45 groups: - name: Buttons - gap: 12 - common_options: - font_mask: Normalize + gap: 4 instruments: - options: config: buttons/egt-Normalize.yaml - encoder_order: 600031 - options: config: buttons/egt-Lean.yaml - encoder_order: 600032 - options: config: buttons/egt-Peak.yaml - encoder_order: 600033 - options: config: buttons/egt-reset-peak.yaml - encoder_order: 600034 + - + type: arc_gauge + row: 0 + column: 15 + span: + rows: 45 + columns: 70 + preferences: ARC13 + - + type: arc_gauge + row: 0 + column: 86 + span: + rows: 45 + columns: 70 + preferences: ARC14 + - + type: ganged_horizontal_bar_gauge + gang_type: vertical + row: 0 + column: 157 + span: + rows: 50 + columns: 40 + groups: + - name: Oil + instruments: + - + preferences: BAR7 + - + preferences: BAR8 + - + type: static_text + row: 45 + column: 18 + span: + columns: 21 + rows: 5 + options: + text: Power + - + type: static_text + row: 45 + column: 67 + span: + columns: 12 + rows: 5 + options: + text: EGT + - + type: static_text + row: 45 + column: 124 + span: + columns: 12 + rows: 5 + options: + text: CHT + - + type: static_text + row: 45 + column: 174 + span: + columns: 14 + rows: 5 + options: + text: FUEL - type: ganged_vertical_bar_gauge - disabled: DEMO_TESTING_TEXT gang_type: horizontal - row: 70 - column: 0 + ratio: 0.2 + row: 51 + column: 15 span: - rows: 30 - columns: 80 + rows: 50 + columns: 186 groups: - - name: RPM - gap: 0 + - name: Power instruments: - - preferences: BAR28 + preferences: BAR9 - - preferences: BAR29 - - name: Engine - gap: 0 + preferences: BAR10 + - name: EGT instruments: - - preferences: BAR22 - - - preferences: BAR23 + preferences: BAR11 - - preferences: BAR24 + preferences: BAR12 - - preferences: BAR25 + preferences: BAR13 - - preferences: BAR26 - - - name: Temps - gap: 0 + preferences: BAR14 + - name: CHT instruments: - - preferences: BAR27 - - - type: ganged_vertical_bar_gauge - disabled: not DEMO_TESTING_TEXT - ratio: 0.2 - gang_type: horizontal - row: 72 - column: 0 - span: - rows: 38 - columns: 80 - groups: - - name: RPM - gap: 0 - common_options: - bar_width_percent: 0.5 - line_width_percent: 0.7 - text_gap: 8 - small_font_percent: 0.060 - big_font_percent: 0.085 - instruments: + preferences: BAR15 - - preferences: BAR28 - - - preferences: BAR29 - - name: Engine - common_options: - bar_width_percent: 0.5 - line_width_percent: 0.7 - text_gap: 8 - small_font_percent: 0.060 - big_font_percent: 0.085 - gap: 0 - instruments: + preferences: BAR16 - - preferences: BAR22 + preferences: BAR17 - - preferences: BAR23 + preferences: BAR18 + - name: FUEL + instruments: - - preferences: BAR24 + preferences: BAR19 - - preferences: BAR25 + preferences: BAR20 - - preferences: BAR26 + preferences: BAR21 - - name: Temps - common_options: - bar_width_percent: 0.5 - line_width_percent: 0.7 - text_gap: 8 - small_font_percent: 0.060 - big_font_percent: 0.085 - gap: 0 - instruments: - gap: 0 - instruments: - - - preferences: BAR27 + - type: include,BUTTON_GROUP1 + row: 0 + column: 0 diff --git a/src/pyefis/config/screens/ems.yaml b/src/pyefis/config/screens/ems.yaml index 9b8b9d57..1aa993a9 100644 --- a/src/pyefis/config/screens/ems.yaml +++ b/src/pyefis/config/screens/ems.yaml @@ -26,12 +26,35 @@ EMS: rows: 70 columns: 125 - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: BUTTONS row: 0 column: 155 + span: + columns: 30 + rows: 70 + - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: not BUTTONS + row: 0 + column: 162.5 + span: + columns: 37.5 + rows: 70 - type: include,includes/arcs/vertical/four_high_one_state_preferences_ARC9-12.yaml + disabled: BUTTONS row: 0 column: 125 + span: + columns: 30 + rows: 70 + - type: include,includes/arcs/vertical/four_high_one_state_preferences_ARC9-12.yaml + disabled: not BUTTONS + row: 0 + column: 125 + span: + columns: 37.5 + rows: 70 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 185.5 - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml diff --git a/src/pyefis/config/screens/ems2-left-buttons.yaml b/src/pyefis/config/screens/ems2-left-buttons.yaml index 6d8cccbc..b916b600 100644 --- a/src/pyefis/config/screens/ems2-left-buttons.yaml +++ b/src/pyefis/config/screens/ems2-left-buttons.yaml @@ -45,6 +45,7 @@ EMS2: config: buttons/egt-reset-peak.yaml - type: arc_gauge + disabled: BUTTONS row: 0 column: 15 span: @@ -53,14 +54,34 @@ EMS2: preferences: ARC13 - type: arc_gauge + disabled: not BUTTONS + row: 0 + column: 0 + span: + rows: 45 + columns: 70 + preferences: ARC13 + - + type: arc_gauge + disabled: BUTTONS row: 0 column: 86 span: rows: 45 columns: 70 preferences: ARC14 + - + type: arc_gauge + disabled: not BUTTONS + row: 0 + column: 71 + span: + rows: 45 + columns: 70 + preferences: ARC14 - type: ganged_horizontal_bar_gauge + disabled: BUTTONS gang_type: vertical row: 0 column: 157 @@ -74,6 +95,22 @@ EMS2: preferences: BAR7 - preferences: BAR8 + - + type: ganged_horizontal_bar_gauge + disabled: not BUTTONS + gang_type: vertical + row: 0 + column: 142 + span: + rows: 50 + columns: 55 + groups: + - name: Oil + instruments: + - + preferences: BAR7 + - + preferences: BAR8 - type: static_text row: 45 @@ -112,6 +149,7 @@ EMS2: text: FUEL - type: ganged_vertical_bar_gauge + disabled: BUTTONS gang_type: horizontal ratio: 0.2 row: 51 @@ -154,8 +192,54 @@ EMS2: preferences: BAR20 - preferences: BAR21 + - + type: ganged_vertical_bar_gauge + disabled: not BUTTONS + gang_type: horizontal + ratio: 0.2 + row: 51 + column: 0 + span: + rows: 50 + columns: 200 + groups: + - name: Power + instruments: + - + preferences: BAR9 + - + preferences: BAR10 + - name: EGT + instruments: + - + preferences: BAR11 + - + preferences: BAR12 + - + preferences: BAR13 + - + preferences: BAR14 + - name: CHT + instruments: + - + preferences: BAR15 + - + preferences: BAR16 + - + preferences: BAR17 + - + preferences: BAR18 + - name: FUEL + instruments: + - + preferences: BAR19 + - + preferences: BAR20 + - + preferences: BAR21 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 0 diff --git a/src/pyefis/config/screens/ems2.yaml b/src/pyefis/config/screens/ems2.yaml index 373f8687..8a989636 100644 --- a/src/pyefis/config/screens/ems2.yaml +++ b/src/pyefis/config/screens/ems2.yaml @@ -61,6 +61,7 @@ EMS2: preferences: ARC14 - type: ganged_horizontal_bar_gauge + disabled: BUTTONS gang_type: vertical row: 0 column: 142 @@ -74,6 +75,23 @@ EMS2: preferences: BAR7 - preferences: BAR8 + - + type: ganged_horizontal_bar_gauge + disabled: not BUTTONS + gang_type: vertical + row: 0 + column: 142 + span: + rows: 50 + columns: 55 + groups: + - name: Oil + instruments: + - + preferences: BAR7 + - + preferences: BAR8 + - type: static_text row: 45 @@ -112,6 +130,7 @@ EMS2: text: FUEL - type: ganged_vertical_bar_gauge + disabled: BUTTONS gang_type: horizontal ratio: 0.2 row: 51 @@ -154,8 +173,54 @@ EMS2: preferences: BAR20 - preferences: BAR21 + - + type: ganged_vertical_bar_gauge + disabled: not BUTTONS + gang_type: horizontal + ratio: 0.2 + row: 51 + column: 0 + span: + rows: 50 + columns: 200 + groups: + - name: Power + instruments: + - + preferences: BAR9 + - + preferences: BAR10 + - name: EGT + instruments: + - + preferences: BAR11 + - + preferences: BAR12 + - + preferences: BAR13 + - + preferences: BAR14 + - name: CHT + instruments: + - + preferences: BAR15 + - + preferences: BAR16 + - + preferences: BAR17 + - + preferences: BAR18 + - name: FUEL + instruments: + - + preferences: BAR19 + - + preferences: BAR20 + - + preferences: BAR21 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 185.5 diff --git a/src/pyefis/config/screens/pfd-left-buttons.yaml b/src/pyefis/config/screens/pfd-left-buttons.yaml index 042a01e1..7413d744 100644 --- a/src/pyefis/config/screens/pfd-left-buttons.yaml +++ b/src/pyefis/config/screens/pfd-left-buttons.yaml @@ -18,9 +18,21 @@ PFD: row: 0 column: 45 - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: BUTTONS row: 0 column: 14.5 + span: + rows: 70 + columns: 30 + - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: not BUTTONS + row: 0 + column: 0 + span: + rows: 70 + columns: 44.5 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 0 - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml diff --git a/src/pyefis/config/screens/pfd.yaml b/src/pyefis/config/screens/pfd.yaml index e29276c5..6d1d61a7 100644 --- a/src/pyefis/config/screens/pfd.yaml +++ b/src/pyefis/config/screens/pfd.yaml @@ -18,9 +18,21 @@ PFD: row: 0 column: 0 - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: BUTTONS row: 0 column: 155 + span: + columns: 30 + rows: 70 + - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: not BUTTONS + row: 0 + column: 155 + span: + columns: 45 + rows: 70 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 185.5 - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml diff --git a/src/pyefis/config/screens/radio-left-buttons.yaml b/src/pyefis/config/screens/radio-left-buttons.yaml index a7ec7c6f..a1cad8d2 100644 --- a/src/pyefis/config/screens/radio-left-buttons.yaml +++ b/src/pyefis/config/screens/radio-left-buttons.yaml @@ -30,12 +30,35 @@ RADIO: rows: 70 columns: 125 - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: BUTTONS row: 0 column: 44.5 + span: + rows: 70 + columns: 30 + - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: not BUTTONS + row: 0 + column: 37.5 + span: + rows: 70 + columns: 37 - type: include,includes/arcs/vertical/four_high_one_state_preferences_ARC9-12.yaml + disabled: BUTTONS row: 0 column: 14.5 + span: + rows: 70 + columns: 30 + - type: include,includes/arcs/vertical/four_high_one_state_preferences_ARC9-12.yaml + disabled: not BUTTONS + row: 0 + column: 0 + span: + rows: 70 + columns: 37 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 0 - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml diff --git a/src/pyefis/config/screens/radio.yaml b/src/pyefis/config/screens/radio.yaml index db2df3fc..3ad4a306 100644 --- a/src/pyefis/config/screens/radio.yaml +++ b/src/pyefis/config/screens/radio.yaml @@ -30,12 +30,35 @@ RADIO: rows: 70 columns: 125 - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: BUTTONS row: 0 column: 155 + span: + columns: 30 + rows: 70 + - type: include,includes/arcs/vertical/four_high_two_states_preferences_ARC1-8.yaml + disabled: not BUTTONS + row: 0 + column: 162.5 + span: + columns: 37.5 + rows: 70 - type: include,includes/arcs/vertical/four_high_one_state_preferences_ARC9-12.yaml + disabled: BUTTONS row: 0 column: 125 + span: + columns: 30 + rows: 70 + - type: include,includes/arcs/vertical/four_high_one_state_preferences_ARC9-12.yaml + disabled: not BUTTONS + row: 0 + column: 125 + span: + columns: 37.5 + rows: 70 - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 185.5 - type: include,includes/bars/vertical/six_wide_preferences_BAR1-6.yaml diff --git a/src/pyefis/config/screens/sixpack-left-buttons.yaml b/src/pyefis/config/screens/sixpack-left-buttons.yaml index 7e84f888..98351bc4 100644 --- a/src/pyefis/config/screens/sixpack-left-buttons.yaml +++ b/src/pyefis/config/screens/sixpack-left-buttons.yaml @@ -9,6 +9,7 @@ SIXPACK: draw_grid: false instruments: - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 0 - diff --git a/src/pyefis/config/screens/sixpack.yaml b/src/pyefis/config/screens/sixpack.yaml index 2487811b..2cc4ed7f 100644 --- a/src/pyefis/config/screens/sixpack.yaml +++ b/src/pyefis/config/screens/sixpack.yaml @@ -9,6 +9,7 @@ SIXPACK: draw_grid: false instruments: - type: include,BUTTON_GROUP1 + disabled: BUTTONS row: 0 column: 185.5 -