Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - mitchrl

Pages: [1] 2 3
1
6000 - Tosa / Scsi_mod Kernel Module For Usb Cdrom
« on: April 29, 2005, 06:14:56 am »
Hi drdank,
I think you have a usb hotplug issue. Support for your device may be in the kernel but it is not properly recognized. To fix this you will need a new usb storage module (usb-storage.o). The process is essentially the same as compiling a new kernel. Download the 6000 kernel source. Find the file unusual_devs.h and modify with the appropriate information for your usb device. You don't have to build the entire kernel but just do a "make modules". Take the new usb-storage.o and copy to your 6000.

With the combination of manufacturer and device (from dmesg) you may find information about your usb device on www.qbik.ch. Somebody may have already gone through this exercise for this device.

Hope this helps!
Robert

2
6000 - Tosa / USB Mouse?
« on: March 26, 2005, 06:18:23 am »
Extending the scheme where I am autoloading keyhelper to remap keys on my usb keyboard by using hotplug events here is the same thing for inputhelper. By using the following script named 'usbmouse' and placing it in /etc/hotplug/usb:

#!/bin/bash
#
#
if [ "${ACTION}" = "add" ]; then
  export PATH=/home/QtPalmtop/bin:/root/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
  export LD_LIBRARY_PATH=/home/QtPalmtop/lib
  export QTDIR=/home/QtPalmtop
  export QPEDIR=/home/QtPalmtop
  sudo -u root qcop QPE/InputHelper 'handle()'
  echo "#!/bin/bash" > $REMOVER
  chmod 777 $REMOVER
  echo "export PATH=/home/QtPalmtop/bin:/root/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin" >> $REMOVER
  echo "export LD_LIBRARY_PATH=/home/QtPalmtop/lib" >> $REMOVER
  echo "export QTDIR=/home/QtPalmtop" >> $REMOVER
  echo "export QPEDIR=/home/QtPalmtop" >> $REMOVER
  echo "sudo -u root qcop QPE/InputHelper 'handle()'" >> $REMOVER
fi

mouse support is enabled when the usb mouse is attached and disabled when it is removed. Hope this helps.

Robert

3
6000 - Tosa / Keyboards?
« on: March 24, 2005, 08:07:20 am »
Sorry it's taken so long to respond. Here's a quick summary of what I have done so far:

On my particular usb keyboard (PSK-3100U), the '\|' key and the insert key were non-functioning. I took the 6000 kernel source and modified usbkbd.c to enable the '\|' key and I swapped the insert key with the meta key. I'm not sure what the functionality of the insert key is on the 6000 and it does not seem to be mapped to any key in particular but I still wanted it anyway. Once it's mapped to the meta key, I use keyhelper to remap it to the insert key. Sorry if this does not make any sense. Anyway, I made the usbkbd module and moved it to my 6000. I can provide it if you care to try it but it will probably only work with this particular model of keyboard. Be sure to back up your original usbkbd.o and remember to unload hid.o and usbkbd.o from memory.

I then modified the keyhelper.xml that RobbH provided to add the insert key. I removed the mapping for '\' and '|' since these keys are working with the new usbkbd.o. My keyhelper.xml is attached.

Here's the cool part. Part of the functionality of hotplug is that for a particular module (for example usbkbd), if a script is placed by that name in /etc/hotplug/usb, it will be executed. I figured that I could manipulate keyhelper from this script and change key mapping on the fly whenever the keyboard is plugged or unplugged. To do this I had to install the sudo package. Here is my usbkbd script:

#!/bin/bash
#
# Calls keyhelper when usb keyboard is attached
# Also creates script to disable keyhelper when usb keyboard is removed
#
if [ "${ACTION}" = "add" ]; then
  export PATH=/home/QtPalmtop/bin:/root/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
  export LD_LIBRARY_PATH=/home/QtPalmtop/lib
  export QTDIR=/home/QtPalmtop
  export QPEDIR=/home/QtPalmtop
  sudo -u root khctl reload
  echo "#!/bin/bash" > $REMOVER
  chmod 777 $REMOVER
  echo "export PATH=/home/QtPalmtop/bin:/root/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin" >> $REMOVER
  echo "export LD_LIBRARY_PATH=/home/QtPalmtop/lib" >> $REMOVER
  echo "export QTDIR=/home/QtPalmtop" >> $REMOVER
  echo "export QPEDIR=/home/QtPalmtop" >> $REMOVER
  echo "sudo -u root khctl disable" >> $REMOVER
fi

When the keyboard is attached, this script is called and uses sudo to enable keyhelper. It also creates a script that is called when the keyboard is removed (more hotplug functionality). This particular script disables keyhelper.

I can see the gears in your mind working since this script can be used with almost any kind of usb device to perform a custom action. There are other variables available such as PRODUCT where you can differentiate between devices.

I hope this is of some use.

Robert

4
6000 - Tosa / Keyboards?
« on: March 17, 2005, 03:12:03 pm »
I just want to follow up to my previous post in this thread concerning modifying the usbkbd module to work with my mini usb keyboard and the 6000.

