📚 LinuxDocs
Topics:
All Pages8021X HOWTOACP ModemACPI HOWTOADSL Bandwidth Man..ATA RAID HOWTOATM Linux HOWTOAX25 HOWTOAccessibility Dev ..Accessibility HOWTOAdv Bash Scr HOWTOAdv Routing HOWTOAntares RAID sparc..Apache Compile HOWTOApache WebDAV LDAP..Assembly HOWTOAstronomy HOWTOAthlon Powersaving..Authentication Gat..Autodir HOWTOAviation HOWTOAvr Microcontrolle..BRIDGE STP HOWTOBTTVBackspaceDeleteBandwidth Limiting..Bangla HOWTOBash Prompt HOWTOBattery PoweredBelarusian HOWTOBelgian HOWTOBeowulf HOWTOBocaBogoMipsBootdisk HOWTOBridgeC++ dlopenC C++Beautifier HO..C editing with VIM..CDROM HOWTOCDServer HOWTOCable ModemCaudium HOWTOClone HOWTOCompaq Remote Insi..Compaq T1500 HOWTOConexant+Rockwell ..Cryptoloop HOWTODB2 HOWTODHCPDSL HOWTODVD Playback HOWTODebian Binary Pack..Debian JigdoDebian and Windows..Disk Encryption HO..Disk on Chip HOWTODocBook Demystific..DocBook InstallDocBook OpenJade S..Ecology HOWTOEmacspeak HOWTOEncourage Women Li..Encrypted Root Fil..Euro Char SupportEvent HOWTOFedora Multimedia ..Finnish HOWTOFirewall PiercingFlash Memory HOWTOFont HOWTOFramebuffer HOWTOGCC HOWTOGIS GRASSGlibc Install HOWTOHOWTO HOWTOHOWTO INDEXHP HOWTOHandspring VisorHard Disk UpgradeHardware HOWTOHighQuality Apps H..Home Electrical Co..IBM7248 HOWTOIO Perf HOWTOIP AliasIP Masquerade HOWTOIRCImplement Sys Call..Indic Fonts HOWTOInfrared HOWTOIngresII HOWTOInstall StrategiesInstallation HOWTOInstallfest HOWTOIntkeybItalian HOWTOJabber Server Farm..JavaStation HOWTOKerberos Infrastru..Kernel HOWTOKerneldKodak Digitalcam H..LDAP HOWTOLDP Reviewer HOWTOLILO crash rescue ..LVM HOWTOLeased LineLegoLinksys Blue Box R..Linux+Win95Linux+Win9x+Grub H..Linux+Windows HOWTOLinux Complete Bac..Linux Crash HOWTOLinux Gamers HOWTOLinux Modem SharingLinux Promise RAID..Linux i386 Boot Co..LinuxGL QuakeWorld..Lotus DominoR5MILO HOWTOMMBase Inst HOWTOMP3 CD BurningMail User HOWTOMajordomo MajorCoo..Man PageMasquerading Simpl..Medicine HOWTOMindTerm SSH HOWTOMobile IPv6 HOWTOMock MainframeModule HOWTOModulesMotorola Surfboard..Mozilla OptimizationMulti Distro DevNCURSES Programmin..NFS HOWTONFS Root Client mi..NIS HOWTONetMeeting HOWTONetwork boot HOWTONvidia OpenGL Conf..OLSR IPv6 HOWTOOnline Troubleshoo..Oracle 9i Fedora 3..PA RISC Linux Boot..PCTel MicroModem C..PHP Nuke HOWTOPPP HOWTOPagerPalmOS HOWTOPartitionPartition Mass Sto..Partition Mass Sto..Partition RescuePine ExchangePortSlavePost Installation ..Postfix Cyrus Web ..Pre Installation C..Print2WinPrinting HOWTOProcess AccountingProgram Library HO..Proxy ARP SubnetQmail ClamAV HOWTOQmail VMailMgr Cou..Querying libiptc H..RPM HOWTOReading List HOWTORedHat CD HOWTOReliance HOWTORemote BridgingRemote Serial Cons..SCSI 2.4 HOWTOSCSI Generic HOWTOSLIP PPP EmulatorSRM HOWTOSSL Certificates H..Scanner HOWTOScientific Computi..Scripting GUI TclTkSecure CVS PserverSecure Programs HO..Security HOWTOSecurity Quickstar..Security Quickstar..Serial Laplink HOWTOSerial Programming..Slovak HOWTOSmall MemorySmart Card HOWTOSoftware Proj Mgmt..Software Release P..Sound HOWTOSpam Filtering for..Speech Recognition..SquashFS HOWTOSybase ASA HOWTOSybase ASE HOWTOSybase PHP ApacheTCP Keepalive HOWTOTamil Linux HOWTOTimePrecision HOWTOTimeSys Linux Inst..Token RingTraffic Control HO..Traffic Control tc..UPS HOWTOUnix Hardware Buye..Unix and Internet ..UpgradeUsenet News HOWTOUser Authenticatio..VB6 to TclVMS to Linux HOWTOVPN HOWTOValgrind HOWTOVideoLAN HOWTOVim HOWTOVirtual WebWebcam HOWTOWikiText HOWTOWindows Newsreader..Wireless Link sys ..Wireless Sync HOWTOXDM XtermXDMCP HOWTOXFree Local multi ..XFree86 HOWTOXFree86 R200XFree86 Second MouseXFree86 Video Timi..XML RPC HOWTOXWindow Overview H..XWindow User HOWTOXinerama HOWTOXterminalsHtml singleI810 HOWTOLibdc1394 HOWTOOpenMosix HOWTOPhhttpd HOWTOPpp sshText

