Tiny Core Linux

General TC => Tiny Core Netbooks => Topic started by: roberts on October 04, 2009, 10:09:17 PM

Title: Dell Mini 9
Post by: roberts on October 04, 2009, 10:09:17 PM
I am posting this from a Dell Mini 9. It is the base model. 1GB ram and 4GB SSD. It came with Ubuntu.
The SSD is seen as hda with a tiny first partition, id de Unknown, the second partition, hda2 is home to Ubuntu.
I started off by editing the existing grub menu at /mnt/hda2/boot/grub/menu.lst
First comment out the hidemenu, then add a typical Tiny Core boot entry.
Code: [Select]
title Tiny Core Linux
kernel (hd0,1)/tinycore/bzImage quiet embed ht=on hpet=disabled quiet tz=PST+8PDT,M3.2.0/2,M11.1.0/2 home=hda2 opt=hda2 norestore nodhcp
initrd (hd0,1)/tinycore/tinycore.gz

I created a tinycore directory on /mnt/hda2/tinycore and then copied via pendrive the bzImage and tinycore.gz files.
The grub line as above shows that I want to have user tc added to the existing /home from currently setup from Ubunutu.

Same for /opt. I will share the current /opt directory for my persistent storage. With both persistent opt and home I chose norestore.

Note that I only created the tinycore directory and copied two files. The rest Tiny Core handles automatically.

Once I rebooted I was running tinycore. However, you will need some support files from the repository for wireless and proper screen resolution.

Again, using the pendrive, I placed the following extensions on the pendrive.

1. wireless-2.6.29.1-tinycore.tczm
2. wireless_tools.tczl
3. wl.tczm
4. 915resolution.tcz

The first three are for wireless and 915resolution is for native screen 1024x600
Copy these from pendrive to /mnt/hda2/tce

The wireless card in my mini9 is eth1, so I next edited /opt/bootlocal.sh adding:
Code: [Select]
iwconfig eth1 essid "mynetworkname" key FDFDFDFD
udhcpc -i eth1
I shutdown the mini9 and upon next boot I have wireless and proper screen resoultion!

Now from the mini9 I grabbed OSS, opera, getFlash10
Sound worked without any configuration. Opera started up fine. Then ran getFlash10 from the menu.
Now youtube video and sound work fine. Be sure to edit Opera preferences to limit cache size,
or the browser that you may choose instead.

That's it mini9 with Tiny Core has been awesome. Boots much faster than Ubuntu. Browser works better than Ubuntu. Videos play better too. In fact, I have now removed Ubuntu from the SSD.

Title: Re: Dell Mini 9
Post by: jls on October 05, 2009, 01:10:05 AM
.....Same for /opt. I will share the current /opt directory for my persistent storage..........
What do u use /opt for?
Title: Re: Dell Mini 9
Post by: roberts on October 05, 2009, 06:31:21 AM
My backgrounds and bootlocal.sh, which has a collection of public wifi settings.
Title: Re: Dell Mini 9
Post by: h-munster on November 22, 2009, 12:12:06 AM
Thank you for the info on your Mini 9 setup.

How does one adjust the Mini 9 screen brightness?  I would try xbacklight, but I don't think that it will work with Xvesa.  I wonder if there is a way to make the Mini 9 brightness keys work on the BIOS level.

Also, it would be great to have the volume keys working.

Not sure I understand all of your grub commands or the reasons why.  For instance, why do you have "nodhcp" and then put "udhcpc -i eth1"in your /opt/bootlocal.sh?  Are you trying to disable eth0?

With the your grub commands, I get two udhcp processes running:  one for eth0; and one for eth1.

Furthermore, it is very difficult to grasp all the different persistence permutations, but that is topic for another thread...

Thanks!
Title: Re: Dell Mini 9
Post by: roberts on November 22, 2009, 09:58:24 AM
The nodhcp is to stop the default behavior of the system broadcasting for an IP on eth0, the wired port.
I never use Dell Mini 9 wired.

As for the nuances of the Mini 9, I just had not had the time to mess with them. The default brightness and sound work fine for me. Also, the fact that the Mini 9 begins to flash red, I don't even run a battery application.

You might be interested in the extension flit.tcz as it provides clock, battery indicator, and sound adjustment. It has been tested on the Mini 9.
Title: Re: Dell Mini 9
Post by: h-munster on November 22, 2009, 10:42:56 PM
Thanks for the explanation of "nodhcp" and for the reference to flit.tcz.

So, your brightness and sound keys on your Mini 9 are working in TC?  Wow!  They don't on my Mini 9.

I have been playing around with the brightness keys during boot-up, and the brightness can sometimes be adjusted with the keys, when viewing the grub menu.  It doesn't always work.

However, the brightness keys have no effect when TC is running.

What do you mean "that the Mini 9 begins to flash red?"
Title: Re: Dell Mini 9
Post by: roberts on November 22, 2009, 11:59:29 PM
No. I am saying that I don't need any adjustments to my brightness or sound.
The flashing red is the battery led indicator, warning when battery is low.
Title: Re: Dell Mini 9
Post by: h-munster on November 24, 2009, 10:34:43 AM
Still searching for a way to adjust brightness.  If I could do that, I'd wipe the stock Ubuntu from the SSD.

Will try flit for sound adjustment -- thanks!

Been using "cat /proc/acpi/battery/BAT1/state" to see charge level.
Title: Re: Dell Mini 9
Post by: h-munster on November 29, 2009, 03:58:03 AM
Still trying to find a way to adjust brightness on the Mini 9 with Xvesa.

I was able to adjust brightness on the Mini 9 with some other distros by using:
Code: [Select]
echo num > /sys/class/backlight/acpi_video0/brightness
(where "num" is a value from 0 to 15.)

This worked in the Dell stock Ubuntu and also with the latest Puppy Linux.  The command did not work in TC nor in Slitaz.

Ubuntu uses Xorg, and Puppy allows one to select Xorg or Xvesa at boot, but I chose Xvesa.  Both TC and Slitaz default to Xvesa.

I soon realized that there is no /sys/class/backlight directory in TC nor in Slitaz.

The Mini 9 has an Intel 945GME Graphics controller.  Ubuntu and Puppy seem to load the Intel drivers by default:  "agpgart" and "intel-agp" (and, additionally in Ubuntu, "drm" and "i915").  None of these Intel drivers are loaded/found in TC nor Slitaz with the default Xvesa.