First I enabled non-working keys by modifying usbkbd.c from the 6000 kernel source, compiling the module and copying to the 6000.

Then by using the keyhelper configuration file that RobbH provided earlier in this thread, I have the proper scancode combinations working with the usb keyboard.

Last I was able to set up a script that is called by the hotplugging subsystem whenever the keyboard is plugged in. By using keyhelper, this script enables the keyhelper configuration file when the keyboard is plugged in and it disables keyhelper when the keyboard is unplugged thus returning the normal functionality to the built-in keypad.

I'll be glad to go into more detail if anyone is interested.

Robert

5
Angstrom & OpenZaurus / Oz 3.5.2, 6000: Usb Keyboard Mapping?
« on: March 13, 2005, 06:29:25 am »
My reply is slightly OT as I have not tried oz on my 6000 yet. I believe the oz and sharp roms are similar enough that my comments may help.

There are two pieces to this puzzle, the kernel and the rom. The kernel has it's own key mapping but this is ignored by qt except for keycodes. Keycodes are mapped by the kernel and scancodes are mapped by qt. The kernel will associate a hardware key to a keycode, for example: 'A' is 1, 'B' is 2, etc. Then qt will associate a scancode with the keycode: 1 is 'a', shift 1 is 'A', fn 1 is '!', etc. This particular mapping is unique for the tosa (6000) keyboard and will vary by model.

Usb host functionality with hotplugging changes the keycode assignments assuming your usb keyboard is properly recognized. When a usb keyboard is attached, first hid.o is loaded and then usbkbd.o is loaded. Usbkbd changes the keycode mapping based on what is probably a standard us 101 keyboard. If you compare usb keyboards, especially the miniature ones, you'll see that keys are placed all over the place. This is one reason why some keys work, some keys don't work and some are wrong. Then you have to consider the qt scancode mappings. These do not change when you attach the usb keyboard. This is why the shift number keys are boogered.

The scancode problem is the easiest to fix. Just use keyhelper (I'm assuming there is a oz version in the feeds, correct me if I'm wrong). I think someone has posted a keyhelper config file in the 6000 hardware forum (look in the usb keyboards thread) which will get you started.

The keycode problem is a little more complicated. To fix this you will need the 6000 kernel source and a cross compiler. In usbkbd.c, you will find this section that changes the keycode mapping:

static unsigned char usb_kbd_keycode[256] = {
 0,  0,  0,  0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 41, 42,
43, 44, 45, 46, 47, 48, 49, 50, 28, 34, 31, 65, 92, 51, 52, 55,
54,  0, 97, 95, 96, 70, 98, 99,100, 60, 33, 58, 94, 39, 88, 89,
90,110,117,120, 30, 40,115,  0,  0,  0,104,106, 81,105,107, 124,
121,123,122, 32, 82, 83, 85, 86, 87, 71, 72, 73, 74, 75, 76, 77,
78, 79, 80, 93,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,101, 69, 53,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
56, 27, 57, 29,111,112,113,114,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
};

I'm using a model PSK-3100U mini keyboard which can be found on ebay as a "Traveller". I replaced the previous lines of code with this:

static unsigned char usb_kbd_keycode[256] = {
 0,  0,  0,  0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 41, 42,
43, 44, 45, 46, 47, 48, 49, 50, 28, 34, 31, 65, 92, 51, 52, 55,
54, 53, 97, 95, 96, 70, 98, 99,100, 60, 33, 58, 94, 39, 88, 89,
90,110,117,120, 30, 40,115,  0,  0, 82,104,106, 81,105,107, 124,
121,123,122, 32, 82, 83, 85, 86, 87, 71, 72, 73, 74, 75, 76, 77,
78, 79, 80, 93,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,101, 69, 53,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
56, 27, 57, 29,111,112,113,114,  0,  0,  0,  0,  0,  0,  0,  0,
 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
};

There are only a few changes here but enough to get my non-functioning keys working. Other models of keyboards will need to be customized as needed. You will need to go through the process of compiling a kernel but just do a "make modules" to create the usbkbd.o. Then copy the new module to your 6000.

Upon attaching the keyboard, I issue a "khctl reload" from the console. When I remove the keyboard, I issue "khctl disable". Without the "khctl disable", the key assignment on the built-in keyboard of the 6000 is screwed up.

So the short answer to your query is "Yes, but...".

What I would like to do next is automate the keyhelper part of this procedure. With hotplugging, there are places to tie these pieces together. Unfortunately, I have not been able to successfully send qcop messages from usbkbd.o or from scripts that are called by hotplugging. Any insight into this would be appreciated.

HTH,
Robert

6
6000 - Tosa / Keyboards?
« on: January 05, 2005, 06:46:17 am »
Quote
I'm interested in picking one of these up, but can you tell me if the keys map out correctly? I've found when I use an HP USB keyboard I have that many of the keys either are not mapped correctly, or do not produce anything at all. Have you tried all of the keys on the 3100U?

Thanks,

gdog
I don't think you will have much luck finding a keyboard that will map the way you think it should. AFAICT, mapping is dependent on the kernel and QT on the 6000.

