Commit Graph
100 Commits
Author SHA1 Message Date
itsmattkc ff354e4176 docker: add convenience scripts for maintainers 2026-08-23 16:57:43 -07:00
itsmattkc 9744e7de23 pipe: use new wpa_supplicant fork (updated to 2.12!) 2026-08-23 16:55:13 -07:00
MattKC 81992289f0 Update README.md 2026-08-23 09:52:53 -07:00
itsmattkc 066aefdfa5 pipe: use scan_cur_freq
When associated, only scan the currently associated frequency. May help with connectivity issues.
2026-08-07 12:02:56 -07:00
itsmattkc 2c0cd0104c pipe: disable power saving
Some adapters utilize power saving which can cause connectivity issues
2026-08-07 10:11:27 -07:00
itsmattkc 7cd43591db gui: allow auto-connecting to wii u
Fixes #454
2026-08-06 14:58:20 -07:00
MattKC f1ff2eab44 Update README.md 2026-08-05 12:55:54 -07:00
MattKC 4d08ee267c Update README.md 2026-08-05 12:54:23 -07:00
itsmattkc ff486be0ab ci: fix windows and android builds (hopefully) 2026-08-04 12:19:42 -07:00
itsmattkc 577405a92c ci: try pushing images to registry instead of cache when done 2026-08-04 10:00:07 -07:00
itsmattkc 025f7ae77e docker/buildroot: fix bug where DRM was disabled 2026-08-03 17:31:14 -07:00
itsmattkc c008b9baf3 buildroot: add more 5GHz SoftMAC Wi-Fi drivers
Includes lwfinger/rtw88 and morrownr/rtw89
2026-08-02 01:25:43 -07:00
itsmattkc c4572178b9 gui: define DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP if not defined 2026-08-01 12:26:10 -07:00
itsmattkc 7aebe8f7e8 gui: fix keyboard control mapping 2026-08-01 09:06:55 -07:00
itsmattkc 063e3cba67 gui: add support for v4l2request hardware decoding (orange pi) 2026-07-29 21:33:50 -07:00
itsmattkc dc28618301 buildroot: fix broken patch 2026-07-29 16:50:41 -07:00
itsmattkc f2e354bfc7 ci/buildroot/docker: fix bug and introduce 2w build too 2026-07-29 13:34:23 -07:00
itsmattkc 463aed33bf ci/buildroot/docker: build orange pi zero 3 image 2026-07-29 13:08:22 -07:00
itsmattkc 4482b77b83 gui: improve power state handler
Fixes bug where power state would be retrieved every frame, causing unnecessarily high power usage.

Also, don't send "unknown" power state so the Wii U doesn't nag the user about it.
2026-07-22 08:52:01 -07:00
itsmattkc da70a4fca4 buildroot: improvements to rpi builds 2026-07-21 16:56:00 -07:00
itsmattkc 934494c0ad gui: revert "h264" force
I thought this was necessary to force software decoding, but actually my Pi buildroot image just lacked the "h264" FFmpeg decoder component
2026-07-10 15:35:06 -07:00
itsmattkc a989f233fd Create latencytest.ts 2026-07-10 15:34:08 -07:00
itsmattkc 5e5b674ba7 gui: software decoding improvements 2026-07-10 10:26:50 -07:00
itsmattkc 724f80bd87 buildroot: add options for building pipe or gui 2026-06-18 00:01:17 -07:00
itsmattkc 91ab3a0ccd buildroot: for switch build, save log to config dir 2026-06-04 08:59:35 -07:00
itsmattkc 853ffca471 docker: use correct mkimage path 2026-05-08 08:19:38 -07:00
itsmattkc 4b6b0e65c5 buildroot: use newer boot script for switch
Might be related to #386
2026-05-08 08:03:55 -07:00
itsmattkc c516647bec gui: improve menus 2026-05-07 11:06:36 -07:00
itsmattkc f956b9c356 Squashed commit of the following:
commit 7cb57b109f0eeade821d080a31975631cc8d2e56
Merge: 4fd52e4 08a3466
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed May 6 18:10:14 2026 -0700

    Merge branch 'master' into new-ci

commit 4fd52e44530f820d89e618e68181f40f4bc54c6c
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed May 6 18:09:59 2026 -0700

    docker: update for new system

commit bd055a288e8c536ac606655096b831256a0a16b4
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed May 6 18:08:55 2026 -0700

    Update platform_nx_imu.c

commit f8e4d62e84a9efcde2b0aa0f4c3e6f855f65f458
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed May 6 17:39:05 2026 -0700

    gui: fix inverted gyroscope axis with nintendo switch

