Archive for February, 2010

February 20th, 2010
1:33 pm
Imedia Embedded Linux – xorg.conf configuration issues

Posted under Linux
Tags , ,

These issues came about when trying to change the screen resolution/refresh rate on my diskless LinITX Jupiter PC.
This simple exercise became a real nightmare with a really steep learning curve. However, as they say, experience is what you get when you are looking for something else! The full details of this saga are as follows. Motherboard documentation and sample xorg.conf files are just below.

Resources

CVCM2 Motherboard Manual
my xorg.conf for ADI Microscan G910

my xorg.conf for Samsung Syncmaster 2443BW

Hardware Configuration

LinITX Jupiter Fanless Diskless PC
Boot from LAN, USB or internal IDE socket.
Motherboard: CV7CM2
CPU: VIA C7 1Ghz Processor
Chipset: VIA CN700 Northbridge and VT8237R Southbridge
Memory: 1GB DDR2 RAM Installed
LAN: VT 6103 10/100 Fast Ethernet
IDE: One 40pin IDE connector – suitable for use with a 40pin FDM module
USB: Four Rear USB ports and Two Front USB ports
Audio: AC’97 Compliant Audio
BIOS: Award BIOS
Power: Internal DC-DC power supplied from an external AC/DC Adapter (12V 5A DC)
Dimensions: 213mm x 200mm x 45mm

EDC 4000 2GB 40 pin IDE flash drive

Monitor :-
ADI Microscan G910 (original configuration)
Samsung Syncmaster 2443BW (later replacement)

Software Configuration

Imedia embedded Linux 6.0.4
Kiosk build selected
All packages selected (everything installed in addition to Kiosk build)

Configuration Issues

1/ Debugging/usage Tips :-

a/ Details of all the login accounts are posted in the library.

b/ The startup can be interrupted via ctrl/C when the display says “entering run level 3”.
Note that continued pressing of ctrl/C is required to be sure it catches it.
This will then give you an mms prompt.

c/ mms is the autologin user. this is set up in /etc/inittab via the –autologin=mms switch
XFCE is then fired up via the users profile “.profile” in /home/mms.
Note that there are a number of such setup files in the home directory, but the “.xxx” syntax indicates that they are hidden.
You must turn on viewing hidden files to see them.

d/ You can exit from XFCE and restart it without a reboot, using “startx”. Note that you can also just say “X”,
but this does not work – presume it does not use the same script!

e/ You can switch to another login (e.g. root) from any terminal prompt by saying e.g. “su root”.
You can then start XFCE as root (but BE CAREFUL – Linux is easier to trash than windows when fully privileged)

f/ For iMedia Linux with flash, the log files are under a ram disk called /var/log.
The logs are rotating files so that they do not fill the disk.
To read them you must use cat (NOT cp) and/or copy them to another file via cat, e.g.
cat Xorg.0.log > X.log
(followed by a ctrl/d or ctrl/c to terminate as cat also reads from standard input)
Then the resulting file can be copied with cp or viewed with nano/leaf.

g/ For viewing/editing, nano is good in a terminal window as it is modeless and notepad like
leaf is good when in XFCE

2/ After installation, the system would boot to a shell prompt only and would not start XFCE
The solution for this is documented on the iMedia forums here: http://forums.imedialinux.com/index.php?topic=62.0

We had many reports and complaints about graphical mode not working.
Sorry guys for that, we are tying to maintain configuration files for each and every architecture, but it time this proved to a real pain in the ..
Because of hardware differences, many times user could not use at all X graphical mode.
That’s why, in the latest release I created a simple bash script that will force X to auto detect it’s settings and overwriting everything we had in the xorg.conf file.
For those of you who are not so lucky and be prompted with a shell prompt, stopping autologin is pretty easy. As soon as you see “Entering level 3” start pressing CTRL+C key till you get a shell prompt.
Then go to Console 2 or su as root and run xorg-auto-config
NB This causes xorg.conf to be overwritten so save it first!

This auto configure allowed xfce to start but with low refresh rate.

3/ VBEModes was enabled in the “Device” section, to enable the Unichrome Hardware acceleration

Option      “VBEModes” “true”

This improved the resulution but the refresh rate was still low (56Hz or 60Hz)

4/ The correct monitor definition section was then added. The HorizSync and VertRefresh values are important here.
I had to google them for my monitor – the defaults are very low.
(Note that turning off DDC with…

Option  “noddc”

or similar had no effect on increasing the refresh rate.)