However, I took a look at the code for usbkbd.o, which I think is the usb keyboard input module that is loaded when the usb hotplug identifies that a usb keyboard has been plugged in.

There is a keycode matrix that is specific to the tosa (6000) architecture when usbkbd.c is compiled. I swapped the codes for the standard one and did a modules make. I copied the new usbkbd.o to my zaurus (I renamed the old one first) and plugged in the keyboard.

This did change the keys. For example, instead of "F1" toggling the backlight, the "F" key is now the backlight toggle.

Interesting enough, by unloading the modules usbkbd and hid, and then loading the original usbkbd (different name tho) and reloading hid, I was able to return to the original keyboard mapping.

I'm going to play with the scancodes and see if I can come up with a mapping that is workable with this keyboard. I'll let you know how it goes.
Robert

7
6000 - Tosa / Keyboards?
« on: December 24, 2004, 06:43:39 am »
Here is a nice keyboard that I purchased off of Ebay for just under $27 w/shipping:

PSK-3100U

It's about 8 3/4" x 4 1/8" and about 1/2 " at its thickest. My 6000 recognized it instantly when I plugged it into the usb port. Interestingly enough, QT has already mapped some of the function keys to various actions (various PIMs, rotation, start voice recording, etc).
Robert

8
Accessories / Accessories Availability
« on: December 04, 2004, 06:19:46 am »
Unfortunately, I know of no retail stores that stock Zaurus or Zaurus supplies. You should be able to find good deals on cf and sd memory, microdrives, cf wireless etc at the following stores:

Compusa
Microcenter
Office Depot
OfficeMax
Best Buy

I'm sure I left out some. My favorite store here in Houston is Fry's but they are not located in Ohio. As far as what and what not to buy, search the forum for recommendations. Good luck!
Robert

9
6000 - Tosa / kernel configuration file
« on: November 09, 2004, 05:28:54 am »
The name of the config file for the 6000 is tosa-j where tosa is the code name for the 6000. Slightly off-topic but does anyone know the code name for the new 3000? Thanks!
Robert

10
Deals and Great Z Buys / HITACHI 4Gb Microdrive Retail for about $175
« on: October 29, 2004, 07:00:51 am »
Fry's has the 4Gb Hitachi for $179.99. I don't know if it is oem so the rebate may not apply. Not a bad deal if you want to buy one right now!
Robert

11
Deals and Great Z Buys / eXpansys experiences?
« on: October 24, 2004, 05:57:08 am »
I've only ordered one item from them (Expansys USA) and I received it without any problems or unreasonable delay. I would buy from them again.
Robert

12
6000 - Tosa / SL-6000L CD
« on: October 04, 2004, 05:07:47 pm »
Try this:

Sharp Handhelds - Zaurus

The download for the CD is large. I hope you have broadband. hth.
Robert

13
Angstrom & OpenZaurus / Hancom Apps
« on: September 27, 2004, 09:46:36 am »
I've installed Hancom word and sheet. I have a sl-5600 and have installed everything so far to my sd card which is formatted ext2. My procedure may or may not work for you.

In package manager, I defined a target "card" which points to /mnt/card. You will also need to install the compatibility libs. Find and download the older Hancom ipks (I could not get the 1.5.0s to work).

From terminal, I used ipkg to install from my cf card:
for sheet:

ipkg install /mnt/cf/hancomsheet-en_1.0.1_arm.ipk -d card -force-depends
(you can ignore the error concerning gpe-base since it is already in oz thus the force-depends)

Find out where the app resides (from terminal you can use "find /opt/ -name hancomsheet").
Then from terminal "makecompat /opt/QtPalmtop/bin/hancomsheet"
Also from terminal (if you are installing to card or cf) "ipkg-link mount /mnt/card"

For good measure go to "Settings" and then "Shutdown" and "Restart Opie". The icon for HancomSheet will then show up in the apps tab.

You can pretty much repeat this for Hancom Word. The app name is HancomMobileWord.

This is a little complicated but once you install one app like this, the rest are easy. HTH,
Robert

14
Software / maps/travel software
« on: September 21, 2004, 05:53:04 am »
Quote
The problem is, which of the numbered map files are for the part of Texas I live in?  They would not all fit on my 128M card, so I just want the ones for the Dallas / Fort Worth and surrounding areas.  How do I know which files to install to get an address that I can find in my area?

Thanks,
  --  RJ
There is probably a better source than this but try this:

http://quickfacts.census.gov/qfd/maps/texas_map.html

Either look at the properties of the individual counties or look at the bottom status line of your browser (if you are using IE, sorry!) with a mouse-over. This should help you out. For example for DFW:

Tarrant County = 48439 = usc48439.rdm
Dallas County = 48114 = usc48114.rdm

I'm sure you can figure it out from this.
hth,
Robert

15
General Discussion / Sprint PCS Compact Flash CF 2031 Wireless Card
« on: September 16, 2004, 04:39:12 am »
I have this card and can confirm that wireless access works on both my SL-5600 and SL-6000. You can only use it as a phone using Windows or WinCE. You can find Zaurus drivers on SDG Systems website.

Robert

Pages: [1] 2 3