I think that the lack of these Intel drivers could be the culprit.

I Found this thread on manually compiling the Intel drivers for TC:  http://forum.tinycorelinux.net/index.php?PHPSESSID=620d386150e9d11f7dc5f814e78e8e89&topic=280.msg1696#msg1696
 (http://forum.tinycorelinux.net/index.php?PHPSESSID=620d386150e9d11f7dc5f814e78e8e89&topic=280.msg1696#msg1696)  This process seems a little unwieldy.

If I install the Xorg extension, would these drivers automatically be installed/loaded?  Could I then save the drivers and purge Xorg to revert back to Xvesa with the new drivers?

It is probably inconsequential to try the Xorg install/purge, but I was wondering if anyone just happens to know the answer.

One good thing that has come out of this trial and error process:  I have discovered that Puppy works almost perfectly on the Mini 9.  So, I can wipe the Ubuntu bloat from the Mini 9's SSD and replace it with Puppy, until I get TC up to speed.

Title: Re: Dell Mini 9
Post by: curaga on November 29, 2009, 04:12:50 AM
The extension graphics-2.6.29.1 has the intel agp modules.
Title: Re: Dell Mini 9
Post by: h-munster on November 29, 2009, 04:15:56 AM
Quote
The extension graphics-2.6.29.1 has the intel agp modules.

Thanks!  Will try that next!
Title: Re: Dell Mini 9
Post by: h-munster on November 29, 2009, 02:21:33 PM
Installed the graphics-2.6.29.1 extension and "agpgart" and "intel-agp" both appeared.

However, no /sys/class/backlight directory.  I even restarted Xvesa and rebooted.  Of course, the setpci trick didn't work, either.

I also tried installing Xorg, however, the brightness control inherent in Ubuntu and Puppy work without an X server running.  Furthermore, in Puppy, the brightness buttons on the keyboard still work without an X server.

Wondering if there is something else on the module/kernel level.  Ubuntu also has "i915" and "drm" modules running.  Puppy additionally has "pci-hotplug" and "shpchp."

I'm going to study the Ubuntu and Puppy modules, and look more closely at the running processes of each compared to those in TC and Slitaz.

Maybe the way TC uses acpi is involved in the problem.

In the meantime, if anyone has a clue as to why the /sys/class/backlight directory doesn't appear, please chime in.

Thanks!

Title: Re: Dell Mini 9
Post by: Juanito on November 29, 2009, 07:23:51 PM
My dell d430 needs the "agpgart", "intel-agp", "i915" and "drm" loaded to have everything enabled graphics-wise with xorg - only two (I can't remember which) of the modules are loaded automatically and I have to load the other two manually.
Title: Re: Dell Mini 9
Post by: h-munster on December 06, 2009, 01:56:46 AM
@Juanito
Thanks for the info.  I just modprobed "i915" and "drm" and they appeared (and stayed in subsequent boots).  Don't know if they came from an extension or not.

I finally wiped Ubuntu off of my Mini 9 and reinstalled TC.  No more searching for TC files within the Ubuntu clutter/bloat.  Now, it is a lot easier to see what is going on in TC.

However, still no way to adjust the backlight brightness with TC.

Going to look into the acpi bootcodes when I get the chance.  Just need to make "/sys/class/backlight/acpi_video0/brightness" appear.
Title: Re: Dell Mini 9
Post by: Juanito on December 06, 2009, 02:19:47 AM
@Juanito
Thanks for the info.  I just modprobed "i915" and "drm" and they appeared (and stayed in subsequent boots).  Don't know if they came from an extension or not.
yes, from the graphics-2.6.29.1-tinycore extension

Quote
However, still no way to adjust the backlight brightness with TC.

Going to look into the acpi bootcodes when I get the chance.  Just need to make "/sys/class/backlight/acpi_video0/brightness" appear.

Maybe the acpid extension is required?
Title: Re: Dell Mini 9
Post by: bmarkus on December 06, 2009, 02:55:26 AM
Compiling HAL its Dell Backlight feature is optional and requires libsmbios > 0.13.4 according to configure.
Title: Re: Dell Mini 9
Post by: Juanito on December 06, 2009, 03:21:24 AM
That's something I didn't know about - reading up, I also saw this in the tc .config:
Code: [Select]
# CONFIG_DELL_RBU is not set
# CONFIG_DCDBAS is not set
..which might influence the use of libsmbios, etc
Title: Re: Dell Mini 9
Post by: curaga on December 06, 2009, 03:42:18 AM
The bios updater certainly doesn't affect this, and I'm 80% sure the SMI part doesn't either. Those two are really enterprise options (remote shutdowns and bios updates).
Title: Re: Dell Mini 9
Post by: Juanito on December 06, 2009, 07:07:58 PM
I compiled libsmbios, which also includes a number of python scripts - one the scripts looks like it could adjust the lcd backlighting, but needs one or other of the dell_rbu/dcdbas modules.

I'll tidy things up and post libsmbios and the modules

Note that on my d430, I can adjust the backlighting with the function keys using both Xvesa and Xorg without doing anything special. Using the function keys does not generate acpi events.
Title: Re: Dell Mini 9
Post by: Juanito on December 06, 2009, 10:57:08 PM
Using the libsmbios extension, you can adjust the backlight like this:
Code: [Select]
$ sudo smbios-lcd-brightness --password=xxx -a --value=7
Reading current AC mode setting
    current: 3
        min: 0
        max: 7
Write new AC mode setting
Reading current AC mode setting
    current: 7
        min: 0
        max: 7
Note that the backlight adjustment cannot be set to "auto" for this to work.
ac = "-a"
battery = "-b"
xxx = bios power-on password
Title: Re: Dell Mini 9
Post by: h-munster on December 14, 2009, 02:26:44 PM
Thank you to everyone for their efforts in trying to solve the Mini 9 backlight adjustment problem.

I tried acpid extension, and it didn't solve the problem.

By the way, when I first attempted acpid, errors appeared stating that a directory and subdirectory didn't exist, and acpid wouldn't run.  I had to mkdir the directory and sub-directory to get acpid to run.

I am also sorry to report that I tried the dell_rbu and dcdbas modules both separately and together, and they didn't help.  The smbios-lcd-brightness command/messages seemed to function (with the ac and battery flags), but there was no effect on the backlight brightness.

The key seems to be doing whatever it takes to make the  /sys/class/backlight directory appear.
Title: Re: Dell Mini 9
Post by: Juanito on December 14, 2009, 07:44:21 PM
By the way, when I first attempted acpid, errors appeared stating that a directory and subdirectory didn't exist, and acpid wouldn't run.  I had to mkdir the directory and sub-directory to get acpid to run.

In the latest version of the acpid extension, the start-up script should take care of this - could you confirm which version you were using?
Title: Re: Dell Mini 9
Post by: h-munster on December 14, 2009, 10:45:32 PM
Quote
In the latest version of the acpid extension, the start-up script should take care of this - could you confirm which version you were using?

I was using acpid-1.0.10 with the 2.6.29.1-tinycore kernel.
Title: Re: Dell Mini 9
Post by: Juanito on December 15, 2009, 08:56:50 AM
If you look at /usr/local/tce.installed/acpid, do you see a script that creates /usr/local/etc/acpid/events (or something like that)?

If not, then you don't have the latest version of the extension.
Title: Re: Dell Mini 9
Post by: h-munster on December 15, 2009, 03:26:04 PM
Thank you for your help.

/usr/local/tce.installed/acpid is an empty file -- no script

/usr/local/etc/acpid/events/ are the directory and subdirectory which do not exist

Here is the error when trying to start acpid:

Code: [Select]
root@box:~# acpid -d
acpid: starting up
acpid: opendir(/usr/local/etc/acpi/events): No such file or directory



/tmp/tcloop/acpid/usr/local/etc/init.d/acpid is this script:

Code: [Select]
#!/bin/sh

start() {
if [ ! -d /usr/local/etc/acpi/events ]; then
mkdir -p /usr/local/etc/acpi/events
fi
if [ ! -e /var/run/acpid.pid ]; then
/usr/local/sbin/acpid
fi
}

stop() {
killall acpid 2>/dev/null
}

status() {
if [ -e /var/run/acpid.pid ]; then
echo -e "\nacpid is running.\n"
else
echo -e "\nacpid is not running.\n"
fi
}

case $1 in
start) start
;;
stop) stop
;;
status) status
;;
restart) stop; start
;;
*) echo -e "\n$0 [start|stop|restart|status]\n"
;;
esac