Section “Monitor”
Identifier   “Monitor0”
VendorName   “ADI”
ModelName    “ADI Microscan G910”
HorizSync    30-110
VertRefresh  50-160
Option       “DPMS” “true”
EndSection

5/ I added display modes (and a DefaultDepth to set the colour depth that XFCE uses) to the Screen section as follows.
Note that these modes are names which are known internally. I think that it uses a set of VESA modes,
and allows additional ones to be added to here. I’m not quite sure what is going on, but according to the log file,
XFCE needed at least one of these to stop it ‘tripping up’ as it did not find a decent vesa mode/resolution for 1280×1024.
Some forums use e.g. “1280×1024@85” instead of “1280x1024_85” – looks like both syntaxes work but have not confirmed.

Section “Screen”
Identifier “Screen0”
Device     “Card0”
Monitor    “Monitor0”
DefaultDepth 32
SubSection “Display”
Viewport   0 0
Depth     8
Modes     “1280x1024_85” “1152x864_85” “1024x768_100” “800x600_100”
EndSubSection
SubSection “Display”
Viewport   0 0
Depth     16
Modes     “1280x1024_85” “1152x864_85” “1024x768_100” “800x600_100”
EndSubSection
SubSection “Display”
Viewport   0 0
Depth     24
Modes     “1280x1024_85” “1152x864_85” “1024x768_100” “800x600_100”
EndSubSection
SubSection “Display”
Viewport   0 0
Depth     32
Modes     “1280x1024_85” “1152x864_85” “1024x768_100” “800x600_100”
EndSubSection
EndSection

Following this, I had a reasonable choice of resolutions and refresh rates within XFCE.

6/ My final choice (in XFCE) was 1280×1024 @ 86Hz, with a default depth of 32 set in xorg.conf.
I chose 96DPI in the XFCE settings and this gave an excellent display on a 19″ monitor.
75DPI gave more detail on the screen but as I intended to use a CAT5 KVM remote control (i.e. somewhat fuzzy),
I stuck with 96DPI

7/ Keyboard internationalisation was a pain – I first set the correct keyboard settings here :-

Section “ServerLayout”
Identifier     “X.org Configured”
Screen      0  “Screen0” 0 0
InputDevice    “Mouse0” “CorePointer”
InputDevice    “Keyboard0” “CoreKeyboard”
EndSection

… then this later

Section “InputDevice”
Identifier  “Keyboard0”
Driver      “kbd”
Option      “CoreKeyboard”
Option      “XkbRules” “xorg”
Option      “XkbModel” “pc105”
Option      “XkbLayout” “gb”
EndSection

However, this appeared to be ignored and I still had a US keyboard with some keys crossed over etc.
I then discovered that by default, “hotplugging” was enabled, which caused the above settings to be ignored!
Whilst there appeared to be ways of telling hotplugging what the keyboard was, I elected to turn it off as follows :-
(This went right at the top of xorg.conf)

Section “ServerFlags”
Option “AutoAddDevices” “false”
EndSection

As a bonus, I noticed that with hotplugging off, I had less trouble with the mouse after KVM switching to the box.
This was presumably because it tried to reconfigure devices as it thought I had hotplugged something.

8/ Keyboard is still US when in a terminal window either inside or outside XFCE.
It appears that this can be set up here :-
/etc/sysconfig/console
This may also feed into xorg.conf hotplugging automatically should you want to turn this on but not sure.
I have yet to try this out.

9/ Since my original configuration, the monitor has been upgraded, so I have reconfigured xorg.conf. As the CVCM2 motherboard graphics chipset will not do 1920 X 1200, I set the resolution to the maximum I could that looked good, which was 1680 X 1050. For this version, I needed to take the refresh rates out of the Modes option thus :-

Section “Screen”
Identifier “Screen0”
Device     “Card0”
Monitor    “Monitor0”
DefaultDepth 32
SubSection “Display”
Viewport   0 0
Depth     8
Modes     “1680×1050” “1440×900” “1600×1200” “1280×1024” “1152×864” “1024×768” “800×600”
EndSubSection
SubSection “Display”
Viewport   0 0
Depth     16
Modes     “1680×1050” “1440×900” “1600×1200” “1280×1024” “1152×864” “1024×768” “800×600”
EndSubSection
SubSection “Display”
Viewport   0 0
Depth     24
Modes     “1680×1050” “1440×900” “1600×1200” “1280×1024” “1152×864” “1024×768” “800×600”
EndSubSection
SubSection “Display”
Viewport   0 0
Depth     32
Modes     “1680×1050” “1440×900” “1600×1200” “1280×1024” “1152×864” “1024×768” “800×600”
EndSubSection
EndSection

