When going back to Horizons from Odyssey, your keybinds are (usually) safe, just disabled. Head to control settings in game and re-select the custom preset you made and all your keybinds will be back.Yes, you have to do this every time you log into Horizons after logging into Odyssey.No, Odyssey presets don't get reset when going from Horizons to Odyssey.
EDIT: as u/cyphax55 pointed out,
They're safe because they're in a different file. It keeps your Odyssey keybinds in Custom.4.0.binds, for Horizons in Custom.30.binds. 🙂
Unfortunately, it doesn't change the same keybinding in both versions. I just set a button for setting speed to zero in Odyssey, but the same binding in Horizons isn't being set.
If you want your keybindings safe, backup the %LocalAppData%Frontier DevelopmentsElite DangerousOptionsBindings
folder if you change something in your bindings. 🙂You can also copy the Custom.3.0.binds and 4.0 files to something different (and change the in-game name on the second line in the PresetName attribute in the same file) and keep different custom profiles for different (combinations of) controllers.
Source: https://www.reddit.com/r/EliteDangerous/comments/ny4s0u/psa_about_keybinds/