commit f679b7cd4ce75c0343f8da5f4e3810346c127f09
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed May 6 16:03:55 2026 -0700

    ci: fix file path

commit 5b66a246ceded84267a03e960e2ec30b76f1f563
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed May 6 16:02:12 2026 -0700

    ci: keep docker but incorporate buildroot build

commit 882a18aba5c41a1b00750f9e1e3d5b2f012bb8ba
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed May 6 14:01:16 2026 -0700

    ci: sign APK in CI rather than docker

    Simplifies process and improves security

commit a8d8567b1d3fc7f2cf86dc90ab316bda2beac4bb
Author: MattKC <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue May 5 13:29:45 2026 -0700

    ci: stupid cache action can't handle a relative path

commit 1b248a9a3bf6ee8158e1ac3dda432600bace528a
Author: MattKC <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue May 5 12:17:24 2026 -0700

    ci: actually provide path to cache

commit 01f4f4055665638e28a76cd916b4fd7f2678b49d
Author: MattKC <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue May 5 11:00:33 2026 -0700

    Update build.yml

commit 83b1cefc156e1967f1eacfb53cdaf010f3ff7e11
Author: MattKC <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue May 5 10:58:46 2026 -0700

    Rename vanilla_nx_defconfig to vanilla_nintendoswitch_defconfig

commit ef8899d88b403606cf6e4992037ee12d000f5d75
Author: MattKC <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue May 5 10:58:05 2026 -0700

    Update build.yml [skip ci]

commit 1e3d9a3f54a49c0892aa6c3968a1206792f13008
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue May 5 09:55:25 2026 -0700

    ci: found em

commit 23934ced2dc6555f3676b1078ed36475e9bd6a20
Author: MattKC <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue May 5 08:57:43 2026 -0700

    ci: just list all the files so i can see where the image ended up

commit 1d597cd34b94ab8f14e44bac6559da3904743559
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Mon May 4 17:54:22 2026 -0700

    ci: maybe fix path

commit 4bdcae22c5d9ff1fd863f7447c5d346a632a3667
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Mon May 4 16:57:18 2026 -0700

    ci: fix path

commit 2be8b79c32ed42fdc0fbf12e012300e0b44501c8
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Mon May 4 16:55:49 2026 -0700

    ci: fix missing defconfig

commit fe8990e2abd5b38839235b48a3870cfbbe0bdeb6
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Mon May 4 15:38:44 2026 -0700

    ci: fix path

commit 8e19c7264297b5df37a127da151fe2d85767006c
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Mon May 4 15:19:05 2026 -0700

    ci: fix path

commit 9a44bfa3cd36db8868b3f011c9af27e8729d5f93
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Mon May 4 15:01:20 2026 -0700

    ci: split buildroot off