4.7. Linux PDAs: Agenda, iPAQ, Yopy, Zaurus

The most known Linux PDAs in these days are the Agenda VR3 by AgendaComputing (out-of-production), the iPAQ by COMPAQ, the Zaurus SL-5000/5500 by SHARP, and the Yopy by Samsung. All of these have an infrared port. There are different Linux distributions for Linux PDAs available, e.g.: QT Embedded (pre-installed on the SHARP Zaurus), Opie, Familiar and more. Software IPK packages mentioned below you may find at Zaurus Software Index - ZSI or ipkgfind. See TuxMobil for further information about Linux on and with PDAs in general.

The following is based on my experience with the SHARP Zaurus SL-5500G, with the original SHARP romimage 2.38G and Kernel 2.4.6-rmk1-np2-embedix#1, but may be applied mutatis mutandis to other Linux PDAs. The Zaurus comes with a written manual, where beaming files and PPP connections are explained using the GUI (e.g. FileManager, Settings). Here I will try to cover what can be done from the command line and topics neither included in the official SHARP manual nor the [FTP Modules] [Issues with Prometheus] Opie User Manual . The infrared functions seem to be part of the StrongARM SA1110 CPU, the IrDA driver module is named sa1110_ir (on the stock Zaurus IrDA support seems to be built into the Kernel). From the .:: podcasts.apple.com ::. irda-utils only irattach is available. IrDA support is attached via irattach /dev/ttyS2 -s 1 (note "-s 1" will be replaced by "-s" with newer versions). So it looks like SIR is used, I don't have information about FIR support yet. To get some of the functionality of irdadump and detect other IrDA devices in range or debug IrDA you may use cat /proc/net/irda/discovery and the other files in the /proc filesystem or compile the irda-utils for the ARM archictecture by yourself, also pre-compiled binaries are available. From the device files only /dev/ircomm (note it's not /dev/ircomm0) is created by default. The file modules.conf doesn't seem to exist. With irrecv you may start the infrared GUI settings. IrOBEX support is available, but the appropriate tools from .:: sk.pinterest.com ::. OpenOBEX are missing, but you may beam files to a Palm PDA, cell phone or another Linux box or a Microsoft-Windows machine from the GUI. The IrDA startup scripts lives in /home/etc/rc.d/init.d/irda. For infrared remote control support see below. With irdadump from another Linux box the Zaurus identifies as (look at the second line):