Thanks.
Title: Re: Dell Mini 9
Post by: Juanito on December 15, 2009, 07:54:05 PM
Ah- so much for my memory, I see the problem now. The init.d script creates the missing directory, but the start-up script does not, which means if you load the extension and run the daemon manually it will fail.

It would have been smarter to do things differently - I'm traveling at the moment, but I'll have a look at this when I get back.

Thanks for the feedback.
Title: Re: Dell Mini 9
Post by: Juanito on December 16, 2009, 08:10:40 PM
updated acpid posted
Title: Re: Dell Mini 9
Post by: h-munster on December 16, 2009, 08:48:30 PM
Quote
updated acpid posted

Thanks!
Title: Re: Dell Mini 9
Post by: nick65go on December 31, 2009, 04:56:08 AM
Hi,

Thank you very much for Tiny Core! I love it, I think this will be the future for linux distributions...
It boots up in 12 seconds, from grub menu until I can move the mouse pointer. My grub menu.lst

title Tiny Core Linux tce home opt
root (hd0,1)
kernel /tiny/bzImage ht=on hpet=disabled embed tce=hda2 home=hda2 opt=hda2 norestore noswap nodhcp max_loops=255 quiet
initrd /tiny/tinycore.gz

I use TC 2.7 on dell mini 910. In /tce I have only 915resolution.tcz, wl.tcz +depenencies.
All tcz updated are into /tce/optional. I use the new ondemand script for menu/mount them.
I can see wifi as eth1 in iwconfig and ifconfig, but I can not connect to essid with WEP/WPA.

cat /opt/wlan0.sh
#!/bin/sh
modprobe lib80211_crypt_tkip
modprobe lib80211_crypt_wep
modprobe lib80211_crypt_ccmp

modprobe wl
route add default gw 192.168.1.1
echo nameserver 213.154.124.1 > /etc/resolv.conf
echo nameserver 193.231.252.1 >> /etc/resolv.conf
pkill udhcpc
iwconfig eth1 essid qubs key restricted 1122334455
ifconfig eth1 192.168.1.105 netmask 255.255.255.0 broadcast 192.168.1.255 up

sudo iwlist txpower
eth1     2 available transmit-powers :
     0 dBm     (1 mW)
     25 dBm     (255 mW)
          Current Tx-Power:32 dBm     (1496 mW) ; hmm bugy

Also there are 11 chanels, not 13 when sudo iwlist channel.
I did not use yet wap_client or wpa_passphare...I would like to go with out it.

EDIT: solved buggy WL wireless driver.  (In bootlocal.sh is nothing to run)
in the end  of setup, eth0=wire and eth1=wireless
Initial lsmod shows that not all lib_cript_* are loaded, only tkip.
1. Initial sudo ifconfig do not show eth0 neither eth1. (Buggy, should show eth1, as WL is loaded)
2. Then sudo iwconfig trigger eth0 to show up, but not eth1. buggy aslo.
3. Now sudo ifconfig show up eth1 only.
4. Now sudo iwconfig show both eth0 and eth1 (not linked to ESSID).
We need something to arrive here quickly...
5. sudo /opt/wlan0.sh will associate with AP now.
I wait the new TC kernel, to eliminate broadcom proprietary wifi...

Thank you.
Title: Re: Dell Mini 9
Post by: roberts on December 31, 2009, 06:43:28 AM
Not sure of the point of having both wired eth0 and wireless eth1 both up at the same time on the same network.

I always boot my mini with nodhcp and wireless works as I posted in the first message (no scripts needed)  in this topic. I am behind a firewall router.

Perhaps you need static IPs. Unless wireless is rarely used, I would have my wireless extensions in the tce directory not in tce/optional

Anyway, for kicks, I plugged in wired booted with the default dhcp request and had my wireless disabled. After boot with eth0 up. I see the same result as you for eth1. All trafic is on eth0 and my wireless access point is "Not-Associated".

