# KVM Switch: Mac ↔ Nobara Simple monitor switching via DDC/CI. Peripherals switched manually via Easy-Switch button. ## Hardware - **Monitor:** Dell U3821DW (USB-C to Mac, HDMI 2 to Nobara) - **Keyboard:** Logitech MX Keys S - **Mouse:** Logitech MX Master 4 - **Bolt #1:** Connected to Nobara (Channel 2) - **Bolt #2:** Connected to Mac via monitor USB hub (Channel 3) ## Channel Setup | Channel | Connection | Computer | |---------|------------|----------| | 2 | Bolt #1 | Nobara | | 3 | Bolt #2 | Mac | ## Mac Setup ### Install m1ddc ```bash brew install m1ddc ``` ### Copy script ```bash mkdir -p ~/scripts cp to_nobara.sh ~/scripts/ chmod +x ~/scripts/to_nobara.sh ``` ### Usage ```bash ~/scripts/to_nobara.sh # Then press Easy-Switch on keyboard/mouse to Channel 2 ``` ## Nobara Setup ### Install ddcutil ```bash sudo dnf install ddcutil sudo usermod -aG i2c $USER # Reboot required ``` ### Copy script ```bash mkdir -p ~/scripts cp to_mac.sh ~/scripts/ chmod +x ~/scripts/to_mac.sh ``` ### Set keyboard shortcut (GNOME) ```bash # Add custom shortcut for Ctrl+Shift+Up gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/kvm/']" gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/kvm/ name 'KVM to Mac' gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/kvm/ command '/home/$USER/scripts/to_mac.sh' gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/kvm/ binding 'Up' ``` ### Usage ```bash ~/scripts/to_mac.sh # Then press Easy-Switch on keyboard/mouse to Channel 3 ``` ## DDC Input Codes (Dell U3821DW) | Input | Code | |-------|------| | HDMI 2 | 18 | | USB-C | 27 | ## Troubleshooting ### Monitor doesn't switch - Enable DDC/CI: Monitor Menu → Others → DDC/CI → On - Linux: Ensure user in i2c group, reboot after adding