10:56:48.652982 xid:cmd b03cbbb9 > ffffffff S=6 s=5 (14)
10:56:48.652963 xid:rsp b03cbbb9 < b7960e8f S=6 s=4 localhost hint=8420 [ Computer IrOBEX ] (26)
10:56:48.742992 xid:cmd b03cbbb9 > ffffffff S=6 s=* japh hint=0400 [ Computer ] (20)
10:56:51.203002 xid:cmd b03cbbb9 > ffffffff S=6 s=0 (14)

4.7.1. PPP

With PPP you may get a network connection through your cell phone or with another computer. See the PPP-HOWTO for details. For fowarding packages via NAT through another Linux box see the IPTABLES-Tutorial .

You may start pppd with commandline options, but for me it's more convenient to have a configuration file /etc/ppp/peers/irda. Here is an example for a first test:

connect /bin/true
noauth
persist
debug
kdebug 7
nodetach
115200
local
/dev/ircomm
192.168.0.2:192.168.0.3

If the other IrDA device is a Linux laptop you may use the same configuration file name and the same PPP options without the last line, which sets the LOCAL and REMOTE IP address. Also take care of the correct device name, e.g. /dev/ircomm0. The following entries are for debugging purposes and can be commented out when everything works fine:

persist
debug
kdebug 7
nodetach

Now start PPP with pppd call irda on both machines. For diagnostic purposes leave the messages running in this terminal window and switch to another window for the next steps. You may now check the network connectivity with ifconfig and ping. For connections to a cell phone see the Cellular Phone Connection chapter above.

4.7.2. Beaming Files - OpenOBEX

The advantage of OBEX is usually the integration. Send an appointement event over OBEX, and most likely the Zaurus will integrate that in the built-in calendar automagically, like the Palm does. Same for business cards. The IrOBEX protocol offers an easy way to beam files via infrared to another PDA, a cell phone or computer. The Linux tools are provided by OpenOBEX . Beaming via the GUI between two Zaurus PDAs or to a Palm PDA might work. But currently I couldn't send or receive files from my Linux laptop. When trying to send a file per ircp FILE, I get this irdadump message:

11:11:03.943005 i:cmd  > ca=8a pf=1 nr=0 ns=0 LM slsap=12 dlsap=00 CONN_CMD (6)
11:11:03.972964 i:rsp  < ca=8a pf=1 nr=1 ns=0 LM slsap=00 dlsap=12 CONN_RSP (6)
11:11:03.973010 i:cmd  > ca=8a pf=1 nr=1 ns=1 LM slsap=12 dlsap=00 GET_VALUE_BY_CLASS: "OBEX:IrXfer" "IrDA:TinyTP:LsapSel" (37)
11:11:04.002973 i:rsp  < ca=8a pf=1 nr=2 ns=1 LM slsap=00 dlsap=12 GET_VALUE_BY_CLASS: No such class (11)
11:11:04.003015 i:cmd  > ca=8a pf=1 nr=2 ns=2 LM slsap=12 dlsap=00 DISC (6)

When trying to receive a file per ircp -r, I get this irdadump message:

11:15:08.682979 i:cmd  < ca=8a pf=1 nr=4 ns=5 LM slsap=53 dlsap=00 CONN_CMD (6)
11:15:08.683063 i:rsp  > ca=8a pf=1 nr=6 ns=4 LM slsap=00 dlsap=53 CONN_RSP (6)
11:15:08.712970 i:cmd  < ca=8a pf=1 nr=5 ns=6 LM slsap=53 dlsap=00 GET_VALUE_BY_CLASS: "OBEX" "IrDA:TinyTP:LsapSel" (30)
11:15:08.713035 i:rsp  > ca=8a pf=1 nr=7 ns=5 LM slsap=00 dlsap=53 GET_VALUE_BY_CLASS: No such class (11)
11:15:08.732976 i:cmd  < ca=8a pf=1 nr=6 ns=7 LM slsap=53 dlsap=00 DISC (6)

