AFULTab contest
Configuration
Input handling
Gtk+ configuration
The DeforaOS applications and desktop environment should be compiled, installed and configured as embedded applications:
- no more menubars;
- toolbars with icons only;
- finger-friendly buttons, menu entries, scrollbars, spinners, check boxes...
Generic finger-friendly scrolling should also be provided, if at all possible. Being able to get rid of scrollbars would be a plus.
Right-click emulation
Support for emulating right clicks should be provided, either via Xorg globally, or a Gtk+ plug-in (such as libgtkstylus).
Multimedia support
Sound server
Installing, supporting and pre-configuring a sound server such as pulseaudio(1) may be relevant.
Networking
Network configuration
The dhcpcd-gtk applet for the panel's notification area supports integration with wired interfaces, as well as wpa-supplicant for wireless. While not fully complete, it may be functional enough for the prototype delivered. It would notably:
- avoid conflicts with both wired and wireless interfaces configured;
- remove the need for the ifwatchd(8) daemon.
Known issues
Bugs in DeforaOS
- [Desktop] Choose (or implement) a window manager
- [Desktop] Debug and polish the mail client (including the embedded mode)
- [Desktop] Debug and polish the volume mixer: #43, #44, #45, #46
- [Desktop] Enhance file management: #42, #47
- [Desktop] Improve the screen saver: #52, #53, #54
- [Desktop] Integrate the AppProtocol (and VFS in particular)
- [Input] Improve finger-based interaction for the web browser
- [Input] Improve the virtual keyboard: #51
- [Network] Let the user configure networking graphically (eg wireless...)
- [Telephony] Improve general support: #48, #50
Bugs in NetBSD
- [ACPI] The Lenovo IdeaPad S10-3t does not power off
- [Boot] The system is unstable when booting with genfb
- [Graphics] The graphics card on the Lenovo IdeaPad S10-3t is not accelerated
- [Graphics] Software acceleration is buggy with modular-xorg-server
- [Input] The wstablet framework must be updated (and merged)
- [Input] The touchscreen on the Lenovo IdeaPad S10-3t is not supported
- [Multimedia] The sound card on the Lenovo IdeaPad S10-3t does not work
- [Multimedia] The webcam on the Lenovo IdeaPad S10-3t does not work
- [Telephony] The UMTS device is not identified on the Lenovo IdeaPad S10-3t
- [Wireless] The wireless card on the Lenovo IdeaPad S10-3t is not supported
Solving issues in NetBSD
ACPI sub-system
The Lenovo IdeaPad S10-3t does not power off
There seem to be issues with the ACPI sub-system, the most obvious one while attempting to turn off the computer:
# shutdown -p now
which simply doesn't work. The kernel mentions "acpi0: entering state 5" and then locks.
The issue is apparently broader, with "envstat -r" being, at best, extremely slow.
Booting
The system is unstable when booting with genfb
Up until 6.0_BETA booting with genfb (either with or without a splash screen) was very unreliable, and X not starting at all. Since shortly before the netbsd-6 branch it seems to work properly.
However:
- the colours and/or the logo are usually wrong or corrupted;
- not every colour depth seems supported on every graphics card;
- the kernel sometimes still outputs some text before enabling the splash screen.
Graphics sub-system
The graphics card on the Lenovo IdeaPad S10-3t is not accelerated
This problem is currently being addressed by Gregoire Sutre, on his netbsd-drmgem branch on github: https://github.com/gsutre/netbsd-drmgem.
Software acceleration is buggy with modular-xorg-server
Using modular-xorg-server with the "vesa" driver (while the accelerated Intel driver gets fixed) is barely usable, as windows are not fully drawn correctly. Running xterm with anti-aliased fonts is an easy way to reproduce the issue.
It seems to be related to acceleration issues rather than a specific video driver, maybe when no DRI driver could be loaded. I have yet to determine if both EXA and XAA exhibit the issue.
Also noteworthy is the requirement for the Xorg executable to be linked with libpthread for the DRI modules to load correctly.
Input handling
The wstablet framework must be updated (and merged)
The wstablet framework was being worked on as part of a Google Summer of Code project in August 2008, see http://netbsd-soc.sourceforge.net/projects/wscons/.
Unfortunately,
it seems that the results of this project have not been merged to
NetBSD, nor significant enough to be useful for touchscreen integration
here. This issue is therefore closed.
The touchscreen on the Lenovo IdeaPad S10-3t is not supported
This is no longer an issue, as:
- the uts(4) driver was written, submitted and integrated upstream (PR/45850)
- the xf86-input-mouse driver was patched for supporting absolute coordinates (PR/45853)
- the tpcalib and wscons framework was debugged and extended (PR/45872)
- no longer require root privileges for calibrating the screen;
- automate calibration when changing screen sizes.
Multimedia support
The sound card on the Lenovo IdeaPad S10-3t does not work
The sound card on the Lenovo IdeaPad S10-3t fails to attach correctly, with the following error:
hdaudio0 at pci0 dev 27 function 0: HD Audio Controller
hdaudio0: interrupting at ioapic0 pin 22
hdaudio0: timeout stopping RIRB
hdaudio0: couldn't reset because RIRB is busy
hdaudio0: device driver failed to attach
The root cause of this problem is currently unknown.
The webcam on the Lenovo IdeaPad S10-3t does not work
The webcam on the Lenovo IdeaPad S10-3t is detected and should be functional, however reading it with mplayer locks the machine with a 6.0_BETA kernel:
$ mplayer -tv driver=v4l2 tv://
Telephony
The UMTS device is not identified on the Lenovo IdeaPad S10-3t
The proper way to access the SIM card and GSM network on the Lenovo IdeaPad S10-3t could not be determined yet.
Wireless support
The wireless card on the Lenovo IdeaPad S10-3t is not supported
The Lenovo IdeaPad S10-3t has an Atheros wireless card, which fails to attach with the following error:
ath0 at pci2 dev 0 function 0: Atheros 9285
ath0: interrupting at ioapic0 pin 17
ath0: unable to attach hardware; HAL status 3
The root cause of this problem has not been identified yet.