2026-05-06 21:16:17 -07:00
itsmattkc dab6f4ee56 buildroot: fix missing openssl dep 2026-05-06 15:10:03 -07:00
itsmattkc 23345f7646 gui: hopefully fix nintendo switch gyros? 2026-05-06 13:20:45 -07:00
MattKC 0ff08205ee docker: revert linux build to debian bookworm 2026-05-05 11:18:21 -07:00
MattKC ccc7ddf57f ui: restore region setting 2026-05-05 09:23:43 -07:00
itsmattkc 9f25935292 ci: fix mistake 2026-05-04 09:23:02 -07:00
itsmattkc 8f730cef7b ci: try using docker/build-push-action to cache 2026-05-04 09:06:34 -07:00
itsmattkc 54e5451549 buildroot: fix incorrect ifeq 2026-04-29 21:52:16 -07:00
itsmattkc 5cf53b5bd4 ui: get accel/gyro working on switch build 2026-04-29 15:24:58 -07:00
itsmattkc 940f5ceadf ui: fix audio issue that specifically affected switch distro 2026-04-29 02:07:51 -07:00
itsmattkc b6cdb1abc0 gui: clear predefined console in nintendo switch config 2026-04-26 09:30:15 -07:00
itsmattkc 2d9efc2957 gui: add setting to disable hardware decoding 2026-04-24 23:56:32 -07:00
itsmattkc 263e3f9383 cmake: simplified FindLibNL 2026-04-24 23:40:41 -07:00
itsmattkc 49a05a2be3 ci/docker: add nintendo switch buildroot image 2026-04-24 23:39:45 -07:00
itsmattkc 9c44c4e4a8 gui: more nintendo switch improvements 2026-04-24 09:51:29 -07:00
itsmattkc 03a6af2230 gui: improvements for nintendo switch 2026-04-24 09:49:53 -07:00
itsmattkc 90a2199645 gui: fixed pipe management bug 2026-04-24 09:48:10 -07:00
itsmattkc 1fe20344e4 gui: improved settings menu layout logic 2026-04-24 09:47:53 -07:00
itsmattkc a74d645d03 gui: update old comment 2026-04-08 10:43:58 -07:00
itsmattkc 3385180831 cmake: only enable polkit on linux
Other platforms will need something else (if even applicable)
2026-04-08 10:43:58 -07:00
itsmattkc 07292fe862 buildroot: more work for nintendo switch [skip ci] 2026-03-20 12:45:47 -07:00
itsmattkc 3ebff34a65 cmake/buildroot: add options for DRM and VAAPI 2026-03-20 12:43:28 -07:00
itsmattkc 6e52b5cfa0 ui: add config option for fastdrm 2026-03-20 12:39:50 -07:00
itsmattkc c6e5461c68 ui: minor improvements to EGL detection 2026-03-20 12:38:36 -07:00
itsmattkc df4345cfe6 ui: make "fast DRM mode" an option disabled by default 2026-03-20 12:37:40 -07:00
itsmattkc e5c9be8847 buildroot: improve defconfigs for pi zero/zero2 2026-03-18 17:12:46 -07:00
itsmattkc d9f16d4802 cmake: move most gui code into a library so it can be re-used by tests
This may break something, but we'll see what the CI says.
2026-03-18 17:12:46 -07:00
itsmattkc d925c70d74 buildroot: set boot to quiet 2026-03-18 17:12:46 -07:00
itsmattkc 04c18c7513 docker: fix android signing issue 2026-02-21 16:54:31 -08:00
itsmattkc 666ec618ae lib: removed vestigial function 2026-02-19 14:06:17 -08:00
itsmattkc c862da28f0 pipe: call rfkill immediately 2026-02-19 13:55:10 -08:00
itsmattkc b05ae8b3ab lib: fixed input packet on windows 2026-02-19 13:53:08 -08:00
itsmattkc 57b4e71a1f pipe: ensure "READY" is the first thing to print 2026-02-17 16:57:11 -08:00
itsmattkc 3986a6d6bd Squashed commit of the following:
commit 4ac92fd946
Author: MattKC <34096995+itsmattkc@users.noreply.github.com>
Date:   Mon Feb 16 16:50:00 2026 -0800

    Call "rfkill unblock wlan" as part of wpa_supplicant initialization
2026-02-16 17:56:54 -08:00
itsmattkc 45a2dd2363 docker: on unsigned android builds, copy the apk into place 2026-02-16 17:55:39 -08:00
itsmattkc b3f092b661 gui: start passive animation for "key_bindings_more" too 2026-02-16 00:27:12 -08:00
itsmattkc eff55c0d20 gui: close pipe connection if pipe reports other than READY 2026-02-16 00:13:07 -08:00
itsmattkc 0519c7b151 docker: skip android signing if no key present 2026-02-15 23:47:44 -08:00
itsmattkc 1bec364c35 gui: add config entry for recording/screenshot dir
Fixes #339
2026-02-15 09:41:04 -08:00
itsmattkc a161a2b9a4 pipe: fix regression where stack memory becomes freed while threads are using it 2026-02-15 09:28:50 -08:00
itsmattkc f9e7318952 gui: add setting for showing cursor in full screen
Fixes #342, though I guess we should add a gui option at some point.
2026-02-13 13:37:57 -08:00
itsmattkc c62bbac9b0 cmake: fix vendored ffmpeg nvdec support 2026-01-16 13:11:49 -08:00
itsmattkc eb808d64ce docker/cmake: should fix builds 2026-01-16 10:53:23 -08:00
itsmattkc 07e04a8791 cmake: fix hardware decoders, probably 2026-01-16 10:19:33 -08:00
itsmattkc cca4c50e8f cmake: simpler vendored ffmpeg configure args 2026-01-16 09:26:12 -08:00
itsmattkc 8d311381b0 cmake: link with vdpau if cuda is enabled 2026-01-15 12:29:30 -08:00
itsmattkc 8cd2d1dbfb docker: add non-free debian sources for CUDA libraries 2026-01-15 11:32:34 -08:00
itsmattkc 309b290264 docker: add CUDA toolkit to linux builds 2026-01-15 08:59:47 -08:00
itsmattkc 26ff1d0a84 ui: if no CUDA path to display, don't use CUDA
Even if the user has an NVIDIA card, if Vanilla hasn't been compiled with CUDA support it has no way of getting the frame onto the screen
2026-01-15 08:59:38 -08:00
itsmattkc 1e184bd62f Squashed commit of the following:
commit f65e382f41f1b1976b92c64707d6f427ac39a7d6
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Thu Jan 15 08:21:28 2026 -0800

    finished nvdec support