But using one or the other works as expected.
Title: Re: Dell Mini 9
Post by: nick65go on January 01, 2010, 08:58:56 AM
@Robert:
I use wire eth0 only when wireless eth1 will not work. Now wireless works.
The keyword was RESTRICTED into iwconfig settings.
I am behind a personal router, wireless + 4 wire ports, config with my IP range allowed, connected to internet by PPPoE protocol. Laptops and workstation with static IP. Wireless protocol is WEP 64 bits, but I could choose WAP2 etc. I am just testing TC flexibility.

I will lookup to setup Fn keys (suspend, LCD brightness, rfkill wifi, sound volume). Please post your solutions ;). Instructions how to setkeycodes are welcome, then I will use acpid as in wiki.
For asla sound, cpu governors etc, I read wiki and *.tcz.info
Title: Re: Dell Mini 9
Post by: roberts on January 01, 2010, 09:13:34 AM
I use OSS for sound. It has much lighter demands than alsa.
Try flit.tcz for battery & sound control. It will autostart when X starts, i.e., it's presence is tested in .xsession.

I have no need for suspend or hibernate as TC boots and shutdownn is quick enough for me.

But please contribute whatever you wish to add or improve for TC on the mini.

 
Title: Re: Dell Mini 9
Post by: nick65go on January 02, 2010, 09:03:54 AM
My Dell mini 910 is fast. But I try to learn and made it super-fast.
It has Bios A04, 1Gb RAM, 16 GB SSD, ubuntu 8.04 (will be erased as soon as TC will be full setup).

Partition alignment in Linux:
====================
# fdisk -H 224 -S 56 /dev/sdb (or fdisk -S 32 -H32)
http://thunk.org/tytso/blog/2009/02/20/aligning-filesystems-to-an-ssds-erase-block-size/
http://www.ocztechnologyforum.com/forum/showpost.php?p=335049&postcount=134
"NAND [flash memory] fundamentally has native 4K block   sizes. Anything that's not aligned to a 4K block creates extra   challenges. For SSD's and HDD's that use a 4k internal sector size, being 4k aligned makes a big difference because it avoids read-modify-write cycles. We can achieve this easily if we simply use a CHS geometry of 56 sectors/track instead of 63 sectors."

Use AHCI module:
=============
http://www.pcper.com/article.php?aid=669&type=expert&pid=3
support NCQ (native command queuing) switching your BIOS settings to AHCI mode: While there are only small gains in large file throughput, there is a 2-3x improvement in small file access. The drive also ‘ramps up’ to full speed much faster, approaching 250MB/sec when performing random 8KB reads.

Mounting the file system:
==================
use "chattr -R +A /mnt" to set the noatime flag on all files and directories, the noatime flag is inherited by default.
http://thunk.org/tytso/blog/2009/03/01/ssds-journaling-and-noatimerelatime/

Best filesystem for SSD=solid state drive?
===============================
Options to choose from:
1. Ext2 with noatime/nodiratime
2. XFS use external logging devices?
3. Ext4 (starting in 2.6.29), support operations with and without a journal. advantages: delayed allocation, using extents versus indirect blocks. A filesystem originally created as ext4 is more efficient than one that was originally    ext3 and then later converted to ext4.
   mke2fs -t ext4 -O ^has_journal -E stripe-width=128 /dev/sdax,
   tune2fs -t ext4 -O ^has_journal /dev/sdXX && e2fsck /dev/sdXX
(adding this kernel parameter to menu.lst: rootfstype=ext4)

Different io schedulers:
=================
1. Complete Fair Queueing Scheduler (CFQ)
2. Anticipatory IO Scheduler (AS)
3. Deadline Scheduler
4. No-op Scheduler
For improved flash performance you could try the noop elevator I/O scheduler setting:
#  echo noop > /sys/block/${DEV}/queue/scheduler
or by adding elevator=noop to your kernel boot parameters in the grub boot menu.

Move Firefox cache to RAM disk:
========================
Open Firefox. Type about:config in the search bar.
Right click on any row. Select New > String from the popup menu.
Add browser.cache.disk.parent_directory and press enter. Use about:cache to verify.
Title: Re: Dell Mini 9
Post by: roberts on January 02, 2010, 09:11:33 AM
Those are good tips. I use the elevator=noop kernel boot option.

What is your BIOS version. I hear that brightness control under Linux requires BIOS update.
Title: Re: Dell Mini 9
Post by: nick65go on January 02, 2010, 12:54:27 PM
My BIOS version is A04. Login from Ubuntu 8.04 to list the files which coul help for Fn key:

files in /etc/acpi/
video_brightnessdown.sh
video_brightnessup.sh
voldownbtn.sh
volupbtn.sh

content of those files:
voldownbtn.sh
#!/bin/bash
. /usr/share/acpi-support/key-constants
acpi_fakekey $KEY_VOLUMEDOWN

volupbtn.sh
#!/bin/bash
. /usr/share/acpi-support/key-constants
acpi_fakekey $KEY_VOLUMEUP

video_brightnessdown.sh
#!/bin/bash
. /usr/share/acpi-support/key-constants
acpi_fakekey $KEY_BRIGHTNESSDOWN

video_brightnessup.sh
#!/bin/bash
. /usr/share/acpi-support/key-constants
acpi_fakekey $KEY_BRIGHTNESSUP

cat /usr/share/acpi/acpi-support/key-constants
# Generated from /usr/include/linux/input.h dated Sat Feb  4 14:58:52 GMT 2006
KEY_BRIGHTNESSDOWN=224
KEY_BRIGHTNESSUP=225
KEY_MUTE=113
KEY_VOLUMEDOWN=114
KEY_VOLUMEUP=115

====
files in /etc/acpi/events/

# /etc/acpi/events/ac
# Called when the user connects ac power to us
event=ac_adapter
action=/etc/acpi/power.sh

# /etc/acpi/events/battery
# Called when AC power goes away and we switch to battery
event=battery
action=/etc/acpi/power.sh

# /etc/acpi/events/lidbtn
# Called when the user closes or opens the lid
event=button[ /]lid
action=/etc/acpi/lid.sh

# /etc/acpi/events/video_brightnessdown
event=video.* 00000087
action=/etc/acpi/video_brightnessdown.sh

