====== Jumper EZbook S3 ====== Installing **Debian** testing (Buster) on the **Jumper EZbook S3 notepad**. ===== Booting from the USB Key ===== We downloaded the netinst image **debian-buster-DI-alpha3-amd64-netinst.iso** from the [[https://www.debian.org/devel/debian-installer/|Debian Installer Page]] and copied over an USB memory stick (using dd, destination the whole device). - Insert the USB key and power-on the notebook. Quickly press the ESC key to eneter the BIOS setup. - Into the **Boot** section, increased the **Setup Prompt Timeout** to 5 seconds and disabled the **Quiet Boot** (not strictly required, but useful). - Changed the boot priority: at the 1st position choosed the **UEFI: Generic Flash Disk**, at the 2nd position the **Windows Boot Manager**. - Exit BIOS setup, **saving changes**. ===== Installing From the Network ===== During the installation we had an **USB-Ethernet dongle** connected, because the WiFi is almost certainly non-working. The product we used is identified on the USB bus as **0bda:5401**: USB3.0 Hub with gigabit Ethernet. We had to install the following non-free packages, to obtain the required firmwares: * **firmware-realtek** (for rtlwifi/rtl8723bu_nic.bin and rtl_bt/rtl8723b_fw.bin) * **firmware-misc-nonfree** (for i915/bxt_dmc_ver1_07.bin) ===== Installing on the Hard Disk ===== Everything went flawlessy with the Debian Installer: during manual partitioning we **removed** the **main Windows partition** (about 240 Gb) and a 700 Mb **Windows Recovery partition**. We leaved the first two reserver partition and created //swap// and //rootfs//: ^ # ^ Size ^ Type ^ | 1 | 105 Mb | EFI system partition | | 2 | 16.8 MB | Microsoft reserved partition | | 3 | 8000 MB | linux-swap | | 4 | 248 GB | rootfs | The EFI boot loader was copied into the first partition, you can see it mounted into **/boot/efi/EFI/debian/grubx64.efi**. ===== How To Make the WiFi Working ===== The integrated **WiFi card** is attached to the **USB bus**, it is identified by ID **obda:b720**. The WiFi did not work with the stock installation. The **scanning** for available access points **is indeed working**, but **associating fails**. After the failed association, even the scanning stops working. We upgraded the kernel to **linux-image-4.17.0-1-amd64** in the hope that this will fix the WiFi problem, but nope. We downloaded the sources of a kernel module (developed by **lwfinger**) which expressly states the compatibility with that device obda:b720. This is the source code **[[https://github.com/lwfinger/rtl8723bu|GitHub page]]**. apt-get install git build-essential cd /usr/local/src git clone https://github.com/lwfinger/rtl8723bu.git cd rtl8723bu # In Makefile: commented-out the line EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE make make install This will install a new kernel module into **/lib/modules/4.17.0-1-amd64/kernel/drivers/net/wireless/8723bu.ko** and execute ''depmod'' to update the kernel modules list. The kernel module **will not survive a kernel upgrade** (it should be recompilerd and reinstalled), so we have deinstalled the pseudo package //linux-image-amd64// and leaved only the specific //linux-image-4.17.0-1-amd64//, to avoid automatic upgrades. The kernel module should be compatible with **DKMS** (the [[https://wiki.debian.org/KernelDKMS|Debian kernel modules auto-building system]]), but our first try failed, so we went with the manual mode. To be safe, blacklist the original kernel module by writing into **/etc/modprobe.d/blacklist.conf** the line: blacklist rtl8xxxu After a reboot you should find (''lsmod'') the module **8723bu loaded**, instead of rtl8xxxu. Scanning for WiFi netwroks and association should work. ==== WiFi Resume Problem Workaround ==== The WiFi adapter **does not resume** after the stand-by! It seems there is the **[[https://github.com/lwfinger/rtl8723bu/issues/91|issue #91]]** into the //lwfinger rtl8723bu// module, but already fiexd? A manual workaround is: rmmod 8723bu modprobe 8723bu An automatic workaround seems to be creating an executable file **/lib/systemd/system-sleep/fix-wifi** with: #!/bin/sh case $1/$2 in pre/*) ;; post/*) modprobe -r 8723bu modprobe 8723bu ;; esac ===== Suspend and Hibernate ===== Tried with success the command line version of the commands: systemctl suspend systemctl hibernate The hibernate requires a swap partition equal or greather than the available RAM. ===== TODO ===== * How to prevent the notebook to go into stand-by mode, which make it unreachable from the network (e.g. ssh login). * Bluetooth not working? * FIXME **Enter** key misbehaving in **less**. Problem: e.g. man page, backslash to search, hit Enter does not work, it prints **ESCOM** string instad. Workaround: use **Ctrl-M**. Tips: ''xev'' says that Enter sends ''KP_Enter'' instead of ''Return'', but changing keysym with ''%%xmodmap -e "keysym KP_Enter = Return"%%'' does not resolve. Use ''.lesskey'' to modifiy?