Translation(s): none
DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware. The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware. If you need help to get Debian running on your hardware, please have a look at our user support channels where you may find specific channels (mailing list, IRC channel) dedicated to certain types of hardware. |
Models covered
Acer Spin 1
Sub-models (SP111-31N-C4UG) options : - Intel Celeron N3350 Dual-Core Processor
- Screen size (11.6", Full HD (1920 x 1080) Multi-touch widescreen LED-backlit IPS display)
- 4GB DDR3L Memory & 32GB Internal Storage
- Bluetooth...
Overall Status
Core Components |
||
Boot Standard Kernel: |
|
|
Detect hard drives: |
|
|
Extra Features |
||
CPU Frequency Scaling |
[?] |
|
Hibernation |
[?] |
|
Sleep / Suspend |
|
|
Xorg |
|
|
- OpenGL |
|
|
- Resize-and-Rotate(randr) |
|
|
Switch to External Screen |
|
|
Mouse |
|
|
- Built-in (Touchpad) |
|
|
Wireless/Wifi |
|
|
Keyboard's Hotkeys |
|
Legend :
= OK ; Unsupported(No Driver) ; = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable
= Configuration Required; = Only works with a non-free driver and or firmware
Important Note
Before installing Debian, Secure Boot needs to be disabled in BIOS.
The eMMC internal ssd isn't recognized by the stretch kernel, so I installed testing (buster), but then downgraded to stretch, leaving the more recent kernel in place, so the comments refer to the buster install kernel 4.13.0-1-amd64.
Press Esc (or sometimes F2 - seems to vary not sure why) to access the BIOS screen. I turned off secure boot, enabled network boot (might not be necessary) and changed the boot order to boot from a USB stick. The testing installer installed successfully, except it gave an error installing grub, though it did boot successfully anway, once I changed the boot order back to boot off eMMC first in the BIOS.
The wireless card works with the ath10k non-free firmware.
Configuration
Display
Works with standard kernel.
Audio
Works with standard kernel.
Power Management
Lid close triggers suspend, lid open triggers resume.
Battery levels, AC power recognized
WiFi
Works with the nonfree package: firmware-atheros
Resize-and-Rotate
Debian doesn't seem to support natively the rotation. However the Accelerometer is correctly detected. You can ensure by installing and running monitor sensor.
apt-get install iio-sensor-proxy inotify-tools
The following script, adapted from:
https://gist.github.com/Links2004/5976ce97a14dabf773c3ff98d03c0f61
will automatically rotate the screen and the touchscreen.
# Auto rotate screen based on device orientation
# based on https://linuxappfinder.com/blog/auto_screen_rotation_in_ubuntu
# install
# 1. apt-get install iio-sensor-proxy inotify-tools
# 2. add script to autostart
# Receives input from monitor-sensor (part of iio-sensor-proxy package)
# Screen orientation and launcher location is set based upon accelerometer position
# Launcher will be on the left in a landscape orientation and on the bottom in a portrait orientation
# This script should be added to startup applications for the user
LOG=/run/user/$(id -u $USER)/sensor.log
export DISPLAY=:0
# put your display name here
DNAME=eDP-1
# may change grep to match your touchscreen
INDEV=$(xinput --list | grep -iv Pen | grep -i TouchScreen | sed 's/.*id=\([0-9]*\).*/\1/')
function rotate {
#echo ---- rotate ----
ORIENTATION=$1
CUR_ROT=$(xrandr -q --verbose | grep $DNAME | cut -d" " -f6)
NEW_ROT="normal"
CTM="1 0 0 0 1 0 0 0 1"
# Set the actions to be taken for each possible orientation
case "$ORIENTATION" in
normal)
NEW_ROT="normal"
CTM="1 0 0 0 1 0 0 0 1"
;;
bottom-up)
NEW_ROT="inverted"
CTM="-1 0 1 0 -1 1 0 0 1"
;;
right-up)
NEW_ROT="right"
CTM="0 1 0 -1 0 1 0 0 1"
;;
left-up)
NEW_ROT="left"
CTM="0 -1 1 1 0 0 0 0 1"
;;
esac
#echo ORIENTATION: $ORIENTATION
#echo INDEV: $INDEV
#echo DNAME: $DNAME
#echo DISPLAY: $DISPLAY
##echo NEW_ROT: $NEW_ROT
#echo CUR_ROT: $CUR_ROT
#echo CTM: $CTM
#if [ "$NEW_ROT" != "$CUR_ROT" ] ; then
xrandr --output $DNAME --rotate $NEW_ROT
xinput set-prop $INDEV 'Coordinate Transformation Matrix' $CTM
# fi
}
# set default orientation
rotate normal
# kill old monitor-sensor
killall monitor-sensor
# Clear sensor.log so it doesn't get too long over time
> $LOG
# Launch monitor-sensor and store the output in a variable that can be parsed by the rest of the script
monitor-sensor >> $LOG 2>&1 &
# Parse output or monitor sensor to get the new orientation whenever the log file is updated
# Possibles are: normal, bottom-up, right-up, left-up
# Light data will be ignored
while inotifywait -e modify $LOG; do
# Read the last line that was added to the file and get the orientation
ORIENTATION=$(tail -n 1 $LOG | grep 'orientation' | grep -oE '[^ ]+$')
if [ ! -z $ORIENTATION ] ; then
rotate $ORIENTATION
fi
done
System Summary
lspci
00:00.0 Host bridge [0600]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series Host Bridge [8086:5af0] (rev 0b)
00:00.1 Signal processing controller [1180]: Intel Corporation Device [8086:5a8c] (rev 0b)
00:02.0 VGA compatible controller [0300]: Intel Corporation Device [8086:5a85] (rev 0b)
00:0e.0 Audio device [0403]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series Audio Cluster [8086:5a98] (rev 0b)
00:0f.0 Communication controller [0780]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series Trusted Execution Engine [8086:5a9a] (rev 0b)
00:12.0 SATA controller [0106]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series SATA AHCI Controller [8086:5ae3] (rev 0b)
00:13.0 PCI bridge [0604]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series PCI Express Port A #4 [8086:5adb] (rev fb)
00:15.0 USB controller [0c03]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series USB xHCI [8086:5aa8] (rev 0b)
00:17.0 Signal processing controller [1180]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series I2C Controller #5 [8086:5ab4] (rev 0b)
00:17.1 Signal processing controller [1180]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series I2C Controller #6 [8086:5ab6] (rev 0b)
00:1c.0 SD Host controller [0805]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series eMMC Controller [8086:5acc] (rev 0b)
00:1f.0 ISA bridge [0601]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series Low Pin Count Interface [8086:5ae8] (rev 0b)
00:1f.1 SMBus [0c05]: Intel Corporation Atom/Celeron/Pentium Processor N4200/N3350/E3900 Series SMBus Controller [8086:5ad4] (rev 0b)
01:00.0 Network controller [0280]: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter [168c:0042] (rev 31)
lsusb
Couldn't open device, some information will be missing Couldn't open device, some information will be missing Couldn't open device, some information will be missing Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Couldn't open device, some information will be missing bDeviceClass 9 Hub bDeviceProtocol 3 Couldn't open device, some information will be missing iProduct 2 Couldn't open device, some information will be missing Bus 001 Device 006: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller bDeviceClass 255 Vendor Specific Class bDeviceProtocol 255 Vendor Specific Protocol iProduct 2 (Bus Powered) Bus 001 Device 005: ID 0bda:57f2 Realtek Semiconductor Corp. bDeviceClass 239 Miscellaneous Device bDeviceProtocol 1 Interface Association iProduct 1 (Bus Powered) Bus 001 Device 004: ID 04f3:22e3 Elan Microelectronics Corp. bDeviceClass 0 (Defined at Interface level) bDeviceProtocol 0 iProduct 14 Bus 001 Device 003: ID 04ca:3015 Lite-On Technology Corp. bDeviceClass 224 Wireless bDeviceProtocol 1 Bluetooth iProduct 0 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub bDeviceClass 9 Hub bDeviceProtocol 1 Single TT iProduct 2
USB Host controllers entries (without OHCI, UHCI, EHCI) are removed too.
Resources
Attachments
Some configuration files and sample outputs.
Useful Links
Credits