Linux & Main
Hi! Long time without updates from me.
That's because sometimes changes need a lot of time. This time i've moved to latest Kernel version and latest Bluetooth stack. It involved a lot of research, find some solutions, made many tests...
- Latest Kernel version v5.13.12 with all MiSTer fixes and tweaks. This time kernel is based on vanilla kernel from Torvalds (not socfpga branch as before).
- exFAT is now part of main kernel branch, but unfortunately it doesn't support symlinks. So i've ported good old exFAT version with symlinks support as it's quite common on MiSTer.
- Latest BlueZ version (v5.60 at time of porting) which provides BLE support and brings many fixes.
- More tested BT4/5 USB dongles. Now Realtek BT5 dongles (quite common today) with loadable firmware are supported. Tested on ASUS USB-BT500, Edimax BT8500, Avantree DG45, many CSR4 dongles, some BCM20702 dongles. Both BT4 and BT5 types of dongles support BLE.
- More modern WiFi 802.11ac dongles are supported. Currently supported AC chips: RTL8812AU/RTL8821AU/RTL8812BU/RTL8822BU/RTL8821CU. Tested: ASUS AC53, TPLink T2U-nano, DLink DWA-171.
- Supported some combo WiFi+BT dongles. Tested TOTOLink A600UB and noname black dongle with green text "WIFi5 BT+AC600 Driver-free". Both are using RTL8821CU chip.
- New BT pairing script (pairing dialog in Main). Since BlueZ 5.x uses very different interfaces, a whole pairing script has rewritten. Now it includes several important additions: 1) Support for BLE input devices pairing. 2) Dialog doesn't finish. It keeps waiting for new devices till user press "finish" (or short press of OSD button on I/O board). 3) You can delete all pairings (sometimes it's required to get successful pair) by pressing backspace key (or long press of OSD button on I/O board).
- Support for BLE input devices. Tested on Flydigi Vader 2 and iPega PG-9191. One important difference from classic BT devices is BLE device connects almost instantly. So BLE gamepad works like RF - you press the button and it's connected instantly. BLE devices usually can be paired with several hosts. So if you have several MiSTers then you can pair to *maybe* all of them.
- Both WiFi and BT dongles now fully plug-and-play, so you can insert/remove them at any time and they are ready after plug (However if you plug different WiFi dongles without rebooting, then probably only first one will be able to re-initialize - it's related to how linux enumerates WLAN devices). Some BT dongles get stuck on booting sequence, so Main will try to "kick" it to make it work.
- Now kernel uses loadable (.ko) modules for WiFi and BT devices, so be aware when you try to change the kernel as modules are inside linux.img and may be not compatible with other kernel! USB host devices is also in loadable module to reduce the "crowd" in booting process.
- bt_auto_disconnect INI option to disconnect BT gamepads/keyboards after some time so their battery won't dry (some gamepads have no built-in timeout). This option doesn't work for BLE devices.
- Support for joycon split/combine mode (press L1+L2+L3 and R1+R2+R3 to combine or split). In combined mode joycons use Switch Pro mapping. (You have to map gamepad in combined mode again). Note: while it's fun to try joycon in combined mode, it's not as good as normal Switch Pro gamepad by several aspects, so better to use Switch Pro controller.
- Mice with up to 8 buttons are supported now.
- Execute /media/fat/linux/user-startup.sh script upon boot if found. This is for additional user supplied customizations. Try to keep changes in linux.img minimal, so linux update won't affect your settings.
- Added more python modules such as curses, zlib and others.
- Many other tweaks and fixes in Kernel and Main.
It's possible i've forgot something to mention as it was a long stint... Will update later if any...
Comments (18)
Amazing. Thanks.
Sweet, now I can get a dongle in stock locally instead .
Excellent news. I have an AC dongle that previously required a custom kernel module and it might now work out of the box.
It does work, no more need for the custom kernel module. This is for the AC wifi dongle with orange logo that is the same shape as the commonly used N wifi dongle (blue logo). Great to see.
excellent work! thank you!
Amazing update, thank you!
Fantastic!
Awesome update! I ordered a few combo WiFi+BT dongles to test out. I will report back.
Vanilla kernel! That is amazing news! Thanks for all the hard work!
Awesome Mister is now based directly off mainline! On the topic of filesystems btrfs might eventually be a good option to replace the FAT32. There is a decent windows driver support, more stable than exFAT, supports symbolic links, large files, compression, seed filesystem, overlayfs, etc....
MiSTer doesn't use FAT32, btw. There are many "better" filesystems. When some of them will get as good cross-platform support as exFAT, then it will replace exFAT on MiSTer.
Terrific update! Thanks for all the work to get here!
Awesome, I wonder if this fixes the issue I have with my BT receivers every time MiSTer restarts.
thank you for yor hard work!
Very impressive :) - much appreciated - thank you!
AWESOME work as usual!!! We all appreciate your update every time. Please do not forget taking some rest. :)
Yeah, I can see a lot of work has gone into this. It's not always the exciting new cores, sometimes you need to get on with the housework. These will all make a big quality of life improvement :)
This is awesome! Thanks for all the hard work!!
