Joseph Near wrote: > I'm looking to build an SBC-based wearable and it looks like > the preferred board is the Advantech PCM-5822. I don't know if it's the preferred board, but there has been lots of discussion about it recently. I am using this board and am pleased with the small footprint, low cost, and onboard audio. Note that the audio works for playback but not recording and duplex operation in linux. > What would I need to get it running? You need a 144-pin SO-DIMM RAM module, a standard 2.5" laptop hard drive and standard keyboard, mouse, and monitor, plus a 5 volt power supply. You can use power from a desktop PC by extending one of the power cables. The power connector on the PCM-5822 is the same as what's inside your desktop PC. To go mobile you will need a small regulator, I am using the powertrends PT6302A available at Digikey for $22. > It says it supports two IDE devices....can I just hook up > a CDROM and a hard drive and install Linux? The problem is that the IDE interface is the smaller 44-pin variety, not the standard 40-pin cable that desktop PCs use. > Do I need an extra cable to get a regular IDE connector? This is a problem I haven't solved. There are converters from 40-pin IDE to 44-pin, allowing you to use a small 2.5" (44-pin) HDD with a standard IDE (40-pin) cable. Unfortunately, I have not seen cables that work in the opposite direction (44-pin to 40-pin) which would allow you to hook up a CD-ROM drive to the PCM-5822. Here are some alternate ways to get linux going on the PCM-5822. 1) If you have a laptop with CD-ROM onboard and slot for a 2.5" HDD, just install linux on the laptop and then move the HDD to the PCM-5822. This is the easiest install method. 2) If you have a desktop PC with CD-ROM, you can get one of the 40-pin to 44-pin IDE converter cables, connect the 2.5" HDD to the desktop PC, install linux, and then move the HDD to the PCM-5822. This is also a very easy install method. 3) You can create a network boot image on floppy disk and install over the network via HTTP, FTP, or NFS. You can actually install from the redhat web site this way, but it will be slow. 4) A better solution is to copy the contents of the linux CD to a web server on a LAN and do the network install from there. > And, the webpage tells you almost nothing about size. > Sure, it's 14cm X 10cm but how tall is it? It is very slim, approx 3/4 inches. > I have heard that all the connectors are on one side. > What connectors does it have? Along the edge are the following connectors: DB9 RS232 serial port, RJ45 ethernet, PS/2 keyboard and mouse, DB15 VGA, and both RCA and S-Video ports for TV output. There is an additional cable that plugs into a header for the second serial port. Another cable plugs into a header for the audio, there are 3.5mm jacks for line in, line out, mic in, and speakers left and right. The rest of the connectors (IDE, FDD, LCD, etc) are headers or sockets on the board. > How many serial ports? I think it says two on Two serial ports. > Third, what's supported under Linux? I have > heard people say that playback is supported > on the MediaGX chip but record isn't. I have x-windows and audio playback working nicely. No problems with standard keyboards, mice, or twiddler. > I have also heard that the TV out is supported Yes, this is a nice bonus feature to have since TVs are ubiquitous and you can connect directly to any NTSC device (PLM-A35 glasstron and even small NTSC LCDs). > Fourth...power. I am supposed to use two sony > li-ions right? That's entirely up to you. I have been running on a single laptop battery (10.8 volt 3200 mah) for two hours now and it's still running. Will be doing some detailed power tests soon. > Then a DC-DC converter. Simple and small solution: powertrends PT6302A. > But do I run the sonys in series or parallel? That's also up to you. Below is a bunch of detailed install info for this particular board. Have fun, Doug Linux Install on Advantech PCM-5822 ----------------------------------- I have a really good system for installing and configuring my wearables. It makes it easy to rebuild entire drives, keep backups of important files, and install on other hard drives. It also takes a lot of the grief out of problems with difficulties in attaching CD-ROM drives to embedded PCs to load the operating system. Following is description of my wearable software config system. Embedded/Mobile Challenges I have had lots of difficulty attaching CD-ROM drives to single board computers. Many of the SBCs use the smaller 44-pin IDE connectors, but all of my CD-ROMs use the standard 40-pin IDE connectors as per desktop PCs. Besides, I don't want to use CD-ROMs at all, I either want to have what I need on the local HDD or available on the net. One of the great things about Linux is that it is very portable between systems, even different motherboards and standard peripherals from different OEM vendors. Dual Boot System I want to have a Win95 partition on my machines for the few occassions where I need to run win32 apps. I need windows for my microcontroller programming environments and a couple of biofeedback apps. Windows is not as friendy to moves between machines, but I have a system that works well. My target system is a dual boot of Win95 and Redhat 6.2 on the Advantech PCM-5822 SBC. Rather than trying to install directly to the SBC, I install the 2.5" drive into a desktop machine with CD-ROM. Creating a DOS Boot Disk My first step is to create a DOS boot disk. I open up a DOS shell in Win95 and do a FORMAT A:/S which makes a bootable floppy. I also copy the following onto the floppy disk: - FDISK.EXE program to DOS partition the hard drive - FORMAT.COM program to DOS format the hard drive - MSCDEX.EXE cd-rom extensions file - whatever driver is needed for my CD-ROM drive Creating DOS Partitions and FAT file system I install the laptop hard drive in the desktop PC using a 40-to-44 pin adapter (purchased at Fry's Electronics). I then boot from the DOS disk and run the FDISK utility, creating a primary DOS partition of 1GB, and make the partition active. I also run FORMAT C: to set up the FAT file system on the HDD for windows install. Clearing out the Master Boot Record Here's an unadvertised but critical feature of the DOS FDISK.EXE utility: sometimes LILO may be sitting in the master boot record from a prior linux install, thus causing the system to be unbootable in DOS or Windows upon fresh install. The unadvartized feature of FDISK is the /MBR (master boot record) flag. If you have done a prior linux install and need to clear the master boot record, boot with the DOS boot disk and do FDISK /MBR Windows Install on Desktop Machine I then run the Win95 install from CD-ROM and install any windows software that I need. I also load the Advantech drivers and utilities from the CD-ROM supplied from Advantech. I am using 6GB drives which gives me lots of room. I want to eliminate the need for CD-ROM on the wearable system. Since windows is not very portable (always asking for the Win95 CD), I copy the contents of the Win95 CD (minus demos) onto my hard drive. This way I have an entire set of all of the drivers and cab files for Win95 on my local hard drive. If I ever insert a pcmcia card or other plug and play device, and the system asks for the Win95 CD, I just point it to the directory on the local HDD. This will come in handy when the HDD is moved to the Advantech SBC without CD-ROM :) Windows Configuration on Single Board Computer After windows is installed and I have loaded all of my windows software from CD-ROM, I power down the desktop machine and move the HDD to the Advantech SBC. When windows boots it finds all of the new hardware and asks for the Windows CD-ROM. Instead I point it to the directory where I have copied the Win95 CD-ROM contents, and everything configures fine. I already have the Advantech drivers on the HDD, so I go ahead and configure audio, video, and ethernet. There are also some special primary and secondary IDE drivers for the Advantech PCM-5822 (tricky to install, you have to remove the default IDE drivers, reboot, and load the replacement drivers provided by Advantech). Since I have all of the original Win95 drivers and cab files on my local hard drive, I should never need to insert that Win95 CD-ROM again. Thank goodness. Linux Network Distribution For linux install, what I do is copy all of the Linux distribution CDs onto a web server on my LAN, and place then in an http directory where they are accessible. This way I always have a complete set of all linux packages/docs/powertools/etc available on the net at any time. It allows me to install linux from anywhere I can find a machine with a floppy drive that's connected to the net. It also makes it very easy to replicate entire systems so you always have a complete replacement HDD available in case one fails (they will eventually!). Creating Network Boot Image on Floppy Disk In order to do a network install, I first need to create a network boot image on floppy. The image files are on the redhat CD for standard boot, network boot, and pcmcia boot (if you need the pcmcia for ethernet). The floppies can be created on a windows machine by using the rawrite.exe utility that's on the redhat CD-ROM. To create the boot floopy on DOS/windows: - format a floppy disk - run the rawrite.exe program in dos shell - enter the name of the boot image file (in this case bootnet.img for network boot) To create the boot floppy on linux: - dd if=bootnet.img of=/dev/fd0 bs=1440 Installing Linux from Network I connect a floppy drive to the SBC and boot from the network boot image on floppy. Redhat Linux automatically finds the Realtek ethernet driver and asks me to enter my network info (IP address, subnet mask, etc). I choose the HTTP method for install and point to my server which has all of the redhat CD contents on web server. Once I point to the root dir of first cdrom, it is no different than installing from CD. Intalling PCMCIA hardware Before doing the redhat install on the Advantech SBC, I plug in a PC/104 PCMCIA reader, this ensures that the system is set up with pcmcia configured and running out of the box. I can choose to remove the PCMCIA module from my system and only use it when needed. I like to ditch this modules as much as possible and run with only the SBC plus ricochet wireless modem. I do however want to have it available to add access to pcmcia ethernet (ranglan2 and/or symphony) and pcmcia CD-ROM drive. May The Force^H^H^H^H^^H Drivers be With You! This system gives me a lot of protection from lost drivers etc and allows me to build systems quickly and easily. I always have the entire Win95 distribution on HDD (it's not very big, I wouldn't try this with Win98/ NT/2000). I also have all of the linux distro contents on my web server. If I ever need to load an additional package I just point to the web URL where I have redhat available. I can actually create a system from anywhere in the world from scratch as long as I have a machine with FDD connected to the net. I can download the boot image file from my web server, download the rawrite.exe file, and create a floopy, reboot and run the redhat install from across the world! Adding Disk Sync Flags in fstab Once I have redhat on my system, there are only a few steps needed to configure the system. Note that these configuration examples below are for Redhat 6.2, your smileage may vary. I usually add sync flags in my /etc/fstab to help eliminate trashing the kernel if my system dies unexpectedly (it does ...). This isn't the best or most efficient solution, but it's easy and works. This protects me from those nasty boot msgs that drop me into single user mode to run fsck manually, followed by prayers that the kernel is still bootable (sometimes it isn't without sync). Here is an example of my /etc/fstab: /dev/hda2 / ext2 defaults,sync 1 1 /dev/fd0 /mnt/floppy auto noauto,owner 0 0 none /proc proc defaults 0 0 none /dev/pts devpts gid=5,mode=620 0 0 /dev/hda5 swap swap defaults 0 0 The only change from default is the addition of the "sync" attribute for /dev/hda2. Linux Access to FAT file System I usually create a /mnt/dos directory in case I need to copy files from linux to win95 or vice versa. If I want to do this, I can mount the windows file system as follows: mount -t msdos /dev/hda1 /mnt/dos Linux Modules Configuration I have a standard /etc/conf.modules file that has entries for the onboard Realtek ethernet, onboard audio, and also a pcmcia ethernet card (rangelan). My /etc/conf.modules file looks like this: alias parport_lowlevel parport_pc alias eth0 rtl8139 alias eth1 rlmod options rlmod CardType=3 post-install rlmod /usr/local/bin/proxcfg dev eth1 alt domain 1 name MYLINUX alias sound-slot-0 sb options sound dmabuf=1 alias midi opl3 options opl3 io=0x388 options sb io=0x220 irq=5 dma=0 dma16=5 mpu_io=0x330 Configuring Proxim PCMCIA Ethernet If you want to add PCMCIA ethernet to the Advantech PCM-5822 system, you can get a PC/104 module from http://www.intelec-tech.com/ and use either the Ragelan2 or Symphony pcmcia cards (they both work with the same driver and configuration). The drivers for Proxim on linux are available at http://www.komacke.com/. Installation is as follows: - you need to configure the pcmcia to make the header files available for the ethernet driver compilaton. To do this just do the following: cd /usr/src/linux/pcmcia-cs-3.1.8 (or whatever your version) make config specify /usr/src/linux as the source tree specify read from the running kernel - you do NOT have to compile the pcmcia system, all you need to do is run the make config to prepare for the proxim driver install. - tar xzvf the proxim driver file and do the following: make config (select CardType=3 for PCMCIA support) make modules modules_install - Add the following lines to /etc/pcmcia/config: device "rlmod" class "network" module "net/rlmod" card "Proxim RangeLAN2 7400 PC Card" version "PROXIM", "LAN PC CARD", "RANGELAN2" bind "rlmod" card "Proxim Symphony PC Card" version "PROXIM", "LAN PC CARD", "SYMPHONY" bind "rlmod" card "Proxim RangeLAN2 7200 PC Card" version "PROXIM", "LAN CARD", "RANGELAN2" bind "rlmod" - add the following lines to /etc/conf.modules: alias eth1 rlmod options rlmod CardType=3 post-install rlmod /usr/local/bin/proxcfg dev eth1 alt domain 1 name MYLINUX - power down, insert pcmcia card, reboot - configure the eth1 device with linuxconf X-Windows Configuration for MediaGX Although Redhat lists MedgiaGX in the Xconfigurator tool, I have never been able to get X configured with these tools on Redhat. I discovered that the "sax" X configuration tool on Suse Linux worked with MediaGX, so I configured X on a Suse distribution and saved the XF86Config file. Since this is a real PITA, and to make this complete, I might as well post my working XF86Config file below. To install this on your machine, paste this into a file called XF86Config and copy it to /etc/X11 (save your old one just in case!) Sorry for the bandth width, but here's the XF86Config: # SaX autogenerated XF86Config file # This file was generated from the SaX # Version: 2.8 -# Date: Wed Sep 6 06:12:45 PDT 2000 # Xserver:SVGA # MouseVendor:Unknown # MouseName:Unknown # RamDac:121 # Dac8:121 # Dac16:121 # Dac24: # Dac32: Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/local" FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/Type1" FontPath "/usr/X11R6/lib/X11/fonts/URW" FontPath "/usr/X11R6/lib/X11/fonts/Speedo" FontPath "/usr/X11R6/lib/X11/fonts/misc" FontPath "/usr/X11R6/lib/X11/fonts/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/PEX" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic" FontPath "/usr/X11R6/lib/X11/fonts/hellas/misc" FontPath "/usr/X11R6/lib/X11/fonts/hellas/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/hellas/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/hellas/Type1" FontPath "/usr/X11R6/lib/X11/fonts/latin2/misc" FontPath "/usr/X11R6/lib/X11/fonts/latin2/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/latin2/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/latin7/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/kwintv" FontPath "/usr/X11R6/lib/X11/fonts/truetype" FontPath "/usr/X11R6/lib/X11/fonts/ucs/misc" FontPath "/usr/X11R6/lib/X11/fonts/ucs/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/ucs/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/uni" FontPath "/usr/X11R6/lib/X11/fonts/xtest" EndSection Section "ServerFlags" AllowMouseOpenFail EndSection Section "Module" EndSection # This section is no longer supported # See a template below # Section "XInput" # EndSection Section "Keyboard" Protocol "Standard" XkbRules "xfree86" XkbModel "pc104" XkbLayout "us" EndSection Section "Pointer" Protocol "PS/2" Device "/dev/psaux" SampleRate 61 Emulate3Buttons Emulate3Timeout 200 BaudRate 1200 EndSection Section "Monitor" Identifier "Primary-Monitor" VendorName "Unknown" ModelName "Unknown" HorizSync 29-64 VertRefresh 47-90 Modeline "1600x1000" 120.85 1600 1616 1968 2080 1000 1000 1008 1044 Modeline "1280x960" 106.50 1280 1296 1552 1664 960 960 970 1003 Modeline "1024x768" 84.99 1024 1040 1216 1328 768 768 778 802 Modeline "640x480" 37.44 640 656 720 832 480 480 486 501 Modeline "1600x1200" 120.85 1600 1616 1968 2080 1200 1200 1208 1253 Modeline "1280x1024" 106.50 1280 1296 1552 1664 1024 1024 1034 1070 Modeline "1152x864" 95.74 1152 1168 1384 1496 864 864 874 902 Modeline "800x600" 58.55 800 816 928 1040 600 600 608 626 EndSection Section "Device" Identifier "Primary-Card" VendorName "---AUTO DETECTED---" BoardName "---AUTO DETECTED---" Chipset "mediagx" EndSection Section "Screen" Driver "SVGA" Device "Primary-Card" Monitor "Primary-Monitor" DefaultColorDepth 8 SubSection "Display" Depth 32 Modes "640x480" EndSubSection SubSection "Display" Depth 24 Modes "640x480" EndSubSection SubSection "Display" Depth 16 Modes "640x480" EndSubSection SubSection "Display" Depth 8 Modes "640x480" Virtual 640 480 EndSubSection EndSection Section "Screen" Driver "Accel" Device "Primary-Card" Monitor "Primary-Monitor" DefaultColorDepth 8 SubSection "Display" Depth 32 Modes "640x480" EndSubSection SubSection "Display" Depth 24 Modes "640x480" EndSubSection SubSection "Display" Depth 16 Modes "640x480" EndSubSection SubSection "Display" Depth 8 Modes "640x480" Virtual 640 480 EndSubSection EndSection
From Wear-Hard Mailing list Archive (WH)
Maintained by R. Paul McCarty
Archive created with babymail