commit de1767d4eadd139a2d0a76bef6d8c34e81f9e4fe
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed Jan 14 19:49:17 2026 -0800

    begin nvdec impl
2026-01-15 08:21:45 -08:00
itsmattkc 9aecca7943 ui: improve hardware decoder detection 2026-01-14 19:08:41 -08:00
itsmattkc 95b705a405 ui: more robust checks for EGL availability
SDL2 prefers GLX over EGL, however we require EGL to present VAAPI decoded frames to the screen, so we set a flag to force it over to EGL.

However some hardware (notably NVIDIA GPUs) do not provide EGL pathways. We must detect this and un-force EGL if so. However the un-forcing requires a little more work than expected. This code should work now.
2026-01-14 18:41:12 -08:00
itsmattkc fde6e0d3f2 ui: add another audio buffer
Will reduce audio crackling at the expense of some latency
2026-01-14 16:15:30 -08:00
itsmattkc edff4bb1c0 ui: use "Wii U" only for name of first synced console
Most users will only have a single Wii U, and it's kinda ugly for it to be called "Wii U 1". Default to "Wii U" for the first synced console, and subsequent consoles will be "Wii U 2", "Wii U 3", etc.
2026-01-14 16:15:14 -08:00
itsmattkc 8e2f86712a ci: missed another thing 2026-01-01 13:29:24 -08:00
itsmattkc d9061be0ed ci: missed some changes 2025-12-31 00:43:01 -08:00
itsmattkc c808e834de ci/docker: add pi zero 2w build 2025-12-30 15:52:38 -08:00
itsmattkc f50df6290d pipe/gui: set unmanaged at app-level rather than connection-level
Rather than setting NetworkManager to "unmanage" the Wi-Fi interface every sync/connection, do it once when the pipe starts. This way, there won't be any awkward shuffling as the pipe goes from syncing to connecting.
2025-12-30 10:36:31 -08:00
itsmattkc e5f09b092a lib: create listen sockets AFTER connection
This may fix connectivity issues where the internal kernel device changes after it's unmanaged in NetworkManager and/or the backend is changed from iwd to wpa_supplicant
2025-12-30 10:16:32 -08:00
itsmattkc c30d889f0c pipe: fix last remaining CPU thrasher 2025-12-30 02:56:00 -08:00
itsmattkc 590a163ef2 gui: default fullscreen on
Once again, while not necessarily ideal for desktop usage, all of our main touch-based targets will benefit from this
2025-12-30 02:29:25 -08:00
itsmattkc 09c6de3b7e gui: greatly improve and simplify audio output
Significantly reduces audio latency
2025-12-30 02:07:06 -08:00
itsmattkc a7d9c626f2 gui: in main menu, create console buttons first
Fixes #295
2025-12-30 02:07:06 -08:00
itsmattkc 969db197fd lib: add extra debugging line
May come in handy?
2025-12-30 02:07:06 -08:00
itsmattkc 72380441c5 gui: use a combination of the Steam Virtual Gamepad and Steam Deck controllers on the Steam Deck
The Steam Deck provides a "virtual gamepad" that it expects games to use, however the "virtual gamepad" doesn't provide direct access to the Steam Deck's gyroscopes. We can bypass it, but then Steam Deck users lose usability features like remapping (and Vanilla will continue to receive inputs in the background, which are usually cut off on the virtual gamepad, which can cause accidental clicks). To try to get the best of both worlds, we use a hybrid approach where we use the virtual gamepad for everything EXCEPT the gyros, and then use the direct hardware access JUST sfor the gyros.
2025-12-29 16:03:17 -08:00
itsmattkc 2a0045b4f6 gui: return to settings after connection, but retain callback functionality 2025-12-29 14:12:13 -08:00
itsmattkc 53384ee384 Revert "gui: on connection select, return to settings"
This reverts commit b116d6cabc.
2025-12-29 14:08:48 -08:00
itsmattkc 1f57c5262d gui: null check polkit subject
Not sure why this would happen but probably worth doing either way
2025-12-29 12:32:13 -08:00
itsmattkc fea81782a3 pipe: try to detect if DHCP failed due to disconnection 2025-12-29 12:04:13 -08:00
itsmattkc 7f793e8c52 gui: fix regression regarding disconnects 2025-12-29 10:57:23 -08:00
itsmattkc b11a9b2c16 gui: in settings, rename "Gamepad" to "Controls" 2025-12-29 10:56:34 -08:00
itsmattkc dfb31f430d pipe: don't use fprintf for string without format [skip ci] 2025-12-29 10:44:54 -08:00