Taking out the refresh rates may have worked better in the original file with the G910, as it may have auto detected the highest refresh rate it could do based on the given horizontal and vertical frequencies. However I have not tried this.
Links to the xorg.conf files (together with the motherboard manual, or at least the best I could find) are at the top of this post. Note that my original xorg.conf for the G910 has an incorrect monitor name in it – this did not appear to cause a problem so I presume the field is just there for documentation purposes.

No Comments »

February 16th, 2010
12:28 pm
PC in a workgroup cannot see other PCs or be seen itself

Posted under Windows
Tags , ,

This problem affected a laptop running Windows XP Home on our workgroup. It could browse shares by IP address e.g. \\10.0.0.2, but could not see computers by name. Removing it from the workgroup/rerunning the network setup wizard to rejoin the workgroup and rebooting had no effect.

This fix from Microsoft solved the problem, details of the manual version of the fix are as follows:-

  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate and then click the following registry subkey:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NetBt\Parameters
  3. In the right pane of Registry Editor, delete the following values if they are present:
      –  NodeType
      –  DhcpNodeType
    Note If the NodeType value is present, this value will override the DhcpNodeType value. If neither subkey is present and if no WINS servers are configured for the client, the computer uses b-node mode. If at least one WINS server is configured, the computer uses h-node mode.
  4. Quit Registry Editor.
  5. Restart the computer.
  6. Try to view workgroup computers on the network again.

No Comments »

February 12th, 2010
1:06 pm
Acronis True Image Home – errors with backups to multiple removable drives

Posted under Windows
Tags , ,

I tried using Acronis TIH 2010 to backup to 2 different removable drives, to rotate them. Initially I mounted each drive as R: when used, which requires changing the drive letter each time. As a consequence of this, I was also using a single TIH backup task and a single TIH validate task for both removable drives. However, when I came to do a separate validation of the backup on the 2nd drive, having already done the first, I received the error “The operation failed” with no other detailed information. This was strange, as the backup process had just done its own validation successfully. I suspected that Acronis was confused between the 2 backups, as both had the same name (as they were done on the same date during testing) and were on the same drive letter, even though they were different volumes. Acronis keeps an internal database of its backups as detailed here, and as the post indicates, it needs to keep track of the renaming/moving of backups. The confusion on this was compounded by this post concerning Acronis Backup & Recovery 10, which states that when using multiple usb drives as rotating backups, the same drive letter should always be used. However, this is clearly not correct in my scenario. In another test, I performed a second incremental backup on each removable drive, and Acronis asked me to browse for the correct full backup when doing the validation phase of the backup – it had clearly become confused.

I switched to using a different drive letter for each volume, R: and S:. As a consequence I also created separate backup and validate tasks for each volume, as each would point to a different drive letter – this also improved clarity as  a side effect – it separated the activiy/logs for each volume which gave a clear view of what had been done. Having done this, I did a full backup with each volume in turn of the same PC, and did an additional validation as well. All of these worked correctly. Crucially, in addition I re-did a validation of the first again at the end, having backed up and validated the second. This still worked correctly – Acronis was now able to track the backups correctly.

The other advantage of separate drive letters is that Windows will try to reuse the same letter for a volume as it used previously, meaning that mostly you will only need to set them once with Disk Manager (this can get messed up if you have additional removable drives in at the time you mount one of the backup ones, as Windows may have already re-used the ‘reserved’ drive letter, but mostly it works fine).

Although I did not test it, I suspect that another solution would be to uniquely label each backup file on each volume, perhaps by incorporating the volume name (e.g. “Backup1”, “Backup2”) as part of the file name. I suspect that this also would remove the ambiguity which was tripping up Acronis. In my case, I was happy to use the same folder and file naming convention on each backup volume, and just keep the drive letters different. You should use drive letters consistently in acronis – if you do not, it will be unable to find the backups it has in its database and will end up prompting for the location of backups when asked to run tasks.

No Comments »

February 4th, 2010
3:05 pm
Samba vs Windows file server/SMB performance

Posted under Windows
Tags , ,

This post is to collate any info in that area, particularly the difference between onboard chipsets like the Realtek 8111DL on the Intel D510MO and cards like the Intel PRO/1000

Interesting post thread here

No Comments »