# /etc/acpi/events/video_brightnessup
event=video.* 00000086
action=/etc/acpi/video_brightnessup.sh

# /etc/acpi/events/videobtn
event=video.* 00000080
action=/etc/acpi/videobtn.sh

tell me what  path/commnads to do in ubuntu, then i will post the results here. Or attach the files..
Title: Re: Dell Mini 9
Post by: tetonca on January 10, 2010, 04:28:43 AM
Dell Mini 9 report  -- tetonca

10 January 2009 - Northeast USA


INCLUDES: complete xorg.conf listing.

Brightness in other environments

Fn keys work in latest Puppy Linux, on the X11 desktop.

xrandr reports the internal (1024x600) Mini 9 display
as type 'LVDS'.

Check or set LVDS brightness (in Puppy; Debian Lenny).
Code: [Select]
# cat /proc/acpi/video/GFX0/LCD/brightness
levels: 25 30 35 ... 90 95 100
current: 40
# echo 25 > /proc/acpi/video/GFX0/LCD/brightness
(it changes)

This /proc/acpi/video path is unavailable in stock Tiny Core.

Brightness in Grub 2.0:
Fn keys work.

Brightness in Debian Lenny:
Same as in Puppy (at CLI looking at /proc tree; or use Fn keys
in the Linux Virtual Console -- X11 brightness untested in
Lenny, for this survey).


Mute speaker in Tiny Core Linux 2.7

Ossmix is the default command-line interface for sound, in TC.
Code: [Select]
$ ossmix jack.int-speaker.mute ON
(Use the GUI 'ossxmix' not the CLI 'ossmix' to get a sense of the
CLI; when one changes the other is updated.)

Headphone Jack

Works as expected.

Synaptics touchpad

Works as expected; have not looked into turning it off when
using an external USB mouse.

USB flash drives

Dell Mini 9 boots Tiny Core from a USB stick just fine.  The in-
structions in the Grub extension work well; be sure to use
the --device-map switch:
Code: [Select]
# grub --device-map /tmp/devmap

Copy Grub to the boot directory:
Code: [Select]
$ sudo su
# fsck.extM /dev/sdX1
# mount /mnt/sdX1
# cd /mnt/sdX1/boot/grub
# cp -p /usr/lib/grub/i386-pc/* .
# cd
# sync ; sync
# umount /mnt/sdX1
Anything seen in capital letters is a replaceable  (single-
character) parameter.

So:  fsck.extM  becomes  fsck.ext3  or  fsck.ext2.

Critical:
Code: [Select]
# echo "(hd0) /dev/sdX" > /tmp/devmap
# exit

Install:
Code: [Select]
$ sudo su
# grub --device-map /tmp/devmap
> root (hd0,Y)
> setup (hd0)
> quit
> exit

Those instructions are in Appbrowser window.  Nice job!

    You must include menu.lst in the same
    directory ... in /mnt/sdX1/boot/grub ... for this
    to succeed.  See elsewhere on this site, or the
    Wiki, for example menu.lst files.


I only boot from USB now; the SSD I mount as required (gen-
erally only for short-term storage between backups). Entire
system runs from RAM, to save life of SSD and USB stick flash
media.  If the system is stolen, I only lose the hardware; they
get Grub, and a barren TC base install; the real TC is on USB
stick in my pocket.

To power off, I hold down the power button for 10 sec-
onds (after verifying in the shell that no write-enabled mass
storage is mounted).

I generally backup by plan, not by shutdown ritual.

Grub 2.0 was installed to the SSD with Debian Lenny;
works fine on this hardware.  I use Grub 0.97 on USB sticks.


USB mouse
Works great.  Xorg.conf has a section that deals with
the mouse.
Code: [Select]
$ cat /etc/X11/xorg.conf | egrep Opt | egrep "Im|mi|Bu"
        Option      "Protocol" "ImPS/2"
        Option      "Device" "/dev/input/mice"
        Option      "Buttons" "5"
The options helped wake up the third mouse button, instead of
chording the other two for a paste operation.


Dvorak Keyboard support
Code: [Select]
# /sbin/loadkmap <  /opt/private/dvorak-mine.kmap
I brought my kmap over from an earlier tc system (see below).  You
must be root (or use sudo) for loadkmap to succeed.
See the BusyBox Command Help page (busybox.net (http://busybox.net))
for terse details in the use of loadkmap.

This works great on the Console, and may also propagate to X11.  To
be sure, xmodmap should also be invoked in ~/.xsession.
Code: [Select]
$ cat /home/tc/.xsession | grep vo
/usr/bin/xmodmap /home/tc/dvorak.xmodmap
which is also homebrew.  The combination provides Dvorak
support wherever there is a place to type.

I modded the Dell Mini 9 keycaps to be arranged similar to
Dvorak.  Several compromises were made to do so.  I have
an external USB keyboard (a cheap $15 Logitech, from an
office supply retail chain) set up as Dvorak with only 4 keys
in the wrong spot (F and J could not be swapped to other
locations).


VGA port
Xorg: supports simultaneous displays either sharing the
display space or adjacent spaces.  Fn 8 toggles ext. display
on and off, both at Grub 2.0 and at TinyCore logo boot
screen (vga=789 framebuffer mode).

Linux Virtual Console supported on external VGA.

lxrandr controls Xorg's use of LVDS (internal) and
VGA (external) quite well.

xrandr (CLI program that comes with the Xorg extension)
works nicely.
Code: [Select]
$ xrandr --output VGA  --mode 1024x768
$ xrandr --output LVDS --mode 1024x600
$ xrandr --output LVDS --pos 0x300 (offsets display 300px vert.)
$ xrandr --output LVDS --pos 0x0 (mirror)
Can't get beyond --pos 0x425 or so without artifacts (should
go all the way to --pos 0x600).

Use Virtual 2048 1368 (xorg.conf) with an external 1024x768
display.

It's additive (1024x600 + 1024x768 == 2048x1368).

915resolution is *not* needed with Xorg (only needed
with Xvesa on Dell Mini 9, Tiny Core 2.7).

Video blanking timeout
Code: [Select]
$ xset s 900 (900 second timeout)
This seems to reset itself on a whim, so I loop it in a script:
Code: [Select]
#!/bin/sh
for i in 1 1 1 1 1 \
    1 1 1 1 1 1 1 1 \
    1 1 1
  do
    xset s 900
    sleep 912
  done
(change the loop to get it to run a very long time).

Sleep 912 makes sure that the display can go blank, at all.
Make it 'sleep 840' or somesuch to keep it from blanking.
This is just an ugly hack and needs work.


Wireless Support
WPA2
Code: [Select]
# wpa_supplicant \
  -BWdddd \
  -D wext \
  -i eth1 \
  -c /etc/wpa_supplicant.conf
That's called after a modprobe of 'wl' (if needed; not required
as far as I can tell).