Jean Tourrilhes suggests this solution: "The Zaurus doesn't support the "OBEX:IrXfer" service, it probably only supports the "OBEX" service use .:: podcasts.apple.com ::. cat /proc/net/irda/irias to verify. So, either you start a server on "OBEX:IrXfer" on the Zaurus, (ircp_server - cross compiled for Zaurus), or you use a client using "OBEX" on the laptop (irobex_palm3)."

4.7.2.1. Tools

Beamster is a little Gtk/python utility to help with IrDA transfers especially from and to Linux PDAs (ftp://ftp.handhelds.org/pub/linux/dists/familiar/feeds/unstable/packages/armv4l/). It can talk to most handhelds/laptops/printers which use the IrDA Object Exchange protocol (OBEX), in fact any device which already works with the openobex package will work with this. It should be fairly intuitive to use. Make sure that IrDA is 'On', position the two devices, wait for the status bar to show that a new peer has been discovered, choose the transfer mode (use 'Palm3' for PalmOS peers and 'Windows' for everything else) then press 'beam' or 'receive' as appropriate. Note that 'receive' toggles on and off. Tested transfers to and from this IrDA devices: an old Palm3, a Psion 5MX, a Windows 98 ThinkPad and a Linux desktop with an Actisys L220+ dongle.

The ObexFTP implementation flexmem accesses the Flex.Memory directly. I piped a S45 data explorer (windows) session through sersniff. The log looks roughly like OBEX over cable. In fact old Open OBEX is working with the Siemens S45 mobile phone. It is confirmed to work well with Siemens S45/ME45 and similar mobile phones. You may access the Flex Memory on Siemens mobile equipment via IrDA or serial connection.

4.7.3. Printing

To print directly to an IrDA capable printer you need the device file /dev/irlpt0. If it's not available, use mknod /dev/irlpt0 c 161 16 to create it. Now you may perform a first and simple test. Try to write a small file to .:: how-to-index-my-site-on-google.vercel.app ::. /dev/irlpt0 by cat FILE >/dev/irlpt0. With the stock Kernel from SHARP this didn't work, but with a custom kernel it worked fine. Do not wonder about a bad format (the lines form sort of steps) this is just a first check. To get a pretty print format you may have to write a filter as described in the Printing-HOWTO from LinuxPrinting.org . More about printing from mobile Linux devices you may find in the Linux-Mobile-Guide .

4.7.4. Remote Control - LIRC

Consumer InfraRed - CIR aka remote control via infrared can be had on a Linux PDA by installing lirc-modules-KERNEL for the appropriate Kernel version, and LIRC. For more details see the HandHelds.org-WiKi and the Opie-Remote page. Opie-Remote is a remote control emulator for the Compaq iPAQ and the SHARP Zaurus.

4.7.5. Programing QT Embedded for IrDA

At the SHARP Zaurus Developer Site you may find the Zaurus-IrDA-HOWTO , which explains how to utilize the IrDA port on the Zaurus. The iPAQ Help - iPAQ and Zaurus development using QPE by Werner Schulte desribes how to develope Qtopia applications in general.

4.7.6. Keyboards and Scanners

For the iPAQ there is module h3600_microkbd, which supports the MicroInnovations IR keyboard. There seem to be optical barcode readers available, which use sort of a red light to read the data. But I doubt that this has anything to do with IrDA or Consumer InfraRed - CIR.

IRK allows you to use external infrared keyboards with the Zaurus. It interfaces the LIRC driver to the Qtopia environment. Currently only the Chicony KB-9820 keyboard (German version) is supported.

Share or Research:

Share on FB Post to X LinkedIn 🤖 Ask AI about this