Code: [Select]
# wpa_cli  \
  -a /path/to/any/shell/script-of-mine.sh \
    >/dev/null 2>&1 &
# wpa_cli  status

Place the two 'wpa_cli' commands in bootlocal.sh -- this will
prod the wireless to connect to the router, using WPA2 (it
won't, otherwise).

Do this after calling wpa_supplicant.

Code: [Select]
# cat script-of-mine.sh
#!/bin/sh
# does absolutely nothing of use; dummy script for wpa_cli
echo
exit 0

Every WPA2 user wants a configured wpa_supplicant.conf.
Code: [Select]
# cat /etc/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ap_scan=2

network={
        ssid="corytine"
        scan_ssid=0
        proto=WPA RSN
        key_mgmt=WPA-PSK
        pairwise=CCMP TKIP
        group=CCMP TKIP
        #psk="some-funky-wpa-seekrit-passphrase-enlightenment-40327"
        psk=700521cc0bea96fef88872e7757e7c3afb46a1b7ace09a7422b13e9439c9ab1f
}
Seems to default to CCMP when forced in the wireless
router; this is AES-128, IIRC, and is most desirable for
encryption.

Code: [Select]
# wpa_cli
Selected interface 'eth1'

Interactive mode

> status
bssid=00:24:b2:0a:bc:23
ssid=corytine
id=0
pairwise_cipher=CCMP
group_cipher=CCMP
key_mgmt=WPA2-PSK
wpa_state=COMPLETED
ip_address=192.168.1.38
> quit
The above says it is in CCMP rather than the inferior TKIP
mode -- a better encryption standard.


Generate the business in the above wpa_supplicant.conf.
Code: [Select]
$ wpa_passphrase corytine
# reading passphrase from stdin
some-funky-wpa-seekrit-passphrase-enlightenment-40327
network={
        ssid="corytine"
        #psk="some-funky-wpa-seekrit-passphrase-enlightenment-40327"
        psk=700521cc0bea96fef88872e7757e7c3afb46a1b7ace09a7422b13e9439c9ab1f
}

WPA must be setup fully, prior to getting a DHCP lease from
the router
.


DHCP
Code: [Select]
# udhcpc -b -i eth1 # wifi
cpanel defaults to eth0.

Open Access Point Wifi (no WPA2)
Code: [Select]
# iwconfig eth1 essid "chauncey"
# udhcpc -b -i eth1 # wifi


Battery
Turn AC CHARGING on and off.
Code: [Select]
# /usr/bin/aircraft-manager-util  AC_CHARGING off  (or on).
      Turning AC_CHARGING off

(Needs Aircraft Manager from Ubuntu 8.x, as distributed by
Dell/Canonical -- or somesuch named utility.  Runs fine in
Tinycore if you ignore the GUI, and run the Python control
script -- see above -- at CLI.)


Xorg
Xorg.conf (complete and verified).
See attached file.


Attachments
uuencoded dvorak.kmap as file attach, as well as the
binary.  xorg.conf is the third file attach.

md5sum.
Code: [Select]
$ md5sum *
a6a9dbd8e1dfe2ad799640d8cbdf5ba6  dvorak-kmap.txt
60c284c353ebd602e782fcac08056025  dvorak.kmap
97d2404eb48f188364a40354b0de21c9  xorg.conf
Title: Re: Dell Mini 9
Post by: tetonca on January 10, 2010, 09:39:04 AM
I have been playing around with the brightness keys during
boot-up, and the brightness can sometimes be adjusted with
the keys, when viewing the grub menu.  It doesn't always work.

However, the brightness keys have no effect when TC is running.

Method A:
Install Grub 2.0, which is consistently responsive to the
Dell Mini 9 brightness hotkeys (Fn 9, Fn 0) here (ymmv).

This should be a clue how to do it without specific acpi
support; Linux hasn't booted yet.

Method B:
At the SSD password prompt, the brightness hotkeys
are also responsive.  The 8GB SSD from Dell accepts
a password; the 4GB SSD does not seem to (therefore no
prompt, so this may fail with a 4GB SSD installed).

As Grub hasn't booted yet, looks like the SSD password
prompt video environment is not harmed by subsequently
booting Grub 2.0; whereas booting Grub 0.97 does seem to
trash the state of the machine, to the extent that the
brightness keys are sometimes unresponsive.

In both instances, the display remains more dim (or bright)
througout the subsequent Linux session, than it would be
if the hotkeys were never used to change the brightness.
There's persistence here.

Method C:

If the goal is to preserve the electrical integrity of the LVDS
(internal display on the Mini 9) over the life of the unit, and
an external VGA display is customarily employed, xrandr can
shut off the LVDS.  You can toggle this as often as you wish.
Therefore this is the most dynamic method I can demonstrate,
with TC 2.7 running:
Code: [Select]
$ xrandr --output LVDS --off # turns off LVDS
$ xrandr --output LVDS --mode 1024x600  # turns on LVDS

Method D:

Close the lid.  This creates a thermal management issue,
but otherwise preserves the life of the LVDS and its
backlight.
Title: Re: Dell Mini 9
Post by: jur on January 11, 2010, 04:35:29 AM
... xrandr can
shut off the LVDS.  You can toggle this as often as you wish.
Therefore this is the most dynamic method I can demonstrate,
with TC 2.7 running:
Code: [Select]
$ xrandr --output LVDS --off # turns off LVDS
$ xrandr --output LVDS --mode 1024x600  # turns on LVDS
Have you tried running extended period with '$ xrandr --output LVDS --off'? Because I tried using this but the VGA screen freezes after some minutes. I have to have LVDS on.
Title: Re: Dell Mini 9
Post by: tetonca on January 11, 2010, 05:16:46 PM
Have you tried running extended period with

$ xrandr --output LVDS --off    ?

Because I tried using this but the VGA screen freezes after
some minutes. I have to have LVDS on.

jur, I do not remember one way or the other, as I have not
shut down the LVDS habitually.

Today I ran for an hour using yet another Method .. I used
Fn 8 at the SSD password prompt, which shuts off the LVDS
and turns on VGA.

X11 was invoked and not much jumping back and forth into
the Linux VC.  Keyboard input was steady; X never idled to blank
video.  May've been Xvesa -- I run both at different times.

Session terminated under operator control.  No problems seen.
Title: Re: Dell Mini 9
Post by: curaga on January 13, 2010, 10:03:53 AM
The X screensaver timer should only reset itself on X restart. There's likely something else touching it, like xscreensaver.
Title: Re: Dell Mini 9
Post by: h-munster on January 13, 2010, 06:51:55 PM
The mention of xrandr reminded me of a peculiarity that I encountered with the stock Ubuntu on my Mini 9.

When I ran Ubuntu with a WM other than Gnome, I was unable to adjust the brightness with the keyboard.  However, I could still adjust the brightness with xbacklight, which uses xrandr.

So, if xrandr works on TC with xvesa, perhaps xbacklight is worth a try.
Title: Re: Dell Mini 9
Post by: curaga on January 14, 2010, 03:11:56 AM
The backlight adjustment via xrandr requires randr 1.2 from the server. Xvesa only implements 1.1.
Title: Re: Dell Mini 9
Post by: nick65go on April 10, 2010, 12:47:47 PM
Hi,

I would like just to know what you think about this ubuntu_remix like version for netbook OS: http://www.jolicloud.com/product/compatibility

I prefer the strong concept of TC modules, it will be for my Dell Inspiron 9400 laptop; but for my Dell mini 9 netbook, I wish to "borrow" few of their intel atom optimized kernel, drivers, applications (firefox optimizations) etc.

Ideal, with grub2 I could boot ISO images, one for TC to work offline, other for Jolicloud for online...
It would be excelent if a TC extension will be special design for "Intel Atom 2xx CPU"

PS: http://www.mydellmini.com/forum/other-distributions/731-optimal-cflags-intel-atom-processors.html

Best regards, Nicolae
Title: Re: Dell Mini 9
Post by: tinypoodle on July 09, 2010, 09:32:53 AM
In the meantime, if anyone has a clue as to why the /sys/class/backlight directory doesn't appear, please chime in.

either of:
Code: [Select]
sudo modprobe generic_bl
or
Code: [Select]
sudo modprobe backlight

do create the dir, however it remains unpopulated  :-\

(on a LG X 110 with 945GM chipset)
Title: Re: Dell Mini 9
Post by: h-munster on July 26, 2010, 08:37:02 PM
TC 3.0 now allows one to adjust the screen brightness on the Mini 9!

However, I am encountering new problems.  Suddenly, I can't get the wireless to function.  I see that some Broadcom modules are loading, but they don't seem to work.  I removed them and loaded the wl module, but that didn.t work, either.

Also, it took awhile for the proper screen resolution to appear.  It behaved very strangely.  I had 915resolution loading on boot, but I was getting the wrong resolution several times before the proper resolution finally kicked-in.

I would welcome any suggestions on how to fix the wireless, and I am curious if anyone knows what's happening with the screen resolution.

Thanks!
Title: Re: Dell Mini 9
Post by: Juanito on July 26, 2010, 08:39:45 PM
In order to use the b43 module, you'll need the firmware. In order to use the wl module, you'll need to boot with "blacklist=ssb blacklist=b43"
Title: Re: Dell Mini 9
Post by: h-munster on July 26, 2010, 09:44:41 PM
Thanks for the info!  I guess I'll use the wl module with those "prohibitive" boot codes.

By the way, I just remembered that the resolution was correct when I booted a virgin version of TC from a USB thumb drive.  However, when I checked appsaudit, it showed all of the onboot and ondemand extensions in my internal drive.  Was the virgin USB TC tapping into the 915resolution on my Mini 9's SSD?
Title: Re: Dell Mini 9
Post by: h-munster on July 27, 2010, 12:53:35 AM
Okay.  I used the "blacklist=ssb blacklist=b43" boot codes, and the wireless card seems to be recognized.  However, when I try to use "iwlist scan", I get:  "eth1    Failed to read scan data : Invalid argument".  The same message appears after "iwlist scanning".  Not sure what I am doing wrong.

Also, I forgot that I can only boot into the console, so I have to "startx" to get Xvesa.

Here is the contents of my /grub/menu.lst
Code: [Select]
default         0
timeout         0
color cyan/blue white/blue
title           Tiny Core Linux 3.0
kernel          (hd0,1)/boot/boot/bzImage quiet embed ht=on hpet=disabled blacklist=ssb blacklist=b43 tce=hda2 home=hda2 opt=hda2 nodhcp norestore restore=hda2
initrd          (hd0,1)/boot/boot/tinycore.gz

Thanks!
Title: Re: Dell Mini 9
Post by: Juanito on July 27, 2010, 04:12:01 AM
Are the wireless_tools and wireless-2.6.33.3-tinycore extensions loaded?

Can you connect to your router with:
Code: [Select]
$ sudo iwconfig eth1 essid "essid"
$ sudo iwconfig eth1 key restricted 12:34:56:78:9A:BC:DE:F0:12:34:56:78:9A
$ sudo udhcpc -b -i eth1
..or similar (this example is for wep)?
Title: Re: Dell Mini 9
Post by: tinypoodle on July 27, 2010, 04:30:36 AM
Quote
"eth1    Failed to read scan data : Invalid argument".  The same message appears after "iwlist scanning".
The same message would appear after "iwlist s" as well  :P
If eth1 is the wireless interface then this output indicates that extensions are loaded, but might need
Code: [Select]
sudo ifconfig eth1 up
and/or
Code: [Select]
sudo iwconfig eth1 mode managed
first, depending on particular driver.
Title: Re: Dell Mini 9
Post by: h-munster on July 27, 2010, 12:20:53 PM
Thank you for the suggestions!

"ifconfig eth1 up" alone did the trick.  It's now working in my bootlocal.sh.

Just curious, why does one now have to blacklist the Broadcom modules and manually start the wireless interface? -- I don't recall having to make these moves on earlier versions of TC.

The only thing left is to figure out why TC boots into the console, instead of Xvesa.

Thanks!

Title: Re: Dell Mini 9
Post by: Juanito on July 27, 2010, 08:49:48 PM
Just curious, why does one now have to blacklist the Broadcom modules and manually start the wireless interface? -- I don't recall having to make these moves on earlier versions of TC.

You're not blacklisting the broadcom module, you're blacklisting the reverse engineered in-kernel module (b43) - wl is the broadcom module.

b43/ssb were not in earlier kernels/versions of tc, hence there was no need to blacklist them.

As mentioned elsewhere, you'd possibly get more functionality out of using b43 and firmware rather than wl.
Title: Re: Dell Mini 9
Post by: h-munster on July 28, 2010, 01:27:22 AM
Quote
You're not blacklisting the broadcom module, you're blacklisting the reverse engineered in-kernel module (b43) - wl is the broadcom module.

Oh.  That's correct.  Thanks for the reminder.


Quote
As mentioned elsewhere, you'd possibly get more functionality out of using b43 and firmware rather than wl.

Thank you for the suggestion.  I might try it, but installing the firmware seems a little involved, and there are a few variables which are unknown to me.

It looks like I need to compile version 013 of b43-fwcutter.  I don't think that I can use b43-fwcutter.tcz in the repository, because it is version 012.  So, apparently I must have a compiler (which I guess means installing gcc.tcz)  and headers for libc.  Which extension contains the libc headers?

These seem to be the instructions for installing the firmware for my wireless card with kernel 2.6.33.3:  http://linuxwireless.org/en/users/Drivers/b43#fw-b43-lp (http://linuxwireless.org/en/users/Drivers/b43#fw-b43-lp)  However, in TC, to which directory do I install the firmware?  TC hasn't a "/lib/firmware" directory nor a "/usr/local/lib/firmware."  I did find "/sys/firmware."

By the way, I solved the problem with TC booting into a console instead of Xvesa.  I had cleaned out out all of the config files in the /home/tc directory, assuming that they would be automatically repopulated after booting TC 3.0.  I had no ".profile" and no ".Xdefaults" (which explains why I wasn't seeing any transparent aterms).  I am still not sure what caused the strange resolution behavior that I experienced.
Title: Re: Dell Mini 9
Post by: tinypoodle on July 28, 2010, 03:10:37 AM
It's /lib/firmware
You might temporarily want to load the firmware-*-tinycore.tcz extension to get the path structure, or alternatively just look at firmware-*-tinycore.tcz.files  ;)
Title: Re: Dell Mini 9
Post by: Juanito on July 28, 2010, 03:25:19 AM
Thank you for the suggestion.  I might try it, but installing the firmware seems a little involved, and there are a few variables which are unknown to me.

It looks like I need to compile version 013 of b43-fwcutter.  I don't think that I can use b43-fwcutter.tcz in the repository, because it is version 012.  So, apparently I must have a compiler (which I guess means installing gcc.tcz)  and headers for libc.  Which extension contains the libc headers?

These seem to be the instructions for installing the firmware for my wireless card with kernel 2.6.33.3:  http://linuxwireless.org/en/users/Drivers/b43#fw-b43-lp (http://linuxwireless.org/en/users/Drivers/b43#fw-b43-lp)  However, in TC, to which directory do I install the firmware?  TC hasn't a "/lib/firmware" directory nor a "/usr/local/lib/firmware."  I did find "/sys/firmware."

To compile, you just need to use the appbrowser to download/install compiletc - this will get all of the required extensions for you.

You can create /lib/firmware, copy the firmware files to there and make your own extension out of it. /usr/local/lib/firmware would probably also work, but I didn't try this myself.
Title: Re: Dell Mini 9
Post by: h-munster on July 28, 2010, 10:09:56 AM
Quote
You might temporarily want to load the firmware-*-tinycore.tcz extension to get the path structure, or alternatively just look at firmware-*-tinycore.tcz.files

Thanks.  I can't seem to find any "firmware-*-tinycore.tcz" extensions, but I looked at the file list for "firmware-iwlwifi.tcz" and it puts almost everything into "/usr/local/lib/firmware."  It's helpful to see that directory structure.  I assume that installing this extension as onboot will maintain an automatically persistent "/usr/local/lib/firmware" directory, but then, how would one keep the manually created b43 firmware from disappearing from that directory at shutdown?


Quote
To compile, you just need to use the appbrowser to download/install compiletc - this will get all of the required extensions for you.

Thanks.  That sounds easy!


Quote
You can create /lib/firmware, copy the firmware files to there and make your own extension out of it. /usr/local/lib/firmware would probably also work, but I didn't try this myself.

Okay.  So, if I can make an extension for the new firmware files, I would need to install it as onboot to keep it automatically persistent?
Title: Re: Dell Mini 9
Post by: tinypoodle on July 28, 2010, 10:15:22 AM
Quote
You might temporarily want to load the firmware-*-tinycore.tcz extension to get the path structure, or alternatively just look at firmware-*-tinycore.tcz.files

Thanks.  I can't seem to find any "firmware-*-tinycore.tcz" extensions
* is meant as wildcard for the variable kernel version number  ;)
Title: Re: Dell Mini 9
Post by: h-munster on July 28, 2010, 10:42:36 AM
Quote
* is meant as wildcard for the variable kernel version number

Thanks.  I understood the wild card.  I just couldn't seem to find any extensions named:  "firmware" <wild card> "tinycore.tcz".
Title: Re: Dell Mini 9
Post by: tinypoodle on July 28, 2010, 11:34:50 AM
Oh, sorry, changed name to firmware.tcz with 3.x
http://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/3.x/tcz/firmware.tcz.list (http://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/3.x/tcz/firmware.tcz.list)
Also path changed from /lib/firmware to /usr/local/lib/firmware
Title: Re: Dell Mini 9
Post by: Juanito on July 28, 2010, 12:10:06 PM
Okay.  So, if I can make an extension for the new firmware files, I would need to install it as onboot to keep it automatically persistent?

Affirmative