Home

Moxa Technologies W321 Computer Hardware User Manual

image

Contents

1. d Destination address dport Destination port number j Jump target Specifies the target of the rules i e how to handle matched packets For example ACCEPT the packet DROP the packet or LOG the packet Examples Example 1 Accept all packets from lo interface iptables A INPUT i lo j ACCEPT Example 2 Accept TCP packets from 192 168 0 1 iptables A INPUT i eth0 p tcp s 192 168 0 1 j ACCEPT Example 3 Accept TCP packets from Class C network 192 168 1 0 24 iptables A INPUT i eth0 p tcp s 192 168 1 0 24 j ACCEPT Example 4 Drop TCP packets from 192 168 1 25 iptables A INPUT i eth0 p tcp s 192 168 1 25 j DROP Example 5 Drop TCP packets addressed for port 21 iptables A INPUT i eth0 p tcp dport 21 j DROP Example 6 Accept TCP packets from 192 168 0 24 to W341 s port 137 138 139 iptables A INPUT i eth0 p tcp s 192 168 0 24 dport 137 139 j ACCEPT 4 10 ThinkCore W311 321 341 Linux User s Manual Managing Communications NAT Example 8 Drop all packets from MAC address 01 02 03 04 05 06 iptables A INPUT i eth0 p all m mac mac source 01 02 03 04 05 06 j DROP NOTE In Example 8 remember to issue the command insmod ipt mac first to load module ipt_mac NAT Network Address Translation protocol translates IP addresses used on one network to different IP addresses used on another network One network is designated the inside network and the other is the outsid
2. C ftproot newsw is current directory Eile oin 200 Type set to T eo Is 200 Port command successfull 150 Opening data connection for directory list drw rw rw al Heer je O Noy 30 10703 drw rw rw a ee MED O mew 20 10 03 LW LW rwW U ge ae LSLS Wew 28S EA Erlen 226 Transfer complete ftp gt get w3xx 1 0 frm local ia240 1 0 frm remote w3xx 1 0 frm 200 Port command successful 150 Opening data connection for w3xx 1 0 frm 226 Transfer complete 13167772 bytes received in 2 17 secs 5925 8 kB s ftp gt 3 Next use the upf irm command to upgrade the kernel and root file system upfirm w3xx x x x frm root Moxa mnt ramdisk upfirm w3xx 1 0 frm Moxa ThinkCore IA240 upgrade firmware utility version 1 0 To check source firmware file context The source firmware file conext is OK This step will destroy all your firmware Continue 2 VLM Now upgrade the file kernel Format MTD device dev mtd1 MTD device dev mtd1 erase 128 Kibyte 1C0000 100 complete Wait to write file Compleleted 100 Now upgrade the file usrdisk Format MTD device dev mtd2 3 MTD device dev mtd2 erase 128 Kibyte 800000 100 complete Wait to write file Compleleted 100 Upgrade the firmware is OK ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux ATTENTION The upfirm utility will reboot your target after the upgrade is OK Loading Factory Defaults To load th
3. SxxRUNFILE stands for S start the run file while linux boots up xx anumber between 00 99 Smaller numbers have a higher priority RUNFILE the file name 3 8 ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux T92 168 3 127 R UTIY root Moxa ect rc d rc3 d 1s S19nfs common S25nfs user serverS99showreadyled S20snmpd S55ssh S24pcmcia S99rmnologin root Moxa ect rc d rc3 d In s home tcps2 release S60tcps2 root Moxa ect rc d rc3 d 1s S19nfs common S25nfs user serverS99rmnologin S20snmpd S55ssh S99showreadyled S24pcmcia Ssevtepe2 root Moxa etc rc d rc3 d KxxRUNFILE stands for K start the run file while linux shuts down or halts xx anumber between 00 99 Smaller numbers have a higher priority RUNFILE the file name To remove the daemon remove the run file from the etc rc d rc3 d directory by using the following command rm f etc rc d rc3 d S60tcps2 Adjusting the System Time Setting the Time Manually The W311 321 341 have two time settings One is the system time and the other is the RTC Real Time Clock time kept by the W311 321 341 s hardware Use the date command to query the current system time or set a new system time Use hwclock to query the current RTC time or set a new RTC time Use the following command to query the system time date Use the following command to query the RTC time hwclock Use the following command to set the system time date
4. U Problem Report Form U Product Return Procedure ThinkCore W311 321 341 Linux User s Manual Service Information MOXA Internet Services Customer satisfaction is our number one concern and to ensure that customers receive the full benefit of our products Moxa Internet Services has been set up to provide technical support driver updates product information and user s manual updates The following services are provided E mail for technical support support moxa com World Wide Web WWW Site for product information eetset http www moxa com ThinkCore W311 321 341 Linux User s Manual Service Information Problem Report Form MOXA ThinkCore W311 321 341 Customer name 1 Moxa Product O ThinkCore W311 O ThinkCore W321 O ThinkCore W341 2 Serial Number Problem Description Please describe the symptoms of the problem as clearly as possible including any error messages you see A clearly written description of the problem will allow us to reproduce the symptoms and expedite the repair of your product ThinkCore W311 321 341 Linux User s Manual Service Information Product Return Procedure For product repair exchange or refund the customer must Provide evidence of original purchase Obtain a Product Return Agreement PRA from the sales representative or dealer Fill out the Problem Report Form PRF Include as much detail as possible for a shorter product
5. and etc openvpn B tap0 br conf Setup 3 Routed IP 1 Setup four machines as shown in the following diagram local net OpenVPN A LANI 192 168 2 173 LANI 192 168 2 171 LAN2 192 168 8 173 Internet LANI 192 168 8 174 LANI 192 168 4 172 LAN2 192 168 4 174 l OpenVPN B local net 2 Create a configuration file named A tun conf and an executable script file named A tun sh point to the peer remote 192 168 8 174 dev tun secret etc openvpn secrouter key cipher DES EDE3 CBC auth MD5 tun mtu 1500 tun mtu extra 64 ping 40 ifconfig 192 168 2 173 192 168 4 174 up etc openvpn A tun sh bin sh value after net is the subnet behind the remote peer route add net 192 168 4 0 netmask 255 255 255 0 gw 5 RR SSS SS SS SSS end Create a configuration file named B tun conf and an executable script file named B tun sh on Open VPN B remote 192 168 8 173 dev tun secret etc openvpn secrouter key cipher DES EDE3 CBC auth MD5 tun mtu 1500 tun mtu extra 64 ping 40 ifconfig 192 168 4 174 192 168 2 173 up etc openvpn B tun sh bin sh 4 32 ThinkCore W311 321 341 Linux User s Manual Managing Communications value after net is the subnet behind the remote peer route add net 192 168 2 0 netmask 255 255 255 0 gw 5 end Note that the parameter ifconfig
6. defines the first argument as the local internal interface and the second argument as the internal interface at the remote peer Note that 5 is the argument that the OpenVPN program passes to the script file Its value is the second argument of ifconfig in the configuration file 3 Check the routing table after you run the OpenVPN programs by typing the command route Destination Gateway Genmsk Flags Metric Ref Use Iface 192 168 4 174 ki 255 255 255 255 UH 0 0 0 tun0 192 168 4 0 192 168 4 174 255 255 255 0 UG 0 0 0 tun0 192 168 2 0 2 255 255 255 0 U 0 0 0 ethl 192 168 8 0 x 255 255 255 0 U 0 0 0 ethO 4 33 5 Tool Chains for Application Development This chapter describes how to install a tool chain in the host computer that you use to develop your applications In addition the process of performing cross platform development and debugging are also introduced For clarity the W311 321 341 embedded computer is called a target computer The following functions are covered in this chapter Q Linux Tool Chain gt Steps for Installing the Linux Tool Chain gt Compilation for Applications gt On Line Debugging with GDB OQ Windows Tool Chain gt System Requirements for Windows Tool Chain gt Steps for Installing Windows Tool Chain gt Using the BASH Shell gt Compilation for Applications gt On Line Debugging with Insight ThinkCore W311 321 341 Linux User s Manual
7. dev mtdblock3 6 0M 488 0k 5 5M home dev mtdblock3 6 0M 488 0k Bq ol etc tmpfs 30 4M 0 dev shm root Moxa upramdisk rootGMoxa di h Filesystem Size Used Available Use Mounted on dev mtdblock2 8 0M 6 0M 2 0M if dev ram0 499 0k 16 0k 458 0k var dev mtdblock3 6 0M 488 0k SM tmp dev mtdblock3 6 0M 488 0k SSM home dev mtdblock3 6 0M 488 0k SoM etc tmpfs 30 4M 0 30 4M dev shm dev raml 16 0M Lek A5 1M 0 mnt ramdisk root Moxa cd mnt ramdisk root Moxa mnt ramdisk The following instructions give the steps required to save the firmware file to the W311 321 341 s RAM disk and how to upgrade the firmware 1 Type the following commands to enable the RAM disk upramdisk cd mnt ramdisk 3 3 ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux 2 Type the following commands to use the W311 321 341 s built in FTP client to transfer the firmware file W341 x x x frm from the PC to the W311 321 341 mnt ramdisk gt ftp lt destination PC s IP gt Login Name xxxx Login Password xxxx ftp gt bin ftp gt get x x x frm root Moxa mnt ramdisk ftp 192 168 3 193 Connected to 192 16873 193 C2 LO Si 193 220 TYPsoft FIP Server 1 10 ready Name 192 198 3 1932r80 2 root 331 Password required for root Password 230 User root logged in Remote system type is UNIX Using binary mode to transfer files ftp gt cd newsw 250 CWD command successful
8. sysServices 0 integer 6 ifNumber 0 integer 6 ifIndex 1 integer 1 ifIndex 2 integer 2 ifIndex 3 integer 3 ifIndex 4 integer 4 ifIndex 5 integer 5 ifIndex 6 integer 6 ifDescr 1 octet string eth0 ifDescr 2 octet string ethl ifDescr 3 octet string Serial port 0 ifDescr 4 octet string Serial port 1 ifDescr 5 octet string Serial port 2 ifDescr 6 octet string Serial port 3 ifType 1 integer ethernet csmacd 6 ifType 2 integer ethernet csmacd 6 ifType 3 integer other 1 ifType 4 integer other 1 ifType 5 integer other 1 ifType 6 integer other 1 ifMtu l integer 1500 ifMtu 2 integer 1500 ifMtu 3 integer 0 ifMtu 4 integer 0 ifMtu 5 integer 0 ifMtu 6 integer 0 ifSpeed 1 gauge 100000000 ifSpeed 2 gauge 100000000 ifSpeed 3 gauge 38400 ifSpeed 4 gauge 38400 ifSpeed 5 gauge 38400 ifSpeed 6 gauge 38400 ifPhysAddress 1 octet string 00 90 E8 10 02 41 hex ifPhysAddress 2 octet string 00 90 E8 10 02 40 hex ifPhysAddress 3 octet string 00 hex ifPhysAddress 4 octet string 00 hex ifPhysAddress 5 octet string 00 hex ifPhysAddress 6 octet string 00 hex ifAdminStatus 1 integer up 1 ifAdminStatus 2 integer up 1 ifAdminStatus 3 integer down 2 ifAdminStatus 4 integer down 2 ifAdminStatus 5 integer down 2 ifAdminStatus 6 integer
9. 0 tepConnRemPort 192 168 27 139 1026 0 0 0 0 0 integer 0 tcpConnRemPort 192 168 4 127 1026 0 0 0 0 0 integer 0 tepConnRemPort 192 168 27 139 9 0 0 0 0 0 integer 0 4 23 ThinkCore W311 321 341 Linux User s Manual Managing Communications 338 tepConnRemPort 192 168 4 127 9 0 0 0 0 0 integer 0 339 tepConnRemPort 192 168 27 139 111 0 0 0 0 0 integer 0 340 tepConnRemPort 192 168 4 127 111 0 0 0 0 0 integer 0 341 tepConnRemPort 192 168 27 139 80 0 0 0 0 0 integer 0 342 tepConnRemPort 192 168 4 127 80 0 0 0 0 0 integer 0 343 tepConnRemPort 192 168 27 139 21 0 0 0 0 0 integer 0 344 tepConnRemPort 192 168 4 127 21 0 0 0 0 0 integer 0 345 tepConnRemPort 192 168 27 139 22 0 0 0 0 0 integer 0 346 tepConnRemPort 192 168 4 127 22 0 0 0 0 0 integer 0 347 tepConnRemPort 192 168 27 139 23 0 0 0 0 0 integer 0 348 tepConnRemPort 192 168 4 127 23 0 0 0 0 0 integer 0 349 tepInErrs 0 counter 6 350 tepOutRsts 0 counter 37224 351 udpInDatagrams 0 counter 434 352 udpNoPorts 0 counter 8 353 udpInErrors 0 counter 0 354 udpOutDatagrams 0 counter 903 355 udpLocalAddress 192 168 27 139 1024 ipaddress 192 168 27 139 356 udpLocalAddress 192 168 4 127 1024 ipaddress 192 168 4 127 357 udpLocalAddress 192 168 27 139 2049 ipaddress 192 168 27 139 358 udpLocalAddress 192 168 4 127 2049 ipaddress 192 168 4 127 359 udpLocalAddress 192 168 27 139 1026 ipaddress 192 168 27 139 360 udpLo
10. 0 0 0 0 integer listen 2 tepConnState 192 168 27 139 2049 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 2049 0 0 0 0 0 integer listen 2 tepConnState 192 168 27 139 1026 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 1026 0 0 0 0 0 integer listen 2 tcpConnState 192 168 27 139 9 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 9 0 0 0 0 0 integer listen 2 tcpConnState 192 168 27 139 111 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 111 0 0 0 0 0 integer listen 2 tcpConnState 192 168 27 139 80 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 80 0 0 0 0 0 integer listen 2 tcpConnState 192 168 27 139 21 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 21 0 0 0 0 0 integer listen 2 tcpConnState 192 168 27 139 22 0 0 0 0 0 integer listen 2 tepConnState 192 168 4 127 22 0 0 0 0 0 integer listen 2 tepConnState 192 168 27 139 23 0 0 0 0 0 integer listen 2 tepConnState 192 168 4 127 23 0 0 0 0 0 integer listen 2 tepConnLocalAddress 192 168 27 139 1024 0 0 0 0 0 ipaddress 192 168 27 139 tepConnLocalAddress 192 168 4 127 1024 0 0 0 0 0 ipaddress 192 168 4 127 4 22 Managing Communications ThinkCore W311 321 341 Linux User s Manual Managing Communications 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304
11. 3 2 integer cts 2 rs232InSigName 4 2 integer cts 2 rs232InSigName 1 3 integer dsr 3 rs232InSigName 2 3 integer dsr 3 rs232InSigName 3 3 integer dsr 3 rs232InSigName 4 3 integer dsr 3 rs232InSigName 1 6 integer dcd 6 rs232InSigName 2 6 integer dcd 6 rs232InSigName 3 6 integer dcd 6 rs232InSigName 4 6 integer dcd 6 rs232InSigState 1 2 integer off 3 rs232InSigState 2 2 integer off 3 rs232InSigState 3 2 integer off 3 rs232InSigState 4 2 integer off 3 rs232InSigState 1 3 integer off 3 rs232InSigState 2 3 integer off 3 rs232InSigState 3 3 integer off 3 rs232InSigState 4 3 integer off 3 rs232InSigState 1 6 integer off 3 rs232InSigState 2 6 integer off 3 rs232InSigState 3 6 integer off 3 rs232InSigState 4 6 integer off 3 rs232OutSigPortIndex 1 1 integer 1 1 rs232OutSigPortIndex 2 1 integer 2 2 rs232OutSigPortIndex 3 1 integer 3 3 rs232OutSigPortIndex 4 1 integer 4 4 4 25 ThinkCore W311 321 341 Linux User s Manual Managing Communications 472 rs232OutSigPortIndex 1 4 integer 1 1 473 rs232OutSigPortIndex 2 4 integer 2 2 474 rs232OutSigPortIndex 3 4 integer 3 3 475 rs232OutSigPortIndex 4 4 integer 4 4 476 rs232OutSigName 1 1 integer rts 1 477 rs232OutSigName 2 1 integer rts 1 478 rs232OutSigName 3 1 integer rts 1 479 rs232OutSigName 4 1 integer rts 1 480 rs232OutSigName 1 4 integer dtr 4 481 rs232OutSigNam
12. 48 bin stephen_ mkpasswd Jan 10 4 etc stephen_ mkpasswd 3262 Jan 10 2 insrghl ice stephen_ mkpasswd Jan 10 48 lib stephen_ mkpasswd Sams 03 moxa bat stephen _ mkpasswd Jan 10 22 03 moxa 100 stephen_ mkpasswd Jan 10 19 48 tmp stephen_ mkpasswd O aein LO ALSI ANS SE stephen_ mkpasswd O dan 10 18 12 war LW r r drwxr xr x drwxr xr x drwxr xr x je 8 8 2 7 Al 5 il all 2 4 6 5 9 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development Compilation for Applications Windows tool chain is a cross compiler that can be used to compile Linux source code on a Windows operating system allowing programmers to develop projects on a Windows based PC In this section we describe the procedures you should follow to compile a project with the Windows tool chain First copy the source code of your project in the Windows tool chain s installation directory In the example shown here we want to compile the hello example provided in our CD ROM We will copy the source code to UC which is the root directory of the Windows tool chain Check the root directory where you can find the hello directory Mkpasswd 1 d etc passwd Mkgroup 1 d gt etc group Note that the d switch is necessary for domain users S eel y a Le ed total 9 drwxrwx drwxrwx drwxrwx 9 Jared_Wu 4294967295 Nov Age A 9 Jared_Wu 4294967295 Nov Age AU Al 2 Jared_Wu 4294967295 No
13. Host Packets Mangle Table INPUT Chain Filter Table INPUT Chain Local Process Mangle Table OUTPUT Chain Filter Table FORWARD Chain Mangle Table POSTROUTING Chain NAT Table OUTPUT Chain Filter Table OUTPUT Chain NAT Table POSTROUTING Chain Outgoing Packets The W311 321 341 support the following sub modules Be sure to use the module that matches your application ip_conntrack ipt MARK ipt_ah ipt_state ip_conntrack_ftp ipt MASQUERADE ipt esp ipt_tcpmss ipt conntrack irc ipt_MIRROT ipt_length ipt_tos ip_nat_ftp ipt_REDIRECT ipt_limit ipt_ttl ip_nat_irc ipt_REJECT ipt_mac ipt_unclean ip_nat_snmp_basic ipt_TCPMSS ipt_mark ip_queue ipt_TOS ipt_multiport ipt_LOG ipt_ULOG ipt_owner 4 8 ThinkCore W311 321 341 Linux User s Manual Managing Communications NOTE The W311 321 341 do NOT support IPV6 and ipchains The basic syntax to enable and load an IPTABLES module is as follows 1smod insmod ip_tables insmod iptable_filter Use 1smod to check if the ip_tables module has already been loaded in the W311 321 341 unit Use insmod to insert and enable the module Use the following command to load the modules iptable_filter iptable_mangle iptable_nat insmod iptable_filter Use iptables iptables restore iptables save to maintain the database NOTE IPTABLES plays the role of packet filtering or NAT Take car
14. Linux User s Manual Managing Communications Step 2 Type upramdisk to get the free space ram disk to save the package root Moxa bin upramdisk root Moxa bin df h Filesystem Size Used Available Mounted on dev mtdblock2 8 0M 6 0M 2 0M dev ram0 499 0k IMS Ors 456 0k var dev mtdblock3 6 0M 488 0k 5 5M tmp dev mtdblock3 6 0M 488 0k 5o SM home dev mtdblock3 488 0k 5 5M 3 etc tmpfs 30 4M dev shm dev raml R A Sje AM var ramdisk root Moxa bin Step 3 Download the PHP package from the CD ROM You can find the package in CD ROM target php php tar gz root Moxa bin cd mnt ramdisk root Moxa mnt ramdisk ftp 192 168 27 130 Connected to 132 1823 27 120 220 ala 2505 Name 1927 ISSN Taron 331 Please specify the password Password 230 Login successful Remote system type is UNIX Using binary mode to transfer files ftp gt cd tmp 250 Directory successfully changed Seia lejo 200 Switching to Binary mode ftp gt get php tar gz local php tar gz remote php tar gz 200 PORT command successful Consider using PASV 150 Opening BINARY mode data connection for php tar gz 1789032 bytes 226 File send OK 1789032 bytes received in 0 66 secs 2 6e 03 Kbytes sec ftp gt Step 4 uhtar the package To do this type the command tar xvzf php tar gz root Moxa mnt ramdisk tar xvzf php tar gz envvars envvars old loeien elovalic lanegjelestelejhentenkel inse
15. MMDDhhmmYYYY MM Month DD Date hhmm hour and minute YYYY Year Use the following command to set the RTC time hwclock w Write current system time to RTC ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux The following figure illustrates how to update thesystem time and set the RTC time 1927168737127 PUTTY root Moxa date Pea Jon ZS ASIO SL sme ZOO root Moxa hwclock mai Sia 2s 282805855 2000 SN SEUIL Seemee root Moxa date 120910002004 Thy Dec S 10 00 00 Cor 2004 root Moxa hwclock w root Moxa date hwclock dar Dee Er MO CET ZOO Thu Dec 9 10 01 08 2004 0 933547 seconds root Moxa NTP Client The W311 321 341 have a built in NTP Network Time Protocol client that is used to initialize a time request to a remote NTP server Use ntpdate lt this client utility gt to update the system time ntpdate time stdtime gov tw hwclock w Visit http www ntp org for more information about NTP and NTP server addresses 10 120 53 100 PuTTY root Moxa date hwclock Sat Jan 1 00 00 36 CET 2000 Sac wero I MOSOOSsiT 2000 OQ TIZEK Serene root Moxa ntpdate time stdtion gov tw 9 Dec 10 58 53 ntpdate 207 step time server 220 130 158 52 offset 155905087 9 84256 sec root Moxa hwclock w root Moxa date hwclock Thu Dee 9 10 59 11 CST 2004 Thu Dec 9 10 59 12 2004 0 844076 seconds root Moxa NOTE Before using the NTP client u
16. Tool Chains for Application Development Linux Tool Chain The Linux tool chain contains a suite of cross compilers and other tools as well as the libraries and header files that are necessary to compile your applications These tool chain components must be installed in your host computer PC running Linux We have confirmed that the following Linux distributions can be used to install the tool chain Fefora core 1 amp 2 Steps for Installing the Linux Tool Chain The tool chain needs about 485 MB of hard disk space To install it follow the steps 1 Insert the package CD into your PC and then issue the following commands mount dev cdrom mnt cdrom sh mnt cdrom tool chain linux install sh 2 Wait for the installation process to complete This should take a few minutes 3 Add the directory usr local arm linux bin to your path You can do this for the current login by issuing the following commands export PATH usr local arm linux bin PATH Alternatively you can add the same commands to HOME bash_profile to make it effective for all login sessions Compilation for Applications To compile a simple C application use the cross compiler instead of the regular compiler arm linux gec o example Wall g 02 example c arm linux strip s example arm linux gcc ggdb o example debug example c Most of the cross compiler tools are the same as their native compiler counterparts but with an additional prefix that spec
17. Type the command ps ef to list all processes currently running root Moxa cd etc root Moxa etc ps ef PID Und Se 625 673 679 682 685 690 694 695 696 697 698 701 714 TS 122 783 root root HOO root root root OO root root root root root root root TOGE root bin root root nobody nobody nobody nobody nobody root root root root root VmSize Stat Command 592 S SWN SW lt SW lt 500 3004 380 1176 464 3012 SOA SOZ 3012 3012 352 1176 436 1180 628 root Moxa ect SW lt SW SW SW PARMNADHNHNNNHYHFE HN aioe SH ksoftirgd 0 events 0 khelper kblockd 0 khubd pdflush pdflush aio 0 kswapd0 mtdblockd lpccaraal pcecardd Es gec meesi bin inetd usr bin httpd k bin portmap pinsh login bin snmpd usr bin httpd k usr bin httpd k usr bin httpd k usr bin httpd k usr bin httpd k bin reportip bash bin telnetd bash ps ef etc apache etc apache etc apache etc apache etc apache etc apache To run a private daemon you can edit the file rc local as follows fed etc rc d vi rc local root Moxa cd etc rc d root Moxa etc rc d vi rc local Next use vi to open your application program We use the example program teps2 release and put it to run in the background bin sh Add you want to run daemon home teps2 release amp 3 7 ThinkCore W311 321 341
18. development Software written for desktop PCs can be easily ported to the computer with a GNU cross compiler without needing to modify the source code The OS device drivers e g serial and buzzer control and your own applications can all be stored in the NOR Flash memory Software Architecture The Linux operating system that is pre installed in the W311 321 341 follows the standard Linux architecture making it easy to accept programs that follow the POSIX standard Program porting is done with the GNU Tool Chain provided by MOXA In addition to Standard POSIX APIs device drivers for the USB storage buzzer and Network controls and UART are also included in the Linux OS AP User Application Daemon Apache Telnet FTPD SNMP API Application Interface POSIX Socket Secure Socket Protocol Stack TCP IP UDP CMP ARP HTTP SNMP SMTP File System Device Driver PCMCIA CF WLAN USB UART RTC LCM Keypad Microkernel Memory control Schedule Process Hardware RS 232 422 485 Ethernet PCMCIA CompactFlash USB The W311 321 341 s built in Flash ROM is partitioned into Boot Loader Linux Kernel Root File System and User directory partitions In order to prevent user applications from crashing the Root File System the W311 321 341 use a specially designed Root File System with Protected Configuration for emergency use This Root File System comes with serial and Ethernet communication capability for users to load
19. files such as configuration files you should use vi editor Do NOT use WordPad which could cause problems when the files are transferred to a bona fide Linux environment Steps for Installing Windows Tool Chain If you have installed the old version of Windows Tool Chain or other Cygwin related software please remove these softwares and then follow the next procedure 5 4 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development 1 Double click on the tool chain file to start the installtion process and choose Next E Moxa Linux Tool Chain Setup Welcome Moxa ThinkCore IA Linux Tool Chain V1 0 Thank you for selecting Moxa Linux Tool Chain Moxa Linux Tool Chain Copyright 2006 Moxa Systems Co Ltd http www moxa com Cancel 2 Browse to the directory where you prefer to set the root directory for the tool chain Options of All Users and Unix are recommended Then choose Next 2 Moxa Linux Tool Chain Setup Choose Installation Directory EIER Select Root Install Directory Select the directory where you want to install Also choose a few installation parameters Root Directory C Moxa T ool Chain Browse Install For Default Text File Type All Users Recommend pos C Just Me Unis Recommend lt Back Cancel If you have installed a tool chain before its root directory would show up in the Root Directory text field If you continue the installation the ne
20. module_up oIFS IFS IFS FOUND no for LINE in lsmod do TOK echo LINE cut d 1 if TOK mname then FOUND yes break fi done IFS SoIFS if FOUND no then modprobe mname fi start ifcfg_vpn if d dev net then mkdir dev net fi if r dev net tun then create a device file if there is none mknod dev net tun c 10 200 fi load modules tun and bridge 4 28 ThinkCore W311 321 341 Linux User s Manual Managing Communications mname tun module_up mname bridge module_up create an ethernet bridge to connect tap devices internal interface bretl addbr br0 brcetl addif br0 iface the bridge receives data from any port and forwards it to other ports i expr 0 while do generate a tap0 interface on tun openvpn mktun dev tap i connect tap device to the bridge brctl addif br0 tap i null ip address of tap device ifconfig tap i 0 0 0 0 promisc up i expr i 1 if i ge maxtap then break fi done null ip address of internal interface ifconfig iface 0 0 0 0 promisc up enable bridge ip ifconfig brO IPADDR netmask NETMASK broadcast BROADCAST ipf proc sys net ipv4 ip_forward enable IP forwarding echo 1 gt ipf echo ip forwarding enabled to cat ipf stop echo shutdown openvpn bridge if
21. of the machines that belongs to OpenVPN A B The two remote subnets are configured for a different range of IP addresses When this setup is moved to a public network the external interfaces of the OpenVPN machines should be configured for static IPs or connect to another device such as a firewall or DSL box first openvpn genkey secret secrouter key Copy the file that is generated to the OpenVPN machine 2 Generate a script file named openvpn bridge on each OpenVPN machine This script reconfigures interface eth1 as IP less creates logical bridge s and TAP interfaces loads modules enables IP forwarding etc bin sh iface ethl defines the internal interface maxtap expr 1 defines the number of tap devices I e of tunnels IPADDR 4 27 ThinkCore W311 321 341 Linux User s Manual Managing Communications NETMASK BROADCAST it is not a great idea but this system doesn t support etc sysconfig network scripts ifcfg ethl ifcfg_vpn while read f1 f2 f3 f4 r3 do if f1 iface a f2 iface a f3 inet a f4 static then i expr 0 while do if i gt 5 then break fi i expr i 1 read f1 f2 case f1 in address IPADDR f2 7 netmask NETMASK Sf 2 EE broadcast BROADCAST 2 7 esac done break fi done lt etc network interfaces get the ip address of the specified interface mname
22. openvpn secrouter key cipher DES EDE3 CBC auth MD5 tun mtu 1500 tun mtu extra 64 ping 40 up etc openvpn B tap0 br sh bin sh value after net is the subnet behind the remote peer route add net 192 168 2 0 netmask 255 255 255 0 dev br0 end Note Select cipher and authentication algorithms by specifying cipher and auth To see with algorithms are available type openvpn show ciphers openvpn show auths 4 Start both of OpenVPN peers openvpn config A tap0 br conf amp openvpn config B tap0 br conf amp If you see the line Peer Connection Initiated with 192 168 8 173 5000 on each machine the connection between OpenVPN machines has been established successfully on UDP port 5000 4 30 ThinkCore W311 321 341 Linux User s Manual Managing Communications 5 On each OpenVPN machine check the routing table by typing the command route Destination Gateway Genmsk Flags Metric Ref Use Iface 192 168 4 0 255 255 255 0 U 0 0 0 brO 192 168 2 0 255 255 255 0 U 0 0 0 brO 192 168 8 0 255 255 255 0 U 0 0 0 eth0 Interface ethl is connected to the bridging interface br0 to which device tap0 also connects whereas the virtual device tun sits on top of tap0 This ensures that all traffic from internal networks connected to interface eth1 that come to this bridge write to the TAP TUN devic
23. ppp0 setting for the IP address Use ping to test the IP 10 If you want to disconnect it use the kill command to kill the pppd process NFS Network File System The Network File System NFS is used to mount a disk partition on a remote machine as if it were on a local hard drive allowing fast seamless sharing of files across a network NFS allows users to develop applications for the W311 321 341 without worrying about the amount of disk space that will be available The W311 321 341 supports NES protocol for client 4 17 ThinkCore W311 321 341 Linux User s Manual Managing Communications NOTE Click on the following links for more information about NFS http www tldp org HOW TO NES HOW TO index html http nfs sourceforge net nfs howto client html http nfs sourceforge net nfs howto server html Setting up the W311 321 341 as an NFS Client Mail NOTE SNMP The following procedure is used to mount a remote NFS Server 1 To know the NFS Server s shared directory 2 Establish a mount point on the NFS Client site 3 Mount the remote directory to a local directory mkdir p home nfs public mount t nfs NFS_Server IP directory mount point Example mount t nfs 192 168 3 100 home public home nfs public smtpclient is a minimal SMTP client that takes an email message body and passes it on to an SMTP server It is suitable for applications that use email to send alert messages or importan
24. printed on the screen root Moxa hello release Hello Developing Your First Application We use the tcps2 example to illustrate how to build an application The procedure outlined in the following subsections will show you how to build a TCP server program plus serial port communication that runs on the W311 321 341 ThinkCore W311 321 341 Linux User s Manual Getting Started Testing Environment The tcps2 example demonstrates a simple application program that delivers transparent bi directional data transmission between the W311 321 341 s serial and Ethernet ports As illustrated in the following figure the purpose of this application is to transfer data between PC 1 and the W311 321 341 through an RS 232 connection At the remote site data can be transferred between the W311 321 341 s Ethernet port and PC 2 over an Ethernet connection PC 1 PC 2 Serial Rx Buffer LAN Rx Buffer ThinkCore W311 321 341 Linux User s Manual Getting Started Compiling tcps2 c NOTE The source code for the tcps2 example is located on the CD ROM at CD ROM example TCPServer2 tcps2 c Use the following commands to copy the file to a specific directory on your PC We use the direrctory home w341 1st_application Note that you need to copy 3 files Makefile tcps2 c tcpsp c from the CD ROM to the target directory mount t iso9660 dev cdrom mnt cdrom cp mnt cdrom example TCPServer2 tcps2 c home w341 1st_appli
25. repair time Carefully pack the product in an anti static package and send it pre paid to the dealer The PRA should be visible on the outside of the package and include a description of the problem along with the return address and telephone number of a technical contact
26. that use FTP to upload the executable file to the UC and then run the executable ftp gt bye tcp 102 tos 14 9 Connected to 192 168 14 9 220 Moxa FTP server lt Version wu 2 6 1 lt 2 gt Mon Nov 24 12 17 04 CST 2003 gt ready User lt 192 168 14 9 lt none gt gt root 331 Password required for root Password 230 User root logged in Epe ban 200 PORT command successful 150 Opening BINARY mode data connection for hello release 226 Transfer complete ftp 2744 bytes sent in 0 00Seconds 2744000 00Kbytes sec ftp gt bye 221 You have transferred 2744 bytes in 1 files 22l Total traffie for this session was 3131 bytes in 1 transfers 221 Thank you for using the FTP service on Moxa 221 Goodbye root Moxa chmod 777 hello release root Moxa hello release Hello 5 11 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development On Line Debugging with Insight Insight is a graphical user interface that accompanies GDB the GNU Debugger was written in Tcl Tk by people working at Red Hat Inc and Cygnus Solutions Red Hat was generous enough to make Insight available for public use and continues to maintain the program Click on http sources redhat com insight for more information about using Insight or click on Help Topics under the Help menu to read the user manual ME File Run View Control Preferences Help ae ate at af a 4 opp olte IT About GDB
27. the 1 2 ThinkCore W311 321 341 Linux User s Manual Introduction Factory Default Image file The user directory saves the user s settings and application To improve system reliability the W311 321 341 have a built in mechanism that prevents the system from crashing When the Linux kernel boots up the kernel will mount the root file system for read only and then enable services and daemons At the same time the kernel will start searching for system configuration parameters via re or inittab Normally the kernel uses the Root File System to boot up the system The Root File System is protected and cannot be changed by the user This type of setup creates a safe zone For more information about the memory map and programming refer to Chapter 6 Programmer s Guide Journaling Flash File System JFFS2 The Root File System and User directory in the flash memory is formatted with the Journaling Flash File System JFFS2 The formatting process places a compressed file system in the flash memory This operation is transparent to the user The Journaling Flash File System JFFS2 which was developed by Axis Communications in Sweden puts a file system directly on the flash instead of emulating a block device It is designed for use on flash ROM chips and recognizes the special write requirements of a flash ROM chip JFFS2 implements wear leveling to extend the life of the flash disk and stores the flash directory structur
28. to configure the network settings of the target computer 1 Follow the instructions given in a previous section to access the Console Utility of the target computer via the serial console port and then type ted etc network to change directories PComm Terminal Emulator COM1 115200 None 8 1 T100 i oj x Profile Edit PortManager Window Help 2 BIA alele sle E COM1 115200 None A 1 vTinn root Moxa cd fetc network root Moxa f etc network l Tu State OPEN Mm ee EERE 2 5 ThinkCore W311 321 341 Linux User s Manual Getting Started 2 Type vi interfaces to edit the network configuration file with vi editor You can configure the Ethernet ports of the W341 for static or dynamic DHCP IP addresses Static IP addresses As shown in the table below 4 network addresses must be modified address network netmask and broadcast The default IP address for LANI is 192 168 3 127 with default netmask of 255 255 255 0 Dynamic IP addresses By default the W311 321 341 are configured for static IP addresses To configure one or both LAN ports to request an IP address dynamically replace static with dhep and then delete the address network netmask and broadcast lines Default Setting for LAN1 Dynamic Setting using DHCP iface eth0 inet static iface eth0 inet dhcp address 192 168 3 127 network 192 168 3 0 netmask 255 255 255 0 broadcast 192 168 3 255 3 After the boot se
29. x tcps2 release root Moxa ls al Arwar Ar R A YOGE Toot Jun 12 02 14 0 drwzr xr X 15 root YOOL 0 Jan 1 1970 iL Oos Boot GOE wia IO OEL doesn danser EW le 1 root root USERS Joa 12027515 root Moxa tcps2 release amp 1 187 SEE root Moxa ps 1 Running tcps2 release amp root Moxa NOTE Use the ki11 command for job number 1 to terminate this program kill 1 fps ef use this command to check if the program is running 1 Running tcps2 release amp root Moxa ps ef PID Wie VmSize Stat Command root s 2 Zande MA root SWN ksoftirqd 0 root SW lt events 0 4 root SW lt khelper LS soer SW lt kblockd 0 I4 root SW khubd 24 root SW pdflush AS TOOG SW pdflush 27 TODE aio 0 26 root SW kswapd0 604 root SW mtdbloekd 609 root SW pccardd GL Foot SW pccardd 625 root EES Ege dEntEdsi GIS EOE 151010 bin inetd GIC Tero 3004 usr bin httpd k start d etc apache 682 bin 380 bin portmap 685 root LETS bin sh login 690 root 464 bin snmpd 694 nobody 3012 usr bin httpd k start d etc apache 695 nobody 3012 usr bin httpd k start d etc apache 696 nobody 33012 usr bin httpd k start d etc apache 697 nobody SOLZ usr bin httpd k start d etc apache 698 nobody gt 012 usr bin httpd k start d etc apache 701 root 352 bin reportip 714 roo T176 bash 7126 root 436 S bin telnetd WA tee 1164 S bash 128 root 1264 S tcps2 release V29 roog 15 72 S p
30. you may need to ghost one W311 321 341 user file system to other W311 321 341 units Back up the user file system to a PC refer to the previous subsection Backing Up the User File System for instructions and then type the following commands to copy the backup to additional W311 321 341 units upramdisk cd mnt ramdisk upfirm usrfs backup 192 168 3 127 PuTTY root Moxa mnt ramdisk ls al CHARLES SHOOT HOGE 1024 Jun 15 02 47 han Ip me ROE 0 Sep 29 2004 Al root root 12T Swin ALG Weeks SEW AL EE AEE 27263140 Jun 15 02 48 root Moxa mnt ramdisk upfirm usrfs backup Moxa ThinkCore w3xx upgrade firmware utility version 1 0 To check source firmware file context The source firmware file conext is OK This step will destroy all your firmware Clinicals B NGA B we Now upgrade the file userdisk Format MTD device dev mtd3 MTD device dev mtd3 erase 128 Kibyte 600000 100 complete Wait to write file Compleleted 100 Upgrade the firmware is OK Enabling and Disabling Daemons The following daemons are enabled when the W311 321 341 unit boots up for the first time snmpd SNMP Agent daemon telnetd Telnet Server Client daemon inetd Internet Daemons ftpd FTP Server Client daemon sshd Secure Shell Server daemon httpd Apache WWW Server daemon 3 6 ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux
31. 1 static void do swatchdog void swtd enable swtdfd 500 while stopflag 0 mydelay 250 swtd_ack swtdfd swtd_disable swtdfd int main int argc char argv pid_t sonpid signal SIGUSR1 stop_swatchdog swtdfd swtd_open if swtdfd lt 0 printf Open sWatchDog device fail n exit 1 if sonpid fork 0 do _swatchdog do user application main function end user application kill sonpid SIGUSR1 swtd_close swtdfd exit 1 6 6 ThinkCore W311 321 341 Linux User s Manual Programmer s Guide UART The makefile is shown below all arm linux gcc o xxxx xxxx c lmoxalib The normal tty device node is located at dev ttyMO ttyM3 The W311 321 341 support Linux standard termios control The Moxa UART Device API allows you to configure ttyMO to ttyM3 as RS 232 RS 422 4 wire RS 485 or 2 wire RS 485 The W311 321 341 support RS 232 RS 422 2 wire RS 485 and 4 wire RS485 You must include lt moxadevice h gt define RS232_MODE 0 define RS485 2WIRE MODE 1 define RS422 MODE 2 define RS485_4WIRE_MODE 3 1 Function MOXA_SET_OP_MODE int ioctl fd MOXA_SET_OP_MODE amp mode Description Set the interface mode Argument 3 mode will pass to the UART device driver and change it 2 Function MOXA_GET_OP_MODE int ioctl fd MOXA_GET_OP_MODE amp mode Description Get the interface mode Argument 3 mode wil
32. 2 gauge 1000 ifOutQLen 3 gauge 0 ifOutQLen 4 gauge 0 ifOutQLen 5 gauge 0 ifOutQLen 6 gauge 0 ifSpecific 1 object identifier null oid zeroDotZero ifSpecific 2 object identifier null oid zeroDotZero ThinkCore W311 321 341 Linux User s Manual 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 ifSpecific 3 object identifier null oid zeroDotZero ifSpecific 4 object identifier null oid zeroDotZero ifSpecific 5 object identifier null oid zeroDotZero ifSpecific 6 object identifier null oid zeroDotZero atlfIndex 1 192 168 27 139 integer 1 atlfIndex 2 192 168 4 127 integer 2 atPhysAddress 1 192 168 27 139 octet string 00 90 E8 10 02 41 hex atPhysAddress 2 192 168 4 127 octet string 00 90 E8 10 02 40 hex atNetAddress 1 192 168 27 139 ipaddress 192 168 27 139 atNetAddress 2 192 168 4 127 ipaddress 192 168 4 127 ipForwarding 0 integer forwarding 1 ipDefaultTTL O integer 64 ipInReceives 0 counter 1289 ipInHdrErrors 0 counter 0 ipInAddrErrors 0 counter 0 ipForwDatagrams 0 counter 9 ipInUnknownProtos 0 counter 0 ipInDiscards 0 cou
33. 30 4M dev shm RTS root Moxa df h Filesystem i Available Mounted on dev ntdblockZ 5 2 2 0M f dev ramd 5 5 458 0k var dev ntdblock3 s 3 ftmp fdev mtdblock3 home dev ntdblock3 3 fete mp fs 30 dev shm root Moxa State OPEN m Ad Got Break Signa If there isn t enough Available space for your application you will need to delete some existing files To do this connect your PC to the W311 321 341 with the console cable and then use the console utility to delete the files from the W311 321 341 s flash memory To check the amount of free space available look at the directories in the read write directory dev mtdblock3 Note that the directories home and etc are both mounted on the directory dev mtdblock3 If the flash memory is full you will need to free up some memory space before saving files to the Flash ROM Compiling Hello c The package CD contains several example programs Here we use Hello c as an example to show you how to compile and run your applications Type the following commands from your PC to copy the files used for this example from the CD to your computer s hard drive cd tmp mkdir example cp r mnt cdrom example tmp example To compile the program go to the Hello subdirectory and issue the following commands cd example hello make You should receive the following response root localhost hello make usr local arm linux bin arm linux gcc o
34. 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 tepConnLocalAddress 192 168 27 139 1025 0 0 0 0 0 ipaddress 192 168 27 139 tcpConnLocalAddress 192 168 4 127 1025 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalAddress 192 168 27 139 2049 0 0 0 0 0 ipaddress 192 168 27 139 tcpConnLocalAddress 192 168 4 127 2049 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalAddress 192 168 27 139 1026 0 0 0 0 0 ipaddress 192 168 27 139 tcpConnLocalAddress 192 168 4 127 1026 0 0 0 0 0 ipaddress 192 168 4 127 ttpConnLocalAddress 192 168 27 139 9 0 0 0 0 0 ipaddress 192 168 27 139 tepConnLocalAddress 192 168 4 127 9 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalAddress 192 168 27 139 111 0 0 0 0 0 ipaddress 192 168 27 139 tepConnLocalAddress 192 168 4 127 111 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalAddress 192 168 27 139 80 0 0 0 0 0 ipaddress 192 168 27 139 tepConnLocalAddress 192 168 4 127 80 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalAddress 192 168 27 139 21 0 0 0 0 0 ipaddress 192 168 27 139 tepConnLocalAddress 192 168 4 127 21 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalAddress 192 168 27 139 22 0 0 0 0 0 ipaddress 192 168 27 139 tepConnLocalAddress 192 168 4 127 22 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalAddress 192 168 27 139 23 0 0 0 0 0 ipaddress 192 168 27 139 tep
35. 7 5785 K 161 5805 K 165 5825 K AuthMode Sets the authentication mode Using iwpriv ethl set_auth Setting Setting Explanation 0 OPEN 1 SHARED 2 AUTO default KeyStr Sets Key Support string key and hex key EncrypType Just Support NONE WEP64 and WEP128 depend on your key length Using iwpriv ethl key s KEYVALUE open gt support string key Using iwpriv ethl key KEYVALUE open gt support hex key RTSThreshold Sets the RTS threshold Using iwpriv ethl rts Setting Setting 1 to 2347 FragThreshold Sets the fragment threshold Using iwpriv ethl frag Setting Setting 256 to 2346 Moxa Repeat Sets the Repeat function through adhoc method Using iwpriv ethl set_moxa_repeat ThinkCore W311 321 341 Linux User s Manual Getting Started Using WPA_SUPPLICANT to Support WPA and WPA2 This embedded computer supports the WPA and WPA2 functions using the bin wpa_supplicant program We wrote a shell script to help you use this function Step 1 Edit the ssid and psk variables in the file etc wpa_supplicant conf network ssid key_mgmt WPA PSK proto WPA RSN pairwise TKIP CCMP group TKIP CCMP psk Step 2 Type etc init d wpa sh eth1 start to enable this function To stop the function type etc init d wpa sh ethl stop SD Slot and USB for Storage Expansion The W341 and W321 provide an SD slot for storage expansion MOXA provides an SD f
36. 85 udpLocalPort 192 168 27 139 4800 integer 4800 386 udpLocalPort 192 168 4 127 4800 integer 4800 387 udpLocalPort 192 168 27 139 854 integer 854 388 udpLocalPort 192 168 4 127 854 integer 854 389 udpLocalPort 192 168 27 139 111 integer 111 390 udpLocalPort 192 168 4 127 111 integer 111 391 rs232Number 0 integer 4 392 rs232PortIndex 1 integer 1 1 393 rs232PortIndex 2 integer 2 2 394 rs232PortIndex 3 integer 3 3 395 rs232PortIndex 4 integer 4 4 396 rs232PortType 1 integer rs232 2 397 1s232PortType 2 integer rs232 2 398 rs232PortType 3 integer rs232 2 399 rs232PortType 4 integer rs232 2 400 rs232PortInSigNumber 1 integer 3 401 rs232PortInSigNumber 2 integer 3 402 rs232PortInSigNumber 3 integer 3 403 rs232PortInSigNumber 4 integer 3 404 rs232PortOutSigNumber 1 integer 2 4 24 ThinkCore W311 321 341 Linux User s Manual Managing Communications 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 rs232PortOutSigNumber 2 integer 2 rs232PortOutSigNumber 3 integer 2 rs232PortOutSigNumber 4 integer 2 rs232
37. ConnLocalAddress 192 168 4 127 23 0 0 0 0 0 ipaddress 192 168 4 127 tepConnLocalPort 192 168 27 139 1024 0 0 0 0 0 integer 1024 tepConnLocalPort 192 168 4 127 1024 0 0 0 0 0 integer 1024 tepConnLocalPort 192 168 27 139 1025 0 0 0 0 0 integer 1025 tepConnLocalPort 192 168 4 127 1025 0 0 0 0 0 integer 1025 tepConnLocalPort 192 168 27 139 2049 0 0 0 0 0 integer 2049 tepConnLocalPort 192 168 4 127 2049 0 0 0 0 0 integer 2049 tepConnLocalPort 192 168 27 139 1026 0 0 0 0 0 integer 1026 tcepConnLocalPort 192 168 4 127 1026 0 0 0 0 0 integer 1026 tepConnLocalPort 192 168 27 139 9 0 0 0 0 0 integer 9 tepConnLocalPort 192 168 4 127 9 0 0 0 0 0 integer 9 tepConnLocalPort 192 168 27 139 111 0 0 0 0 0 integer 111 tepConnLocalPort 192 168 4 127 111 0 0 0 0 0 integer 111 tepConnLocalPort 192 168 27 139 80 0 0 0 0 0 integer 80 tepConnLocalPort 192 168 4 127 80 0 0 0 0 0 integer 80 tepConnLocalPort 192 168 27 139 21 0 0 0 0 0 integer 21 tepConnLocalPort 192 168 4 127 21 0 0 0 0 0 integer 21 tepConnLocalPort 192 168 27 139 22 0 0 0 0 0 integer 22 tepConnLocalPort 192 168 4 127 22 0 0 0 0 0 integer 22 tepConnLocalPort 192 168 27 139 23 0 0 0 0 0 integer 23 tepConnLocalPort 192 168 4 127 23 0 0 0 0 0 integer 23 tcpConnRemAddress 192 168 27 139 1024 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 4 127 1024 0 0 0 0 0 ipaddress 0 0 0 0 tepConnRemAddress 192 168 27 139 1025 0 0 0 0 0 ipaddress 0 0 0 0 tcpC
38. Discards 2 counter 0 ifInDiscards 3 counter 0 ifInDiscards 4 counter 0 ifInDiscards 5 counter 0 ifInDiscards 6 counter 0 ifInErrors 1 counter 0 ifInErrors 2 counter 0 ifInErrors 3 counter 0 ifInErrors 4 counter 0 ifInErrors 5 counter 0 ifInErrors 6 counter 0 ifInUnknownProtos 1 counter 0 ifInUnknownProtos 2 counter 0 ifInUnknownProtos 3 counter 0 ifInUnknownProtos 4 counter 0 ifInUnknownProtos 5 counter 0 ifInUnknownProtos 6 counter 0 ifOutOctets 1 counter 51987 ifOutOctets 2 counter 3832 ifOutOctets 3 counter 0 ifOutOctets 4 counter 0 ifOutOctets 5 counter 0 ifOutOctets 6 counter 0 ifOutUcastPkts 1 counter 506 ifOutUcastPkts 2 counter 42 ifOutUcastPkts 3 counter 0 ifOutUcastPkts 4 counter 0 ifOutUcastPkts 5 counter 0 ifOutUcastPkts 6 counter 0 ifOutNUcastPkts 1 counter 0 ifOutNUcastPkts 2 counter 0 ifOutNUcastPkts 3 counter 0 ifOutNUcastPkts 4 counter 0 ifOutNUcastPkts 5 counter 0 ifOutNUcastPkts 6 counter 0 ifOutDiscards 1 counter 0 ifOutDiscards 2 counter 0 ifOutDiscards 3 counter 0 ifOutDiscards 4 counter 0 ifOutDiscards 5 counter 0 ifOutDiscards 6 counter 0 ifOutErrors 1 counter 0 ifOutErrors 2 counter 0 ifOutErrors 3 counter 0 ifOutErrors 4 counter 0 ifOutErrors 5 counter 0 ifOutErrors 6 counter 0 ifOutQLen 1 gauge 1000 ifOutQLen
39. EEE EE E E E SE EE EEE For further information check http www moxa com root Moxa l State OPEN RI Got Break Signal To log in type the Login name and password as requested The default values are both root Login root Password root Telnet Console If you know at least one of the two IP addresses and netmasks then you can use Telnet to connect to the W311 321 341 s console utility The default IP address and Netmask for each of the two ports are given below Default IP Address Netmask LAN 1 192 168 3 127 255 255 255 0 WIRLESS LAN 192 168 4 127 255 255 255 0 Use a cross over Ethernet cable to connect directly from your PC to the W311 321 341 You should first modify your PC s IP address and netmask so that your PC is on the same subnet as one of W311 321 341 s two LAN ports For example if you connect to LAN 1 you can set your PC s IP address to 192 168 3 126 and netmask to 255 255 255 0 If you connect to the WIRLESS LAN you can set your PC s IP address to 192 168 4 126 and netmask to 255 255 255 0 using a wirless AP router Use a straight through Ethernet cable to connect to a hub or switch that is connected to your local LAN The default IP addresses and netmasks are shown above To log in type the Login name and password as requested The default values are both root Login root Password root 2 3 ThinkCore W311 321 341 Linux User s Manual Getting Sta
40. Linux User s Manual Managing Embedded Linux The enabled daemons will be available after you reboot the system root Moxa ps ef PD Wuel VmSize Stat Command POOL OSS ipie 3 root SWN ksoftirqd 0 root SW lt events 0 root SW lt khelper LOO SW lt kblockd 0 root SW khubd TOt SW pdflush root SW pdflush root aio 0 root SW kswapd0 root SW mtdblockd root SW pccardd root SW pccardd 625 root j fs2 ged mtd3 673 root bin inetd 674 root root tcps2 release 674 200 usr bin httpd k start etc apache 682 bin bin portmap 695 voot bin sh login 690 root bin snmpd 694 nobody usr bin httpd k etc apache 695 nobody usr bin httpd k etc apache 696 nobody usr bin httpd k etc apache 697 nobody usr bin httpd k etc apache 698 nobody usr bin httpd k etc apache TO Soot bin reportip 7I4 root bash 726 root bin telnetd TAT serene bash Is DOOR ps ef root Moxa PNAMNADHNHNNNHNYHFUUNN Setting the Run Level In this section we outline the steps you should take to set the Linux run level and execute requests Use the following command to enable or disable settings root Moxa ect rc d rc3 d 1s S19nfs common S25nfs user serverS99showreadyled S20snmpd S55ssh S24pcmcia S99rmnologin root Moxa etc rc d rc3 d Hed etc rc d init d Edit a shell script to execute home tcps2 release and save to tcps2 as an example cd etc rc d rc3 d ln s etc rc d init d tcps2 S60tcps2
41. PN es ae era ete Ei 4 27 Tool Chains for Application Development nananen ne ennneeeeeensnnnere eenen 5 1 Linux Tool Chai ons nu tt 82er break een tie vennen 5 2 Steps for Installing the Linux Tool Chain ann oneonvenvencenneenenneeneenvenveneen 5 2 Compilation for Applications neen onsen enne en enneenernvenvenvenvervenneeneenvenvencense 5 2 On Line Debugging with GDB annen venvenvernenvenvervenneenernvenvenvenne 5 3 Windows Tool Chains amp oss sehr nn een etend a aE A 5 4 System Requirements for Windows Tool Chain annen onne enen eneenvenveneen 5 4 Steps for Installing Windows Tool Chain aen oneonvenvencenneenenneeneenvenvenven 5 4 Using the BASH Shell nsv eernarendenaesseerder een 5 9 Compilation for Applications eneen en vene ennen enne eneenvenvencenvervenneeneenvenveneen 5 10 On Line Debugging with Insight nn eneen enveneenvenvencenvervenneeneenvenvencen 5 12 Programmer s Guide ereen Here 6 1 Flash Memory Map issiessessciscessessecsus 2205582058 B0 Eis Bid ni a 6 2 Device API zn sur tie aianiind deh eA nea iene ai mesa ets 6 2 RIC RealTime Clock tte eternet enen eend syeestiionts tha hecateiitetss 6 2 Buzzer ang ile derde cones E EEE EEE E E ue Redone E manet 6 3 WDE Watch Dos Timer eeo in neasi 82 N EE E ayers tases A E 6 3 UART EE E E E E EE E ardennen at 6 7 OE 6 8 SON Ware COCK russ 7 1 UC BINDS Rs noet cacehucayie vavsastes beasvarnsteh tune chaseelccaceshssseutsashathas
42. PortInSpeed 1 integer 38400 rs232PortInSpeed 2 integer 38400 rs232PortInSpeed 3 integer 38400 rs232PortInSpeed 4 integer 38400 rs232PortOutSpeed 1 integer 38400 rs232PortOutSpeed 2 integer 38400 rs232PortOutSpeed 3 integer 38400 rs232PortOutSpeed 4 integer 38400 rs232AsyncPortIndex l integer 1 1 rs232AsyncPortIndex 2 integer 2 2 rs232AsyncPortIndex 3 integer 3 3 rs232AsyncPortIndex 4 integer 4 4 rs232AsyncPortBits 1 integer 8 rs232AsyncPortBits 2 integer 8 rs232AsyncPortBits 3 integer 8 rs232AsyncPortBits 4 integer 8 rs232AsyncPortStopBits 1 integer one 1 rs232AsyncPortStopBits 2 integer one 1 rs232AsyncPortStopBits 3 integer one 1 rs232AsyncPortStopBits 4 integer one 1 rs232AsyncPortParity 1 integer none 1 rs232AsyncPortParity 2 integer none 1 rs232AsyncPortParity 3 integer none 1 rs232AsyncPortParity 4 integer none 1 rs232InSigPortIndex 1 2 integer 1 1 rs232InSigPortIndex 2 2 integer 2 2 rs232InSigPortIndex 3 2 integer 3 3 rs232InSigPortIndex 4 2 integer 4 4 rs232InSigPortIndex 1 3 integer 1 1 rs232InSigPortIndex 2 3 integer 2 2 rs232InSigPortIndex 3 3 integer 3 3 rs232InSigPortIndex 4 3 integer 4 4 rs232InSigPortIndex 1 6 integer 1 1 rs232InSigPortIndex 2 6 integer 2 2 rs232InSigPortIndex 3 6 integer 3 3 rs232InSigPortIndex 4 6 integer 4 4 rs232InSigName 1 2 integer cts 2 rs232InSigName 2 2 integer cts 2 rs232InSigName
43. R File Edit View Go Bookmarks Tools Help 5 PN D htps192 168 3 127 bintest cai f Getting Started E Latest Headlines v G CGI 1 0 test script report argc is 0 argv is SERVER_SOFTWARE SERVER NAME 1 0 8 image png q 0 5 CONTENT LENGTH NOTE The CGI function is enabled by default If you want to disable the function modify the file etc apache conf httpd conf When you develop your own CGI application make sure your CGI file is executable 192 1683 127 PUTTY root Moxa home httpd cgi bin ls al drwxr xr x 2 root root 0 Aug 24 1999 AAW OOR OLE 0 Neem S Ge ALG Spe ge lt Al seed foe 757 Aug 24 1999 root Moxa home httpd cgi bin Installing PHP for Apache Web Server This embedded computer supports the PHP option However since the PHP file is 3 MB it is not installed by default To install it yourself first make sure there is enough free space at least 3 MB on your embedded flash ROM Step 1 Check that you have enough free space 192 168 3 127 PuTTY root Moxa bin df h Filesystem Size Used Available Use Mounted on dev mtdblock2 8 0M 6 0M 2 0M 75 dev ram0 499 0k 20 457 0k 4 var dev mtdblock3 6 0M 488 0k 5 5M 8 tmp dev mtdblock3 6 0M 488 0k 5 5 res dev mtdblock3 6 0M 488 0k 5 5M 8 etc tmpfs 30 4M 0 30 4M dev shm root Moxa bin To check that the dev mtdblock3 free space is greater than 3 MB home 4 4 ThinkCore W311 321 341
44. TC control You must include lt linux rtc h gt 1 Function RTC_RD_TIME int ioctl fd RTC RD TIME struct rtc time time Description read time information from RTC It will return the value on argument 3 2 Function RTC_SET_TIME int ioctl fd RTC_SET_TIME struct rtc_time time Description set RTC time Argument 3 will be passed to RTC 6 2 ThinkCore W311 321 341 Linux User s Manual Programmer s Guide Buzzer The device node is located at dev console The W311 321 341 support Linux standard buzzer control with the W311 321 341 s buzzer running at a fixed frequency of 100 Hz You must include lt sys kd h gt Function KDMKTONE ioctl fd KDMKTONE unsigned int arg Description The buzzer s behavior is determined by the argument arg The high word part of arg gives the length of time the buzzer will sound and the low word part gives the frequency The buzzer s on off behavior is controlled by software If you call the ioctl function you MUST set the frequency at 100 Hz If you use a different frequency the system could crash WDT Watch Dog Timer 1 Introduction The WDT works like a watch dog function You can enable it or disable it When the user enables WDT but the application does not acknowledge it the system will reboot You can set the ack time from a minimum of 50 msec to a maximum of 60 seconds How the WDT works The sWatchDog is disabled when the system bo
45. ThinkCore W311 321 341 Linux User s Manual Second Edition March 2007 www moxa com product MOXA Systems Co Ltd Tel 886 2 2910 1230 KA OXA Fax 886 2 2910 1231 Web www moxa com MOXA Technical Support Worldwide support moxa com ThinkCore W311 321 341 Linux User s Manual The software described in this manual is furnished under a license agreement and may be used only in accordance with the terms of that agreement Copyright Notice Copyright 2007 Moxa Systems Co Ltd All rights reserved Reproduction without permission is prohibited Trademarks MOXA is a registered trademark of The Moxa Group All other trademarks or registered marks in this manual belong to their respective manufacturers Disclaimer Information in this document is subject to change without notice and does not represent a commitment on the part of MOXA MOXA provides this document as is without warranty of any kind either expressed or implied including but not limited to its particular purpose MOXA reserves the right to make improvements and or changes to this manual or to the products and or the programs described in this manual at any time Information provided in this manual is intended to be accurate and reliable However MOXA assumes no responsibility for its use or for any infringements on the rights of third parties that may result from its use This product might include unintentional technical or typographical erro
46. a null modem cable over a Telnet link and links established using a modem over a telephone line Modem PPP access is almost identical to connecting directly to a network through the W311 321 341 s Ethernet port Since PPP is a peer to peer system the W311 321 341 can also use PPP to link two networks or a local network to the Internet to create a Wide Area Network WAN Click on the following links for more information about ppp http tldp org HOWTO PPP HOWTO index html http axion physics ubc ca ppp linux html The pppd daemon is used to connect to a PPP server from a Linux system For detailed information about pppd see the man page Example 1 Connecting to a PPP server over a simple dial up connection The following command is used to connect to a PPP server by modem Use this command for old ppp servers that prompt for a login name replace username with the correct name and password replace password with the correct password Note that debug and defaultroute 192 1 1 17 are 4 12 ThinkCore W311 321 341 Linux User s Manual Managing Communications optional pppd connect chat v ATDT5551212 CONNECT ogin username word password dev ttyMO 115200 debug crtscts modem defaultroute If the PPP server does not prompt for the username and password the command should be entered as follows Replace username with the correct username and replace password with the correct password pppd conne
47. aType 2 192 168 4 127 integer static 4 ipRoutingDiscards 0 integer 0 icmpInMsgs 0 counter 130 icmpInErrors 0 counter 3 icmpInDestUnreachs 0 counter 128 icmpInTimeExcds 0 counter 0 icmpInParmProbs 0 counter 0 icmpInSrcQuenchs 0 counter 0 icmpInRedirects 0 counter 0 icmpInEchos 0 counter 2 icmpInEchoReps 0 counter 0 icmpInTimestamps 0 counter 0 icmpInTimestampReps 0 counter 0 icmpInAddrMasks 0 counter 0 icmpInAddrMaskReps 0 counter 0 icmpOutMsgs 0 counter 144 icmpOutErrors 0 counter 0 icmpOutDestUnreachs 0 counter 135 icmpOutTimeExcds 0 counter 0 icmpOutParmProbs 0 counter 0 icmpOutSrcQuenchs 0 counter 0 icmpOutRedirects 0 counter 7 icmpOutEchos 0 counter 0 icmpOutEchoReps 0 counter 2 icmpOutTimestamps 0 counter 0 icmpOutTimestampReps 0 counter 0 icmpOutAddrMasks 0 counter 0 icmpOutAddrMaskReps 0 counter 0 tcpRtoAlgorithm 0 integer other 1 tcpRtoMin 0 integer 200 tcpRtoMax 0 integer 120000 tcpMaxConn 0 integer 1 tepActiveOpens 0 counter 0 tcpPassiveOpens 0 counter 0 tcpAttemptFails 0 counter 0 tcpEstabResets 0 counter 0 tcpCurrEstab 0 gauge 0 tcpInSegs 0 counter 0 tcpOutSegs 0 counter 0 tcpRetransSegs 0 counter 0 tcpConnState 192 168 27 139 1024 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 1024 0 0 0 0 0 integer listen 2 tcpConnState 192 168 27 139 1025 0 0 0 0 0 integer listen 2 tcpConnState 192 168 4 127 1025 0
48. all ch lib lib libmysqlclient so 15 lib libpng so 2 lib libphp5 so lib libmysqlclient so 15 0 0 lib libgd so lake sn WON OMO A ey ll an orerel sss 2010 lib libjpeg so dato aloe Zeo 2 dato latloerels Bor 2 php php php ini phpinfo olle root Moxa mnt ramdisk 4 5 ThinkCore W311 321 341 Linux User s Manual Managing Communications Step 5 Run install sh and select to install php T92 168 3 127 PuTTY root Moxa mnt ramdisk install sh Press the number 1 Install PHP package 2 Uninstall PHP package Sa sale Start to install PHP Please wait g web server apache PHP install sucess root Moxa mnt ramdisk Step 6 Test it Use the browser to access http 192 168 3 127 phpinfo php phpinfo Microsoft Internet Explorer BED RAG HAD KOREW IAQ HAD r Or O HAG Pm ka 8 2 DH FLET htp192 168 27 139 phpinfo php E pez e a PHP Version 5 0 5 php hp System Linux Moxa 2 6 9 uc0 1048 Tue May 9 15 56 02 CST 2006 armvatl Build Date Apr 4 2006 22 12 06 Configure configure build i686 linux host arm inux target arm inux with Command apxs2 home victor ia 240 241 source_code user apachgjinstall_me bin apxs with zib with gettext disable cgi enable force cgi redirect prefix home victor ia 240 241 source_code user php install_me with openssi with mysql home victor ia 240 241 source_code user mysal install_m
49. amp to run in the background The Cron daemon will search etc cron d crontab for crontab files which are named after accounts in etc passwd Cron wakes up every minute and checks each command to see if it should be run in that minute When executing commands output is mailed to the owner of the crontab or to the user named in the MAILTO environment variable in the crontab if such a user exists Modify the file etc cron d crontab to set up your scheduled applications Crontab files have the following format mm h dom mon dow user command min hour date month week user command 0 59 0 23 1 31 1 12 0 6 0 is Sunday The following example demonstrates how to use Cron How to use cron to update the system time and RTC time every day at 8 00 STEP1 Write a shell script named fixtime sh and save it to home bin sh ntpdate time nist gov hweloek systohc exit 0 STEP2 Change mode of fixtime sh chmod 755 fixtime sh STEP3 Modify etc cron d crontab file to run fixtime sh at 8 00 every day Add the following line to the end of crontab 8 root home fixtime sh STEP4 Enable the cron daemon manually etc init d cron start STEPS Enable cron when the system boots up Add the following line in the file etc init d rc local etc init d cron start 3 11 A Managing Communications In this chapter we explain how to configure the W311 321 341 s various communication funct
50. an ARM platform execution file created specifically to run on the W311 321 341 teps2 debug an ARM platform GDB debug server execution file see Chapter 5 for details about the GDB debug tool If you get an error message at this point it could be because you neglected to put tcps2 c and tcpsp c in the same directory The example Makefile we provide is set up to compile both tcps2 and tcpsp into the same project Makefile Alternatively you could modify the Makefile to suit your particular requirements 2 17 ThinkCore W311 321 341 Linux User s Manual Getting Started Uploading and Running the tcps2 release Program Use the following commands to upload teps2 release to the W311 321 341 through an FTP connection 1 From the PC type ftp 192 168 3 127 2 Next use the bin command to set the transfer mode to Binary and the put command to initiate the file transfer ftp gt bin tp gt cd home ftp gt put tcps2 release root serverll 1st application ftp 192 168 3 127 Connected to 192 168 3 127 220 Moxa FTP server Version wu 2 6 1 2 Mon Nov 24 12 17 04 CST 2003 ready 530 Please login with USER and PASS 530 Please login with USER and PASS KERBEROS V4 rejected as an authentication type Name Saar Sie ey rook root 331 Password required for root Password 230 User root logged in Remote system type is UNIX Using binary mode to transfer files ftp gt bin 200 Type set to I ftp gt put tcps2 relea
51. ard to wire environments and that require a large amount of memory but that must be housed in a small space without sacrificing performance The following topics are covered in this chapter U Overview U Software Architecture gt Journaling Flash File System JFFS2 gt Software Package ThinkCore W311 321 341 Linux User s Manual Introduction Overview The ThinkCore W311 321 341 wireless embedded computers support 802 1 la b g wireless LANs with data encryption functions including the common WEP and powerful WPA and WPA2 to establish a secure transmission tunnel over a WLAN ThinkCore W300 Series Embedded Computers use a MOXA ART 192 Mhz RISC CPU Unlike the X86 CPU which uses a CISC design the RISC architecture and modern semiconductor technology provide these embedded computers with a powerful computing engine and communication functions but without generating a lot of heat A 16 MB NOR Flash ROM and on board SDRAM 64 MB for W341 and 32 MB for W311 321 give you enough memory to install your application software directly on the embedded computer In addition dual LAN ports are built right into the RISC CPU This network capability in combination with the ability to control serial devices makes the ThinkCore W300 Series ideal as communication platforms for data acquisition and industrial control applications The pre installed Linux operating system OS provides an open software operating system for your software program
52. aultroute option At this point you can try using Telnet ftp or finger bearing in mind that you ll have to use numeric IP addresses unless you ve set up etc resolv conf correctly Setting up a Machine for Incoming PPP Connections PPPoE This first example applies to using a modem and requiring authorization with a username and password pppd dev ttyMO 115200 crtscts modem 192 168 16 1 192 168 16 2 login auth You should also add the following line to the file etc ppp pap secrets ww The first star lets everyone login The second star lets every host connect The pair of double quotation marks is to use the file etc passwd to check the password The last star is to let any IP connect The following example does not check the username and password pppd dev ttyMO 115200 crtscts modem 192 168 16 1 192 168 16 2 1 Connect the W311 321 341 s LAN port to an ADSL modem with a cross over cable HUB or switch 2 Log in to the W311 321 341 as the root user 3 Edit the file etc ppp chap secrets and add the following username hinet net password TP addresses password chap secrets line 1 of 3 33 username hinet net is the username obtained from the ISP to log in to the ISP account password is the corresponding password for the account 4 15 ThinkCore W311 321 341 Linux User s Manual Managing Communications 4 Edit the file et
53. ays the Model MAC Address and IP Address of devices that were located Searching Searching for UC A Stop Found 1 UC s remain timeout 3 second s No Model MAC Address IP Address 00 90 E8 40 04 11 192 168 13 23 When the search is complete the same information is displayed in the UC Finder window 8 UC Finder Eile Function About 2 Broadcast Search No Model MAC Address IP Address 1 W341 00 90 E8 40 04 11 192 168 13 23 Search Result 1 UC s Linux ucfinder Copy ucfinder from the Documentation and Software CD to your Linux PC and then use the following command to start the program UC Finder will automatically locate all W311 321 341 units on the LAN and then report their IP addresses ucfinder 8 4 A System Commands busybox V0 60 4 Linux normal command utility collection File manager Editor Network Ee eS AVENE PANNE YDY a cp Is In mount rm chmod chown chgrp sync my pwd df mkdir rmdir vi cat zcat grep cut find more test sleep echo ping route netstat ifconfig tracerout tftp telnet ftp copy file list file make symbolic link file mount and check file system delete file change file owner amp group amp user change file owner change file group sync file system let system file buffer be saved to hardware move file display now file directly list now file system space make new dir
54. c ppp pap secrets and add the following username hinet net password password if you don t use the login option of pppd The mgetty Debian package already provides this option make sure you don t change that INBOUND connections Every regular user can use PPP and has to use passwords from etc passwd i gt username hinet net password UserIDs that cannot use PPP at all Check your etc passwd and add any other accounts that should not be able to use pppd guest hostname eee master hostname x root hostname support hostname stats hostname OUTBOUND connections Here you should add your userid password to connect to your providers via PAP The means that the password is to be used for ANY host you connect to Thus you do not have to worry about the foreign machine name Just replace password with your password pap secrets line 1 of 42 2 username hinet net is the username obtained from the ISP to log in to the ISP account password is the corresponding password for the account 5 Edit the file etc ppp options and add the following line plugin pppoe terminated because it was idle holdoff lt n gt Wait for up n milliseconds after the connect script finishes for a valid PPP packet from the peer At the end of this time or when a valid PPP packet is received from the peer pppd will commence negotiation by sending its first LCP packet The defaul
55. calAddress 192 168 4 127 1026 ipaddress 192 168 4 127 361 udpLocalAddress 192 168 27 139 1027 ipaddress 192 168 27 139 362 udpLocalAddress 192 168 4 127 1027 ipaddress 192 168 4 127 363 udpLocalAddress 192 168 27 139 9 ipaddress 192 168 27 139 364 udpLocalAddress 192 168 4 127 9 ipaddress 192 168 4 127 365 udpLocalAddress 192 168 27 139 161 ipaddress 192 168 27 139 366 udpLocalAddress 192 168 4 127 161 ipaddress 192 168 4 127 367 udpLocalAddress 192 168 27 139 4800 ipaddress 192 168 27 139 368 udpLocalAddress 192 168 4 127 4800 ipaddress 192 168 4 127 369 udpLocalAddress 192 168 27 139 854 ipaddress 192 168 27 139 370 udpLocalAddress 192 168 4 127 854 ipaddress 192 168 4 127 371 udpLocalAddress 192 168 27 139 111 ipaddress 192 168 27 139 372 udpLocalAddress 192 168 4 127 111 ipaddress 192 168 4 127 373 udpLocalPort 192 168 27 139 1024 integer 1024 374 udpLocalPort 192 168 4 127 1024 integer 1024 375 udpLocalPort 192 168 27 139 2049 integer 2049 376 udpLocalPort 192 168 4 127 2049 integer 2049 377 udpLocalPort 192 168 27 139 1026 integer 1026 378 udpLocalPort 192 168 4 127 1026 integer 1026 379 udpLocalPort 192 168 27 139 1027 integer 1027 380 udpLocalPort 192 168 4 127 1027 integer 1027 381 udpLocalPort 192 168 27 139 9 integer 9 382 udpLocalPort 192 168 4 127 9 integer 9 383 udpLocalPort 192 168 27 139 161 integer 161 384 udpLocalPort 192 168 4 127 161 integer 161 3
56. cation tcps2 c cp mnt cdrom example TCPServer2 tcpsp c home w341 1st_application tcpsp c cp mnt cdrom example TCPServer2 Makefile c home w341 1st_application Makefile Type make to compile the example code You will get the following response indicating that the example program was compiled successfully root server11 home w341 1st_application root serverll 1st_application pwd home w341 1st application root serverll 1st_application 11 total 20 swt root root 514 Nov 27 11 52 Makefile Sjien il moore moore Bose iNew 27 11892 WAE Sje Il HE sso OA iNew 27 MLES5 CEIA e root serverll lst_application make_ usr local arm linux bin arm linux gcc o tcps2 release tcps2 c usr local arm linux bin arm linux strip s tcps2 release usr local arm linux bin arm linux gcce o tcpsp release tcpsp c usr local arm linux bin arm linux strip s tcpsp release usr local arm linux bin arm linux gcce ggdb o tcps2 debug tcps2 c usr local arm linux bin arm linux gcce ggdb o tcpsp debug tcpsp c root serverll lst_application 11 total 92 Sijs root root ile Nowe AT 52 Makefile ENDE KE X root root 25843 Nov 27 208 WERTE KE X root root 4996 Nov 27 A05 EWE En root root 4554 Nov 27 852 Eee EM KE X root root 26823 Nov 27 208 WERTE KE X root root 5296 Now 27 pats Sey e root root 6164 Now 27 Zi eS root serverll lst_application Two executable files tcps2 release and tcps2 debug are created teps2 release
57. ccept multiple connections 2 20 3 Managing Embedded Linux This chapter includes information about version control deployment updates and peripherals The information in this chapter will be particularly useful when you need to run the same application on several W311 321 341 units The following topics are covered in this chapter U System Version Information U System Image Backup gt Upgrading the Firmware gt Loading Factory Defaults gt Backing Up the User Directory gt Deploying the User Directory to Additional W311 321 341 Units U Enabling and Disabling Daemons O Setting the Run Level U Adjusting the System Time gt Setting the Time Manually gt NTP Client gt Updating the Time Automatically U Cron daemon to Execute Scheduled Commands ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux System Version Information NOTE To determine the hardware capability of your W311 321 341 and what kind of software functions are supported check the version numbers of your W311 321 341 s hardware kernel and user file system Contact Moxa to determine the hardware version You will need the Production S N Serial number which is located on the W311 321 341 s bottom label To check the kernel version type kversion 192 T6873 127 PUTTY root Moxa kversion Version 1 0 root Moxa The kernel version number is for the factory default configuration You may download
58. cfg vpn i expr 0 while do disconnect tap device from the bridge brctl delif brO tap i openvpn rmtun dev tap i i expr i 1 if i ge maxtap then break fi done brcetl delif br0 iface bretl delbr br0 ifconfig br0 down ifconfig iface IPADDR netmask NETMASK broadcast BROADCAST killall TERM openvpn case 1 in start start vi stop stop 4 29 ThinkCore W311 321 341 Linux User s Manual Managing Communications restart stop start 7 echo Usage 0 start stop restart exit 1 esac exit 0 Create link symbols to enable this script at boot time In s etc openvpn openvpn bridge etc rc d rc3 d S32vpn br for example In s etc openvpn openvpn bridge etc rc d rc6 d K32vpn br for example 3 Create a configuration file named A tap0 br conf and an executable script file named A tap0 br sh on OpenVPN A point to the peer remote 192 168 8 174 dev tap0 secret etc openvpn secrouter key cipher DES EDE3 CBC auth MD5 tun mtu 1500 tun mtu extra 64 ping 40 up etc openvpn A tap0 br sh bin sh value after net is the subnet behind the remote peer route add net 192 168 4 0 netmask 255 255 255 0 dev br0 end Create a configuration file named B tap0 br conf and an executable script file named B tap0 br sh on Open VPN B point to the peer remote 192 168 8 173 dev tap0 secret etc
59. ct chat v ATDT5551212 CONNECT user username password password dev ttyMO 115200 crtscts modem The pppd options are described below connect chat etc This option gives the command to contact the PPP server The chat program is used to dial a remote computer The entire command is enclosed in single quotes because pppd expects a one word argument for the connect option The options for chat are given below vV verbose mode log what we do to syslog wow Double quotes don t wait for a prompt but instead do note that you must include a space after the second quotation mark ATDT5551212 Dial the modem and then CONNECT Wait for an answer Send a return null text followed by the usual return ogin username word password Log in with username and password Refer to the chat man page chat 8 for more information about the chat utility dev Specify the callout serial port 115200 The baudrate debug Log status in syslog ertscts Use hardware flow control between computer and modem at 115200 this is a must modem Indicates that this is amodem device pppd will hang up the phone before and after making the call defaultroute Once the PPP link is established make it the default route if you have a PPP link to the Internet this is probably what you want 192 1 1 17 This is a degenerate case of a general option of the form x x x x y y y y Here x
60. d 744 home nat sh Edit the rc local file to make this shell startup automatically vi etc re d re loecal Add a line in the end of rc local home nat sh EXIF ethO This is an external interface for setting up a valid IP address EXNET 192 168 4 0 24 This is an internal network address Step 1 Insert modules Here 2 gt dev null means the standard error messages will be dump to null device insmod ip tables 2 gt dev null insmod ip conntrack 2 gt dev null insmod ip conntrack ftp 2 gt dev null insmod ip conntrack irc 2 gt dev null insmod iptable nat 2 gt dev null insmod ip nat ftp 2 gt dev null insmod ip nat irc 2 gt dev null Step 2 Define variables enable routing and erase default rules PATH bin sbin usr bin usr sbin usr local bin usr local sbin export PATH echo 1 gt proc sys net ipv4 ip forward bin iptables F bin iptables X bin iptables Z bin iptables F t nat bin iptables X t nat bin iptables Z t nat bin iptables P INPUT ACCEPT bin iptables P OUTPUT ACCEPT bin iptables P FORWARD ACCEPT bin iptables t nat P PREROUTING ACCEPT bin iptables t nat P POSTROUTING ACCEPT bin iptables t nat P OUTPUT ACCEPT Step 3 Enable IP masquerade Dial up Service PPP NOTE PPP Point to Point Protocol is used to run IP Internet Protocol and other network protocols over a serial link PPP can be used for direct serial connections using
61. d_open return value Output OK will be zero The other has some error to get error code from errno int swtd get int fd int mode unsigned long time Description Get current setting values mode 1 for user application enable sWatchDog need to do ack 0 for user application disable sWatchdog does not need to do ack time The time period to ack sWatchDog Input intfd the file handle from swtd_open return value int mode the function will be return the status enable or disable user application need to do ack unsigned long time the function will return the current time period Output OK will be zero The other has some error to get error code from errno 6 4 ThinkCore W311 321 341 Linux User s Manual Programmer s Guide int swtd_ack int fd Description Acknowledge sWatchDog When the user application enable sWatchDog It need to call this function periodically with user predefined time in the application program Input int fd the file handle from swtd_open return value Output OK will be zero The other has some error to get error code from errno int swtd_close int fd Description Close the file handle Input int fd the file handle from swtd_open return value Output OK will be zero The other has some error to get error code from errno 4 Special Note When you kill the application with 9 or kill without option or Ctrl c th
62. detuodsteags 8 1 Windows UC Finder 5 4 55 4 sscasses atm brt Rutland Riele oa 8 2 Installing the Software username 8 2 Broadcast Searches nt oeverereveertie enneh Btimshis uhr 8 3 Tan xmefmdert st ne hen en ee ent ae 8 4 Appendix A System Commands aanaanenrannnenee renners nenensenenennnneenenannnnenennnnnnnnennnn A 1 busybox V0 60 4 Linux normal command utility collection annae enen enen A 1 Filemanager rennon e e A E AEE E R EE RETENE A 1 Editors e 2 ara ain Biel an A 1 Network 24 20 es ied eenen etienne Renton deren entrees nele A 1 Process nn Re eea E ET A 2 OL EE A 2 MOXA special utilities 12 22 4 265 edel ER A 2 Appendix B Service InformatiOn nnn ananneneennneneerenenenneneennnneenennnnneenennnnennennnnnnenennnn B 1 MOXA Intern t Services anonsi ha ea EE E anemonen terende nld B 2 Problem Report Form se mars 2ER E A re B 3 Product Retum Procedure urn heketea wen ara Bea eeke B 4 1 Introduction The MOXA ThinkCore W311 321 341 are RISC based ready to run wireless embedded computers with 802 11a b g WLAN one 10 100 Mbps Ethernet port an internal SD socket 1 2 4 RS 232 422 485 serial ports two USB 2 0 hosts one relay output channel and pre installed Linux operating system The W311 321 341 offer high performance communication and unlimited storage in a super compact palm size ARM9 box The ThinkCore W300 Series is the right solution for embedded applications that are used in h
63. down 2 ifOperStatus 1 integer up 1 ifOperStatus 2 integer up 1 ifOperStatus 3 integer down 2 ifOperStatus 4 integer down 2 ifOperStatus 5 integer down 2 ifOperStatus 6 integer down 2 ifLastChange 1 timeticks 0 days 00h 00m 00s 00th 0 ifLastChange 2 timeticks 0 days 00h 00m 00s 00th 0 ifLastChange 3 timeticks 0 days 00h 00m 00s 00th 0 ifLastChange 4 timeticks 0 days 00h 00m 00s 00th 0 ifLastChange 5 timeticks 0 days 00h 00m 00s 00th 0 ifLastChange 6 timeticks 0 days 00h 00m 00s 00th 0 ifInOctets 1 counter 25511 ifInOctets 2 counter 2240203 ifInOctets 3 counter 0 ifInOctets 4 counter 0 ifInOctets 5 counter 0 ifInOctets 6 counter 0 ifInUcastPkts 1 counter 254 4 19 ThinkCore W311 321 341 Linux User s Manual Managing Communications 70 as 72 73 74 T5 76 77 78 79 80 81 82 83 84 85 86 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 ifInUcastPkts 2 counter 28224 ifInUcastPkts 3 counter 0 ifInUcastPkts 4 counter 0 ifInUcastPkts 5 counter 0 ifInUcastPkts 6 counter 0 ifInNUcastPkts 1 counter 0 ifInNUcastPkts 2 counter 0 ifInNUcastPkts 3 counter 0 ifInNUcastPkts 4 counter 0 ifInNUcastPkts 5 counter 0 ifInNUcastPkts 6 counter 0 ifInDiscards 1 counter 0 ifIn
64. e 921600 Divisor ENUM 8 100 E g To calculate 500000 bps Divisor 1 ENUM 7 Inaccuracy 1 7 The Inaccuracy should less than 2 for work reliably Special Note 1 Ifthe target baudrate is not a special baudrate e g 50 75 110 134 150 200 300 600 1200 1800 2400 4800 9600 19200 38400 57600 115200 230400 460800 921600 the termios cflag will be set to the same flag 2 If you use stty to get the serial information you will get speed equal to 0 DO Using Dout pin 22 to control Dout close nad open if make Pin 22 pull high being closed and Pin22 pull low being open Usage like echo 22 1 1 gt proc driver dio gt The Do will be open echo 22 1 0 gt proc driver dio gt The Do will be close 6 8 7 Software Lock Software Lock is an innovative technology developed by the Moxa engineering team It can be adopted by a system integrator or developer to protect his applications from being copied An application is compiled into a binary format bound to the embedded computer and the operating system OS that the application runs on As long as one obtains it from the computer he she can install it into the same hardware and the same operating system The add on value created by the developer is thus lost Moxa s engineerings used data encryption to develop this protection mechanism for your applications The binary file associated with each of your applications needs
65. e with config file path etc apache php with gd home victor ia 240 241 source_code lib libgd install_me with libxml dir homey victor ia 240 241 source_code lib libxml2 install_me Server API Apache 2 0 Handler Virtual disabled Directory Support Configuration etc apache php php ini File php ini Path PHP API 20031224 PHP Extension 20041030 Zend Extension 220040412 Debug Build no Thread Safety disabled Zend Memory enabled Manager IPv6 Support enabled Registered PHP php file http ftp compress zlib https ftps Streams Registered tcp udp unix udg ssl sslv3 sslv2 tls Stream Socket Transports This program makes use of the Zend Scripting Language Engine Powered By Zend Engine v2 0 5 Copyright c 1998 2004 Zend Technologies PHP Credits EER BE If you want to uninstall PHP follow steps 2 to 5 but select the uninstall option 4 6 ThinkCore W311 321 341 Linux User s Manual Managing Communications IPTABLES IPTABLES is an administrative tool for setting up maintaining and inspecting the Linux kernel s IP packet filter rule tables Several different tables are defined with each table containing built in chains and user defined chains Each chain is a list of rules that apply to a certain type of packet Each rule specifies what to do with a matching packet A rule such as a jump to a user defined chain in the sam
66. e that the OpenVPN program monitors Once the OpenVPN program detects traffic on the virtual device it sends the traffic to its peer 6 To create an indirect connection to Host B from Host A you need to add the following routing item route add net 192 168 4 0 netmask 255 255 255 0 dev eth0 To create an indirect connection to Host A from Host B you need to add the following routing item route add net 192 168 2 0 netmask 255 255 255 0 dev eth0 Now ping Host B from Host A by typing ping 192 168 4 174 A successful ping indicates that you have created a VPN system that only allows authorized users from one internal network to access users at the remote site For this system all data is transmitted by UDP packets on port 5000 between OpenVPN peers 7 To shut down OpenVPN programs type the command killall TERM openvpn Setup 2 Ethernet Bridging for Private Networks on the Same Subnet 1 Set up four machines as shown in the following diagram local net OpenVPN A LANI 192 168 2 173 LANI 192 168 2 171 LAN2 192 168 8 173 Internet LANI 192 168 8 174 LANI 192 168 4 172 LAN2 192 168 4 174 OpenVPN B local net 4 31 ThinkCore W311 321 341 Linux User s Manual Managing Communications 2 The configuration procedure is almost the same as for the previous example The only difference is that you will need to comment out the parameter up in etc openvpn A tap0 br conf
67. e 2 4 integer dtr 4 482 rs2320utSigName 3 4 integer dtr 4 483 rs232OutSigName 4 4 integer dtr 4 484 rs232OutSigState 1 1 integer off 3 485 rs232OutSigState 2 1 integer off 3 486 rs232O0utSigState 3 1 integer off 3 487 rs232OutSigState 4 1 integer off 3 488 rs232OutSigState 1 4 integer off 3 489 rs232OutSigState 2 4 integer off 3 490 rs232OutSigState 3 4 integer off 3 491 rs232OutSigState 4 4 integer off 3 492 snmpInPkts 0 counter 493 493 snmpOutPkts 0 counter 493 494 snmpInBadVersions 0 counter 0 495 snmpInBadCommunityNames 0 counter 0 496 snmpInBadCommunityUses 0 counter 0 497 snmpInASNParseErrs 0 counter 0 498 snmpInTooBigs 0 counter 0 499 snmpInNoSuchNames 0 counter 0 500 snmpInBadValues 0 counter 0 501 snmpInReadOnlys 0 counter 0 502 snmpInGenErrs 0 counter 0 503 snmpInTotalReqVars 0 counter 503 504 snmpInTotalSetVars 0 counter 0 505 snmpInGetRequests 0 counter 0 506 snmpInGetNexts 0 counter 506 507 snmpInSetRequests 0 counter 0 508 snmpInGetResponses 0 counter 0 509 snmpInTraps 0 counter 0 510 snmpOutTooBigs 0 counter 0 511 snmpOutNoSuchNames 0 counter 0 512 snmpOutBadValues 0 counter 0 513 snmpOutGenErrs 0 counter 0 514 snmpOutGetRequests 0 counter 0 515 snmpOutGetNexts 0 counter 0 516 snmpOutSetRequests 0 counter 0 517 snmpOutGetResponses 0 counter 517 518 snmpOutTraps 0 co
68. e SD card remember to type sync to ensure that your data has been written In addition to the SD socket two USB 2 0 ports are located on the W341 s upper panel The USB host is also designed for storage expansion To use a USB flash disk to expand the storage space plug the USB flash disk into the USB port The flash disk will be detected automatically and its file partition will be mounted into the OS The USB storage will be mounted in one of four directories mnt usbstorage1 mnt usbstorage2 mnt usbstorage3 or mnt usbstorage4 ThinkCore W311 321 341 Linux User s Manual Getting Started Test Program Developing Hello c In this section we use the standard Hello programming example to illustrate how to develop a program for the W311 321 341 In general program development involves the following seven steps Step 1 Connect the W311 321 341 to a Linux PC Step 2 Install Tool Chain GNU Cross Compiler amp glibc Step 3 Set the cross compiler and glibc environment variables Step 4 Code and compile the program Step 5 Download the program to the W311 321 341 using FTP or NFS Step 6 Debug the program gt If bugs are found return to Step 4 gt If no bugs are found continue with Step 7 Step 7 Back up the user directory distribute the program to additional W311 321 341 units if needed Installing the Tool Chain Linux The Linux Operating System must be pre installed in the PC before installing th
69. e W311 321 341 GNU Tool Chain Fedora core or compatible versions are recommended The Tool Chain requires approximately 100 MB of hard disk space on your PC The W311 321 341 Tool Chain software is located on the W311 321 341 CD To install the Tool Chain insert the CD into your PC and then issue the following commands Compiler mount dev edrom mnt cdrom sh mnt cdrom tool chain linux install sh The Tool Chain will be installed automatically on your Linux PC within a few minutes Before compiling the program be sure to set the following path first since the Tool Chain files including the compiler link library and include files are located in this directory PATH usr local arm linux bin PATH Setting the path allows you to run the compiler from any directory NOTE Refer to Appendix B for an introduction to the Windows Tool Chain In this chapter we use the Linux tool chain to illustrate the cross compiling process Checking the Flash Memory Space If the flash memory is full you will not be able to save data to the Flash ROM Use the following command to calculate the amount of Available flash memory gt df h 2 13 ThinkCore W311 321 341 Linux User s Manual Getting Started NOTE aR PComm Terminal Emulator COM1 115200 None 8 1 7 T100 Profile Edit Port Manager Window Help a WA eee 52e E COM1 115200 None 8 1 1100 f dev mtdblock3 5 5M home fdev mtdblock3 5 5M fete mp fs
70. e W311 321 341 Linux User s Manual Introduction Software Package Boot Loader Moxa Boot Loader v1 2 Kernel Linux 2 6 9 Protocol Stack ARP PPP CHAP PAP IPv4 ICMP TCP UDP DHCP FTP SNMP V1 V3 HTTP NTP NFS SMTP SSH 1 0 2 0 SSL Telnet PPPoE OpenVPN File System JFFS2 NFS Ext2 Ext3 VFAT FAT OS shell command Bash Busybox Linux normal command utility collection Utilities tinylogin login and user manager utility telnet telnet client program ftp FTP client program smtpclient email utility scp Secure file transfer Client Program Daemons pppd dial in out over serial port daemon snmpd snmpd agent daemon telnetd telnet server daemon inetd TCP server manager program ftpd ftp server daemon apache web server daemon sshd secure shell server openvpn virtual private network openssl open SSL Linux Tool Chain Gee V3 3 2 C C PC Cross Compiler GDB V5 3 Source Level Debug Server Glibe V2 2 5 POSIX standard C library Windows Tool Chain Gee V3 3 2 C C PC Cross Compiler Glibc V2 2 5 POSIX standard C library Insight V6 1 Windows environment source level debug utility 2 Getting Started In this chapter we explain how to connect the W311 321 341 how to turn on the power how to get started programming and how to use the W311 321 341 s other functions The following topics ar
71. e covered in this chapter U Powering on the W311 321 341 Q Connecting the W311 321 341 to a PC gt Serial Console gt Telnet Console gt SSH Console Q Configuring the Ethernet Interface gt Modifying Network Settings with the Serial Console gt Modifying Network Settings over the Network QO Configuring the WLAN gt IEEE802 11a b g Q Using WPA_SUPPLICANT to Support WPA and WPA2 U SD Socket and USB for Storage Expansion U Test Program Developing Hello c gt Installing the Tool Chain Linux gt Checking the Flash Memory Space gt Compiling Hello c gt Uploading and Running the Hello Program U Developing Your First Application gt Testing Environment gt Compiling tcps2 c gt Uploading and Running the tcps2 release Program gt Testing Procedure Summary ThinkCore W311 321 341 Linux User s Manual Getting Started Powering on the W311 321 341 Connect the SG wire to the shielded contact located in the upper left corner of the W311 321 341 and then power on the computer by connecting it to the power adaptor It takes about 30 to 60 seconds for the system to boot up Once the system is ready the Ready LED will light up NOTE After connecting the W311 321 341 to the power supply it will take about 30 to 60 seconds for the operating system to boot up The green Ready LED will not turn on until the operating system is ready N ATTENTION This product is intended to be supplied by a Listed Power Unit wit
72. e in the RAM A log structured file system is maintained at all times The system is always consistent even if it encounters crashes or improper power downs and does not require fsck file system check on boot up JFFS2 is the newest version of JFFS It provides improved wear leveling and garbage collection performance improved RAM footprint and response to system memory pressure improved concurrency and support for suspending flash erases marking of bad sectors with continued use of the remaining good sectors enhancing the write life of the devices native data compression inside the file system design and support for hard links The key features of JFFS2 are e Targets the Flash ROM Directly Robustness Consistency across power failures No integrity scan fsck is required at boot time after normal or abnormal shutdown e Explicit wear leveling e Transparent compression Although JFFS2 is a journaling file system this does not preclude the loss of data The file system will remain in a consistent state across power failures and will always be mountable However if the board is powered down during a write then the incomplete write will be rolled back on the next boot but writes that have already been completed will not be affected Additional information about JFFS2 is available at http sources redhat com jffs2 jffs2 pdf http developer axis com software jffs http www linux mtd infradead org ThinkCor
73. e kernel will change to auto ack the sWatchDog When your application enables the sWatchDog and does not ack your application may have a logical error or your application has made a core dump The kernel will not change to auto ack This can cause a serious problem causing your system to reboot again and again 5 User application example Example 1 include lt stdio h gt include lt stdlib h gt include lt string h gt include lt moxadevice h gt int main int argc char argv int fd fd swtd_open if fd lt 0 printf Open sWatchDog device fail n exit 1 swtd_enable fd 5000 enable it and set it 5 seconds while 1 do user application want to do swtd_ack fd swtd_close fd exit 0 6 5 ThinkCore W311 321 341 Linux User s Manual Programmer s Guide The makefile is shown below all arm linux gcc o xxxx xxxx c lmoxalib Example 2 include lt stdio h gt include lt stdlib h gt include lt signal h gt include lt string h gt include lt sys stat h gt include lt sys ioctl h gt include lt sys select h gt include lt sys time h gt include lt moxadevice h gt static void mydelay unsigned long msec struct timeval time time tv_sec msec 1000 time tv_usec msec 1000 1000 select 1 NULL NULL NULL amp time static int swtdfd static int stopflag 0 static void stop_swatchdog stopflag
74. e network Typically the W311 321 341 connect several devices on a network and maps local inside network addresses to one or more global outside IP addresses and un maps the global IP addresses on incoming packets back into local IP addresses NOTE Click on the following link for more information about iptables and NAT http www netfilter org documentation HOWTO NAT HOWTO html NAT Example The IP address of LANI is changed to 192 168 3 127 you will need to load the module ipt MASQUERADE IP Netmask 192 168 3 100 24 Gateway 192 168 3 127 PC1 Linux or Windows LAN1 LAN1 192 168 3 127 24 Embedded Computer LAN2 192 168 4 127 24 PC2 Linux or Windows IP Netmask 192 168 4 100 24 Gateway 192 168 4 127 NAT Area Private IP echo 1 gt proc sys net ipv4 ip forward insmod ip tables insmod iptable_ filter insmod ip conntrack insmod iptable nat insmod ipt MASQUERADE iptables t nat A POSTROUTING o eth0 j SNAT to source 192 168 3 127 iptables t nat A POSTROUTING o eth0 s 192 168 3 0 24 j MASQUERADE or nu fF WN HE 4 11 ThinkCore W311 321 341 Linux User s Manual Managing Communications Enabling NAT at Bootup In most real world situations you will want to use a simple shell script to enable NAT when the W341 boots up The following script is an example bin bash If you put this shell script in the home nat sh Remember to chmo
75. e table is called a target The W311 321 341 support 3 types of IPTABLES table Filter tables NAT tables and Mangle tables A Filter Table includes three chains B C INPUT chain OUTPUT chain FORWARD chain NAT Table includes three chains PREROUTING chain transfers the destination IP address DNAT POSTROUTING chain works after the routing process and before the Ethernet device process to transfer the source IP address SNAT OUTPUT chain produces local packets sub tables Source NAT SNAT changes the first source packet IP address Destination NAT DNAT changes the first destination packet IP address MASQUERADE a special form for SNAT If one host can connect to Internet then other computers that connect to this host can connect to the Internet when the computer does not have an actual IP address REDIRECT a special form of DNAT that re sends packets to a local host independent of the destination IP address Mangle Table includes two chains PREROUTING chain pre processes packets before the routing process OUTPUT chain processes packets after the routing process It has three extensions TTL MARK TOS The following figure shows the IPTABLES hierarchy 4 7 ThinkCore W311 321 341 Linux User s Manual Managing Communications Incoming Packets Mangle Table PREROUTING Chain NAT Table PREROUTING Chain Other Host Packets Mangle Table FORWARD Chain Local
76. e the factory default settings you must press the reset to default button for more than 5 seconds All files in the home amp etc directories will be destroyed Note that while pressing the reset to default button the Ready LED will blink once every second for the first 5 seconds The Ready LED will turn off after 5 seconds and the factory defaults will be loaded Backing Up the User Directory 1 Create a backup file First type the following command to enable the RAM disk upramdisk Next use the file system backup utility provided by Moxa backupuf mnt ramdisk usrfs backup 2 Once the file system is backed up use FTP to transfer the file usrfs backup to your PC 192 168 3 127 PuTTY root Moxa upramdisk root Moxa cd mnt ramdisk root Moxa mnt ramdisk df h Filesystem Size Used Available Use Mounted on dev mtdblock2 8 0M 6 0M 2 0M 5 f dev ram0 499 0k 17 0k 457 0k 4 var dev mtdblock3 6 0M 488 0k 5 5M Emp dev mtdblock3 6 0M 488 0k Js SM home dev mtdblock3 6 0M 488 0k 5 5M etc tmpfs 30 4M 0 30 4M dev shm dev raml 16 0M LOk 15 10 var ramdisk root Moxa mnt ramdisk backupuf mnt ramdisk usrfs backup Sync the file system Now backup the user root file system Please wait Backup user root file system OK root Moxa mnt ramdisk 3 5 ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux Deploying the User Directory to Additional W311 321 341 Units For some applications
77. e when setting up the IPTABLES rules If the rules are not correct remote hosts that connect via a LAN or PPP may be denied access We recommend using the serial console to set up the IPTABLES Click on the following links for more information about iptables http www linuxguruz com iptables http www netfilter org documentation HOW TO packet filtering HOW TO html Since the IPTABLES command is very complex to illustrate the IPTABLES syntax we have divided our discussion of the various rules into three categories Observe and erase chain rules Define policy rules and Append or delete rules Observe and erase chain rules Usage iptables t tables L n t tables Table to manipulate default filter example nat or filter L chain ListList all rules in selected chains If no chain is selected all chains are listed n Numeric output of addresses and ports iptables t tables FXZ F Flush the selected chain all the chains in the table if none is listed X Delete the specified user defined chain Z Set the packet and byte counters in all chains to zero Examples iptables L n In this example since we do not use the t parameter the system uses the default filter table Three chains are included INPUT OUTPUT and FORWARD INPUT chains are accepted automatically and all connections are accepted without being filtered iptables F iptables X iptables Z 4 9 Th
78. eady to Install Setup is now ready to begin installing UC Finder on your computer Click Install to continue with the installation or click Back if you want to review or change any settings Additional tasks Create a desktop icon je Setup UC Finder Completing the UC Finder Setup Wizard q Setup has finished installing UC Finder on your computer The application may be launched by selecting the installed icons Click Finish to exit Setup Broadcast Search The Broadcast Search function is used to locate all W311 321 341 units that are connected to the same LAN as your Windows computer Since the Broadcast Search function searches by MAC address and not IP address all W311 321 341 s connected to the LAN will be found regardless of whether or not they are on the same subnet as the host 8 3 ThinkCore W311 321 341 Linux User s Manual UC Finder NOTE 1 UC Finder is designed to determine the IP addresses of all UC units connected to the same LAN the host that is running UC Finder To configure UC s IP addresses or other configuration parameters use Telnet over the network or connect directly to the serial Console port to access the W311 321 341 s Console utility Click o n the Broadcast Search button to start searching FS UC Finder File Broadcast Search No Model MAC Address Function About IP Address Search Result 0 UCS The Searching window displ
79. ectory delete directory text editor dump file context compress or expand files search string on file get string on file find file where are there dump file by one page test file exist or not sleep seconds echo string ping to test network routing table manager display network status set network ip address trace route ThinkCore W311 321 341 Linux User s Manual System Commands Process GA Other 0 AO Oe DE kill ps dmesg sty zcat mknod free date env clear reboot halt du gzip gunzip 13 hostname MOXA special utilities nuBRonMm backupfs bf kversion cat etc version upramdisk downramdisk kill process display now running process dump kernel log message to set serial port dump gz file context make device node display system memory usage print or set the system date and time run a program in a modified environment clear the terminal screen reboot power off on the server halt the server estimate file space usage compress or expand files show system s host name backup file system user directory built the file system user directory show kernel version show user directory version mount ramdisk unmount ramdisk A 2 B Service Information This appendix shows you how to contact Moxa for information about this and other products and how to report problems The following topics are covered in this appendix U MOXA Internet Services
80. ee if the user file system was mounted correctly If user file system is okay the kernel will change the root file system to mnt usrdisk If the user file system is not okay the kernel will use the default Moxa file system To finish boot process run the init program NOTE 1 The default Moxa file system only enables the network and CF It lets users recover the user file system when it fails 2 The user file system is a complete file system Users can create and delete directories and files including source code and executable files as needed 3 Users can create the user file system on the PC host or target platform and then copy it to the W311 321 341 4 To improve system performance we strongly recommend that you install your application programs on the on board flash However since the on board flash has a fixed amount of free memory space you must not over write it and instead use an external storage card such as an SD or CF card for the data log Device API The W311 321 341 support control devices with the ioctl system API You will need to include lt moxadevice h gt and use the following ioctl function int ioctl int d int request Input int d open device node return file handle int request argument in or out Use the desktop Linux s man page for detailed documentation man ioctl RTC Real Time Clock The device node is located at dev rtc The W311 321 341 support Linux standard simple R
81. eenvenvenvenvervenneenennvenvenvenne 3 6 Setting the Run Level u RES Hs 3 8 Adjusting the System Time te det Rubettes 3 9 Setting the Time Manually anno onneononneoneeneeneenvenvenvenvenvencenveenenneeneen 3 9 NTP Clent 3 24442 2282 HE RER neden heerbaan 3 10 Updating the Time Automatically annen eneeneenvenvencenvervenneeneenvenvencen 3 10 Cron Daemon to Execute Scheduled Commands ae ne nennen 3 11 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Managing Communications uusssunssnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnn 4 1 Telnet FTP nanen kea a e E sr RI 4 2 DNS Z nra Het ee e E AA a Rei senaten E ute 4 2 Web Service A pache niae e oaeee a E E Eaa E aia E RL irene eSa Bis 4 2 Installing PHP for Apache Web Server ennen vene onneonenneeneenvenvenvenvervenneenennvenvencense 4 4 IPTABLES rme eui eveneens eed 4 7 NAE sert teneinde etn entire nge Ro ne nn leunen tael 4 11 NAT Example arterie ni I ae EE a r 4 11 Enabling NAT at Bootup annae enne ene erneenneenneenneenseenseenseenverneesmensvenseenneenne 4 12 Dial up Service PPP sinistere rer 4 12 PPPOE nt nn theter deedeetee tiennent beant enne 4 15 NFS Network File System anne onse onee onvernevensensersevensens ers ennsennvennvenneenneenseenveenveenns 4 17 Setting up the W311 321 341 as an NFS Client annen anne eneen eneenvenven 4 18 4 EEEN 4 18 SNMP aner neten ed bni eee leesn ee sede ene 4 18 Open M
82. g Started Default Setting for WIRLESS LAN iface ethl inet static address 192 168 4 127 network 192 168 4 0 netmask 255 255 255 0 broadcast 192 168 4 255 Dynamic Setting using DHCP iface ethl inet dhep After the boot settings of the LAN interface have been modified issue the following command to activate the LAN settings immediately etc init d networking restart 3 Using iwconfig iwpriv Utility to set up the wireless configuration Using iwpriv ethl essid ESSIDNAME iwconfig eth essid ESSIDNAME gt set up wireless essid iwconfig ethl key KEYVALUE open gt set up wireless wep key iwconfig eth mode infra gt set up wireless mode CountryRegion Sets the channels for your particular country region Using iwpriv ethl set Region REGION REGION Explanation 1 USA default Use 802 11g channels 1 to 11 2 Taiwan Europe Use 802 11g channels 1 to 13 3 France Use 802 11g channels 10 to 13 4 Japan Use 802 11g channels 1 to 14 5 Israel Use 802 11g channels 3 to 9 6 Mexico Use 802 11g channels 10 11 WirelessMode Sets the wireless mode Using iwpriv ethl set_mac_mode Setting Note infrastruct just support mixed a mode Ad hoc support b g a mode Setting Explanation 1 default 11a mixed b g 2 11g only 3 11b only 4 11a only SSID Sets the softAP SSID Using iwconfig ethl essid Setting Setting Any 32 byte string NetworkT
83. h output marked LPS and rated for 12 48 VDC 600 mA minimum requirements Connecting the W311 321 341 to aPC There are two ways to connect the W311 321 341 to a PC through the serial console and by Telnet over the network Serial Console The serial console gives users a convenient way of connecting to the W311 321 341 This method is particularly useful when using the computer for the first time The serial console is useful for connecting the W311 321 341 when you do not know either of the two IP addresses Use the serial console port settings shown below Baudrate 115200 bps Parity None Data bits 8 Stop bits 1 Flow Control None Terminal VT100 2 2 ThinkCore W311 321 341 Linux User s Manual Getting Started The following window will open when a connection has been established EN PComm Terminal Emulator COM1 115200 None 8 1 Y T100 Profile Edit PortManager Window Help a ala ela ze EY COM1 115200 Mone 8 1 Y T100 714 root 715 root PTR lroot Moxa fats Moxa login root Password 428 5 628 R sbin getty 115200 ttySl ps HSS 88 ggg gen sgg E22 22 gg E22 2 EELS g 8 sf 8 Ed sg sgg FH HF s Sf 8 s Sf g s E22 2 ggg 8 HEESEN Ze 2 2 2 2 2 EEEE EE sgy ges sgg sgg s 8 sgg EEEE EEE ME EE EEES E22 2 E22 2 2 ggg S88 g S88 23 E22 2 2 E22 22 sss EERE s HEE 2 gg 88 8 8 sgg E22 222222 LEE EEE E MEE E
84. he browser s address box to open the homepage E g if the default IP address is still active type http 192 168 3 127 in the address box a http 192 168 13 23 Microsoft Internet Explorer File Edit View Favorites Tools Help Q ec Md WJ 2 JO search jp Favorites B B 3 Address http 192 168 13 23 EJee Links It works To open the default CGI page type http 192 168 3 127 cgi bin test cgi in your browser s address box E http 192 168 13 23 cgi bin test cgi Microsoft Internet Explorer Q sx Q x a A Search jo Favorites amp B amp E 33 Address hitp 192 168 13 23 cgi binftest cgi vl Tee CGI 1 0 test script report arge is 0 argv is SERVER_SOFTWARE Apache 2 1 6 Unix mod ssl 2 1 6 OpenSSL 0 9 8 PHP 5 0 5 SERVER NAME 192 168 13 23 GATEWAY INTERFACE CGI 1 1 SERVER PROTOCOL HTTP 1 1 SERVER PORT 80 REQUEST METHOD GET HTTP_ACCEPT image gif image x xbitmap image jpeg image pjpeg application x shockwave flash PATH_INFO PATH_TRANSLATED SCRIPT_NAME cgi bin test cgi QUERY_STRING REMOTE_HOST REMOTE_ADDR REMOTE USER AUTH TYPE CONTENT TYPE CONTENT LENGTH 192 168 13 25 Done Internet 4 3 ThinkCore W311 321 341 Linux User s Manual Managing Communications To open the default CGI test script report page type http 192 168 3 127 cgi bin test cgi in your browser s address box Mozilla Firefox TE
85. hello release hello c usr local arm linux bin arm linux strip s hello release usr local arm linux bin arm linux gcc ggdb o hello debug hello c root localhost hello _ Next execute make to generate hello release and hello debug which are described below hello release an ARM platform execution file created specifically to run on the W311 321 341 hello debug an ARM platform GDB debug server execution file see Chapter 5 for details about the GDB debug tool 2 14 ThinkCore W311 321 341 Linux User s Manual Getting Started NOTE Since Moxa s tool chain places a specially designed Makefile in the directory tmp example hello be sure to type the make command from within that directory This special Makefile uses the mxscale gcc compiler to compile the hello c source code for the Xscale environment If you type the make command from within any other directory Linux will use the x86 compiler for example cc or gcc Refer to Chapter 5 to see a Makefile example Uploading and Running the Hello Program Use the following commands to upload hello release to the W311 321 341 by FTP 1 From the PC type ftp 192 168 3 127 2 Use the bin command to set the transfer mode to Binary mode and then use the put command to initiate the file transfer ftp gt bin ftp gt cd home ftp gt put hello release 3 From the W311 321 341 type chmod x hello release hello release The word Hello will be
86. ifies the target system In the case of x86 environments the prefix is i386 linux and in the case of 1A204 241 ARM boards it is arm linux For example the native C compiler is gee and the cross C compiler for ARM in the W311 321 341 is arm linux gec 5 2 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development The following cross compiler tools are provided ar Manages archives static libraries as Assembler C g C compiler cpp C preprocessor gcc C compiler gdb Debugger Id Linker nm Lists symbols from object files objcopy Copies and translates object files objdump Displays information about object files ranlib Generates indexes to archives static libraries readelf Displays information about ELF files size Lists object file section sizes strings Prints strings of printable characters from files usually object files strip Removes symbols and sections from object files usually debugging information On Line Debugging with GDB The tool chain also provides an on line debugging mechanism to help you develop your program Before performing a debugging session add the option ggdb to compile the program A debugging session runs on a client server architecture on which the server gdbserver is installed int the targe computer and the client ddd is installed in the host computer We ll asuumne that you have uploaded a program na
87. indicates your wireless interface MODE gt indicates your wireless mode such as ad hoc managed master ESSID gt indicates your wireless ESSID NAME KEY gt indicates your wireless WEP key CHANNEL gt indicates your wireless channel setting MACMODE gt indicates your wireless macmode setting such as 1 mixed mode 2 pure_g mode 3 pure_b_mode 4 pure_a_mode REGION gt indicates your wireless country region setting WIRELESS_SUPPLICANT gt If set to Y load_wlan will call etc init d wpa sh and open wireless WPA and WPA2 MOXA_REPEAT gt If set to Y load_wlan will call ipriv ethl set_moxa_repeat to establish ad hoc mode using repeat function If you want to use WPA and WPA2 please refer to the subsection Using WPA_SUPPLICANT to Support WPA and WPA2 on page 2 11 2 Use the command vi etc networking interfaces to open the interfaces configuration file with vi editor and then edit the 802 11g network settings Static IP addresses As shown in the table below 4 network addresses need to be modified address network netmask and broadcast The default WIRLESS LAN IP address is 192 168 4 127 Dynamic IP addresses By default the W311 321 341 are configured for static IP addresses To configure one or both LAN ports to request an IP address dynamically replace static with dhep and then delete the address network netmask and broadcast lines 2 7 ThinkCore W311 321 341 Linux User s Manual Gettin
88. inkCore W311 321 341 Linux User s Manual Managing Communications Define policy for chain rules Usage iptables t tables P INPUT OUTPUT FORWARD PREROUTING OUTPUT POSTROUTING ACCEPT DROP P Set the policy for the chain to the given target INPUT For packets coming into the W311 321 341 OUTPUT For locally generated packets FORWARD For packets routed out through the W311 321 341 PREROUTING To alter packets as soon as they come in POSTROUTING To alter packets as they are about to be sent out Examples iptables P INPUT DROP iptables P OUTPUT ACCEPT iptables P FORWARD ACCEPT iptables t nat P PREROUTING ACCEPT iptables t nat P OUTPUT ACCEPT iptables t nat P POSTROUTING ACCEPT In this example the policy accepts outgoing packets and denies incoming packets Append or delete rules Usage iptables t table AI INPUT OUTPUT FORWARD io interface p tcp udp icmp all s IP network sport ports d IP network dport ports j ACCEPT DROP A Append one or more rules to the end of the selected chain I Insert one or more rules in the selected chain as the given rule number i Name of an interface via which a packet is going to be received o Name of an interface via which a packet is going to be sent p The protocol of the rule or of the packet to check s Source address network name host name network IP address or plain IP address sport Source port number
89. ions The following topics are covered in this chapter QO Telnet FTP DNS U Web Service Apache Q Installing PHP for Apache Web Service Q IPTABLES O NAT gt NAT Example gt Enabling NAT at Bootup Dial up Service PPP U PPPoE U NFS Network File System gt Setting up the W311 321 341 as an NFS Client O Mail Q SNMP Q OpenVPN ThinkCore W311 321 341 Linux User s Manual Managing Communications Telnet FTP DNS In addition to supporting Telnet client server and FTP client server the W311 321 341 also support SSH and sftp client server To enable or disable the Telnet ftp server you first need to edit the file etc inetd conf Enabling the Telnet ftp server The following example shows the default content of the file etc inetd conf The default is to enable the Telnet ftp server discard dgram udp wait root bin discard discard stream tcp nowait root bin discard telnet stream tcp nowait root bin telnetd ftp stream tcp nowait root bin ftpd 1 Disabling the Telnet ftp server Disable the daemon by typing in front of the first character of the row to comment out the line The W311 321 341 support DNS client but not DNS server To set up DNS client you need to edit three configuration files etc hosts etc resolv conf and etc nsswitch conf etc hosts This is the first file that the Linux system reads to resolve the host name and IP address etc resolv conf This is the most i
90. irect 3 ipRouteType 192 168 27 0 integer direct 3 ipRouteProto 192 168 4 0 integer local 2 ipRouteProto 192 168 27 0 integer local 2 ipRouteAge 192 168 4 0 integer 0 ipRouteAge 192 168 27 0 integer 0 ipRouteMask 192 168 4 0 ipaddress 255 255 255 0 ipRouteMask 192 168 27 0 ipaddress 255 255 255 0 ipRouteMetric5 192 168 4 0 integer 1 ipRouteMetric5 192 168 27 0 integer 1 ipRoutelnfo 192 168 4 0 object identifier null oid zeroDotZero ipRoutelnfo 192 168 27 0 object identifier null oid zeroDotZero ipNetToMedialfIndex 1 192 168 27 139 integer 1 ipNetToMedialfIndex 2 192 168 4 127 integer 2 4 21 Managing Communications ThinkCore W311 321 341 Linux User s Manual 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 ipNetToMediaPhysAddress 1 192 168 27 139 octet string 00 90 E8 10 02 41 hex ipNetToMediaPhysAddress 2 192 168 4 127 octet string 00 90 E8 10 02 40 hex ipNetToMediaNetAddress 1 192 168 27 139 ipaddress 192 168 27 139 ipNetToMediaNetAddress 2 192 168 4 127 ipaddress 192 168 4 127 ipNetToMediaType 1 192 168 27 139 integer static 4 ipNetToMedi
91. ist all packages that will be installed by default along with any dependencies If you view the Base column for the Base category you should see every package selected for installation Packages In the packages listing field package names are arranged by Category Full Partial according to the View by button When viewing by Category click the plus sign to open or close the packages under that category This is the same list you see in flat form when viewing by Full Partial By default named packages are installed e Install If the package was not previously installed select this option to install the package now e Reinstall If the package was previously installed select this option to install it again This will overwrite the previous installation e Uninstall If the package was previously installed select this option if you do NOT want to make any changes e Skip Ignores a package entirely regardless of whether it was previously installed or uninstalled Packages marked Skip are omitted from the Partial display 5 The Progress window opens The installer will install all packages that were selected This process could take from 5 to 30 minutes depending on the speed of your system When the installation completes the Complete the Installation window will appear 2 27 Moxa Setup Progress This page displays the progress of the installation Installing arm linus 1 0 1 ust local arm linux arm linux sys inc
92. l return the interface mode There are two Moxa private ioctl commands for setting up special baudrates Function MOXA_ SET SPECIAL BAUD RATE Function MOXA_GET SPECIAL BAUD RATE If you use this ioctl to set a special baudrate the termios cflag will be B4000000 in which case the B4000000 define will be different If the baudrate you get from termios or from calling tcgetattr is B4000000 you must call ioctl with MOXA_GET_SPECIAL_BAUD_RATE to get the actual baudrate Example to set the baudrate include lt moxadevice h gt include lt termios h gt struct termios term int fd speed fd open dev ttyM0 O_RDWR tcgetattr fd amp term term c_cflag amp CBAUD CBAUDEX term c_cflag B4000000 tcsetattr fd TCSANOW amp term speed 500000 ioctl fd MOXA SET SPECIAL BAUD RATE amp speed Example to get the baudrate include lt moxadevice h gt include lt termios h gt struct termios term int fd speed fd open dev ttyMO O_RDWR tcgetattr fd amp term 6 7 ThinkCore W311 321 341 Linux User s Manual Programmer s Guide if term c cflag amp CBAUD CBAUDEX B4000000 follow the standard termios baud rate define else ioctl fd MOXA GET SPECIAL BAUD RATE amp speed Baudrate inaccuracy Divisor 921600 Target Baud Rate Only Integer part ENUM 8 921600 Targer Divisor Round up or down Inaccuracy Target Baud Rat
93. lash disk for plug amp play expansion that allows users to plug in a Secure Digital SD memory card compliant with the SD standard V1 0 for up to 1 GB of additional memory space The following steps show you how to install SD card into the W341 and W321 W321 The SD slot is located on the right side of the W321 enclosure To install an SD card you must first remove the SD slot s protective cover to access the slot and then plug the SD card directly into the slot The SD card will be mounted at mnt sd Detailed installation instructions are shown below Step 1 Use a screwdriver to remove the screws holding the SD slot s outer cover Step 2 After removing the cover insert the SD memory card as shown ThinkCore W311 321 341 Linux User s Manual Getting Started W341 The SD slot is located on the front panel of the W341 To install an SD card you must first remove the SD slot s protective cover to access the slot and then plug the SD card directly into the slot The SD card will be mounted at mnt sd Detailed installation instructions are shown below Step 1 Use a screwdriver to remove the screws holding the SD slot s outer cover and then remove the cover NOTE To remove the SD card from the slot press the SD card in slightly with your finger and then remove your finger to cause the card to spring out partially You may now grasp the top of the card with two fingers and pull it out Before removing th
94. llowing figure shows an example of what the tool chain looks like 2 Your group is currently mkpasswd This indicates that The etc passwd and possibly etc group files should be rebuil See the man pages for mkpasswd and mkgroup then for example ru mkpasswd 1 d gt etc passwd mkpasswd 1 d gt etc group Note that the d switch is necessary for domain users S dls sail total 9 drwxr xr x GEDE KE R drwxr xr x drwxr xr x SR drwxr xr x Jan 10 324 Jan 10 2 24 stephen_ mkpasswd stephen_ mkpasswd stephen_ mkpasswd Jan 10 48 bin stephen _ mkpasswd Jan 10 19 24 etc stephen _ mkpasswd 3262 Jan 10 eneen ee stephen_ mkpasswd 0 Jan 10 48 lib stephen_ mkpasswd 53 Jan 19 03 moxa bat stephen _ mkpasswd 3262 Jan 10 03 moxa ico stephen_ mkpasswd O gan 10 19243 imp stephen_ mkpasswd O lener LO ALEF AN SE stephen_ mkpasswd O dan 10 18 12 var 0 0 0 0 Ei drwxr xr x drwxr xr x drwxr xr x je ON zn ED jd NI O5 0 oa System Requirements for Windows Tool Chain Your Windows OS must satisfy the following requirements Windows 2000 workstation or Windows XP professional Minimum of 500 MB of free hard drive space on a single drive CD ROM or equivalent Ethernet capabilty to upload application programs to the target computer Being able to log on as an administrator Oy tS Windows username without spaces You will be using a BASH shell window to enter commands In addition for editing text
95. lude contig ipmi Progress Bae Total ee Disk eg 5 7 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development 6 Checkmark Create icon on Desktop to place a Moxa BASH Shell icon on your desktop and then click on Finish 2 Moxa Linux Tool Chain Setup Create Icons Create Icons To create a icon for convenient access to the Moxa Linux Tool Chain V Create icon on Desktop Cancel 7 Click on OK to complete the installation process Moxa Setup x Installation Complete 5 8 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development Using the BASH Shell A command line interface is used to develop applications with the tool chain To access the command line you need to launch a BASH shell window To open a BASH shell window choose Start Menu gt Programs gt UC Tool Chain gt Moxa Bash Shell or click on the desktop Moxa Bash Shell icon Your group is currently mkpasswd This indicates that The etc passwd and possibly etc group files should be rebuil See the man pages for mkpasswd and mkgroup then for example ru mkpasswd 1 d gt etc passwd mkpasswd 1 d gt etc group Note that the d switch is necessary for domain users 5 Ls en Towel drwxr xr x drwxr xr x drwxr xr x drwxr xr x SR r drwxr xr x LWXr Xr xX stephen_ mkpasswd Jan 10 24 stephen_ mkpasswd Jan 10 2 24 stephen_ mkpasswd Jan 10
96. med hello debug to the target computer and strat to debug the program 1 Log on to the target computer and run the debugging server program gdbserver 192 168 4 142 2000 hello debug Process hello debug created pid 38 The debugging server listens for connections at network port 2000 from the network interface 192 168 4 142 The name of the program to be debugged follows these parameters For a program requiring arguments add the arguments behind the program name 2 Inthe host computer change the directory to where the program source resides cd my_work_directory myfilesystem testprograms 3 Execute the client program ddd debugger arm linux gdb hello debug amp 4 Enter the following command at the GDB DDD command prompt Target remote 192 168 4 99 2000 The command produces a line of output on the target console similar to the following Remote debugging using 192 168 4 99 2000 192 168 4 99 is the machine s IP address and 2000 is the port number You can now begin debugging in the host environment using the interface provided by DDD 5 Seta break point on main by double clicking or by entering b main on the command line 6 Click the cont button 5 3 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development Windows Tool Chain The Windows tool chain is a cross development environment that simulates the Linux root file system allowing users to develop applications in a Windows PC environment The fo
97. mportant file that you need to edit when using DNS for the other programs For example before you use ntpdate time nist goc to update the system time you will need to add the DNS server address to the file Ask your network administrator which DNS server address you should use The DNS server s IP address is specified with the nameserver command For example add the following line to etc resolv conf if the DNS server s IP address is 168 95 1 1 nameserver 168 95 1 1 10 120 53 100 PuTTY r root Moxa etc cat resolv conf resolv conf This file is the resolver configuration file See resolver 5 nameserver 192 168 1 16 nameserver 168 95 1 1 nameserver 140 115 1 31 nameserver 140 115 236 10 root Moxa etc ete nsswitch conf This file defines the sequence to resolve the IP address by using etc hosts file or etc resolv conf Web Service Apache The Apache web server s main configuration file is etc apache conf httpd conf with the default homepage located at home httpd htdocs index html Save your own homepage to the following directory home httpd htdocs Save your CGI page to the following directory 4 2 ThinkCore W311 321 341 Linux User s Manual Managing Communications home httpd cgi bin Before you modify the homepage use a browser such as Microsoft Internet Explorer or Mozilla Firefox from your PC to test if the Apache Web Server is working Type the LAN1 IP address in t
98. n annen anne onernvenvenvenvenvenneenvenveneenvenvenvenvenne 2 11 Test Program Developing Hello C nonnen enenneenenneeneenvenvenvenvervenneeneenvenvencen 2 13 Installing the Tool Chain Linux nnen enne enne enne enneenseensernverneesmensvenseeenensen 2 13 Checking the Flash Memory Space annen aaneen enne oneenvenvencenvervenneeneenenneeneen 2 13 Compiling Hell6 e ion icone Shock bedeesd Reka helft 2 14 Uploading and Running the Hello Program nanne enveenenneeneenenneeneen 2 15 Developing Your First Application nev onveneonvenvenvenveenenneeneenvenvenvenvervenneeneenvenvencen 2 15 Testing Environment attente E a E EA Sikes bene he hana se 2 16 Eompilmsiteps2 c 22 0 shes E E E T ALE E EE REE Ee ROETES 2 17 Uploading and Running the tcps2 release Program annen eneenvenvenenn 2 18 Testing Procedure Summary soroan narea aon anaes enneh ease desea Ban 2 20 Managing Embedded Linux nnnnnnnnnennenennnennnnneennne enen rennnnnennenenenenenn 3 1 System Version Information ans seras eee aieia E Oeae Ee e NaNe Ean eae SERES 3 2 System Image B cKUD niren en a Saved R E R ian R N ERNS 3 2 Upgrading th Firmwares unsre ar a e e R R R 3 2 Loading Factory Defaults nonnen enen arie a priae i ei aries 3 5 Backing Up the User Directory epi n ea ee ea etree ie a 3 5 Deploying the User Directory to Additional W311 321 341 Units oo eee 3 6 Enabling and Disabling Daemons nnn oneenvenvencenvernenneen
99. nter 0 ipInDelivers 0 counter 1160 ipOutRequests 0 counter 858 ipOutDiscards 0 counter 0 ipOutNoRoutes 0 counter 0 ipReasmTimeout 0 integer 0 ipReasmReqds 0 counter 0 ipReasmOKs 0 counter 0 ipReasmFails 0 counter 0 ipFragOKs 0 counter 0 ipFragFails 0 counter 0 ipFragCreates 0 counter 0 ipAdEntAddr 192 168 27 139 ipaddress 192 168 27 139 ipAdEntAddr 192 168 4 127 ipaddress 192 168 4 127 ipAdEntlfIndex 192 168 27 139 integer 1 ipAdEntIfIndex 192 168 4 127 integer 2 ipAdEntNetMask 192 168 27 139 ipaddress 255 255 255 0 ipAdEntNetMask 192 168 4 127 ipaddress 255 255 255 0 ipAdEntBcastAddr 192 168 27 139 integer 1 ipAdEntBcastAddr 192 168 4 127 integer 1 ipAdEntReasmMaxSize 192 168 27 139 integer 65535 ipAdEntReasmMaxSize 192 168 4 127 integer 65535 ipRouteDest 192 168 4 0 ipaddress 192 168 4 0 ipRouteDest 192 168 27 0 ipaddress 192 168 27 0 ipRoutelfIndex 192 168 4 0 integer 2 ipRoutelfIndex 192 168 27 0 integer 1 ipRouteMetric1 192 168 4 0 integer 0 ipRouteMetric1 192 168 27 0 integer 0 ipRouteMetric2 192 168 4 0 integer 1 ipRouteMetric2 192 168 27 0 integer 1 ipRouteMetric3 192 168 4 0 integer 1 ipRouteMetric3 192 168 27 0 integer 1 ipRouteMetric4 192 168 4 0 integer 1 ipRouteMetric4 192 168 27 0 integer 1 ipRouteNextHop 192 168 4 0 ipaddress 192 168 4 127 ipRouteNextHop 192 168 27 0 ipaddress 192 168 27 139 ipRouteType 192 168 4 0 integer d
100. onfiguration Category E Session A Basic options for your PuTTY session Logging Terminal Keyboard Specify your connection by host name or IP address Host Name or IP address Port Bell 192 168 27 122 2 Features Protocol B Window O Baw O Telnet ORlogn SSH Appearance Behaviour Translation Saved Sessions Selection Embedded Computer Colours n Default Settings is Connection 192168 27 121 Data 192 168 27 127 Proxy 192 168 27 128 Save 195 226 66 181 len Embedded Computer Rlagin SSH Kex Load save or delete a stored session Close window on exit gt O Always O Neve Only on clean exit Tunnels v Open Cancel Linux Users From a Linux machine use the ssh command to access the W311 321 341 s console utility via SSH ssh 192 168 3 127 Select yes to complete the connection root bee_notebook root ssh 192 168 3 127 oe aric gsnt eike our aaa VLA datt er ee sr eante ler eieaa snech RSISKkeyzEingerpreinteisg b SCEE IE SOE EO E eE neoa e G arte Are you sure you want to continue connection yes no yes NOTE SSH provides better security compared to Telnet for accessing the W311 321 341 s console utility over the network Configuring the Ethernet Interface The network settings of the W311 321 341 can be modified with the serial console port or online over the network Modifying Network Settings with the Serial Console In this section we use the serial console
101. onnRemAddress 192 168 4 127 1025 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 27 139 2049 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 4 127 2049 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 27 139 1026 0 0 0 0 0 ipaddress 0 0 0 0 tepConnRemAddress 192 168 4 127 1026 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 27 139 9 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 4 127 9 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 27 139 111 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 4 127 111 0 0 0 0 0 ipaddress 0 0 0 0 tepConnRemAddress 192 168 27 139 80 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 4 127 80 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 27 139 21 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 4 127 21 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 27 139 22 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 4 127 22 0 0 0 0 0 ipaddress 0 0 0 0 tcpConnRemAddress 192 168 27 139 23 0 0 0 0 0 ipaddress 0 0 0 0 tepConnRemAddress 192 168 4 127 23 0 0 0 0 0 ipaddress 0 0 0 0 tepConnRemPort 192 168 27 139 1024 0 0 0 0 0 integer 0 tcpConnRemPort 192 168 4 127 1024 0 0 0 0 0 integer 0 tepConnRemPort 192 168 27 139 1025 0 0 0 0 0 integer 0 tepConnRemPort 192 168 4 127 1025 0 0 0 0 0 integer 0 tepConnRemPort 192 168 27 139 2049 0 0 0 0 0 integer 0 tcpConnRemPort 192 168 4 127 2049 0 0 0 0 0 integer
102. ots up The user application can also enable ack When the user does not ack it will let the system reboot Kernel boot User application running and enable user ack The user API The user application must include lt moxadevic h gt and link moxalib a A makefile example is shown below all arm linux gcc o xxxx xxxx c lmoxalib int swtd_open void Description Open the file handle to control the sWatchDog If you want to do something you must first to this And keep the file handle to do other Input None Output The return value is file handle If has some error it will return lt 0 value You can get error from errno 6 3 ThinkCore W311 321 341 Linux User s Manual Programmer s Guide int swtd enable int fd unsigned long time Description Enable application sWatchDog And you must do ack after this process Input intfd the file handle from the swtd_open return value unsigned long time The time you wish to ack sWatchDog periodically You must ack the sWatchDog before timeout If you do not ack the system will be reboot automatically The minimal time is 50 msec the maximum time is 60 seconds The time unit is msec Output OK will be zero The other has some error to get the error code from errno int swtd_disable int fd Description Disable the application to ack sWatchDog And the kernel will be auto ack it User does not to do it at periodic Input int fd the file handle from swt
103. r 127 0 0 1 Beast 127 255 255 255 Mask 255 0 0 0 UP LOOPBACK RUNNING MTU 2000 Metric 1 RX packets 0 errors 0 dropped 0 overrun 0 ppp0 Link encap Point to Point Protocol inet addr 192 76 32 3 P t P 129 67 1 165 Mask 255 255 255 0 UP POINTOPOINT RUNNING MTU 1500 Metric 1 RX packets 33 errors 0 dropped 0 overrun 0 TX packets 42 errors 0 dropped 0 overrun 0 Now type ping z z z z where z z z z is the address of your name server This should work Here s what the response could look like waddington p ping 129 67 1 165 PING 129 67 1 165 129 67 1 165 56 data bytes 64 bytes from 129 67 1 165 icmp_seq 0 ttl 225 time 268 ms 64 bytes from 129 67 1 165 icmp_seq 1 ttl 225 time 247 ms 64 bytes from 129 67 1 165 icmp_seq 2 ttl 225 time 266 ms AC 129 67 1 165 ping statistics 3 packets transmitted 3 packets received 0 packet loss round trip min avg max 247 260 268 ms waddington Try typing netstat nr ThinkCore W311 321 341 Linux User s Manual Managing Communications This should show three routes something like this Kernel routing table Destination Gateway Genmask Flags Metric Ref Use iface 129 67 1 165 0 0 0 0 255 255 255 255 UH 0 0 6 pppO 127 0 0 0 0 0 0 0 255 0 0 0 U 0 0 0 lo 0 0 0 0 129 67 1 165 0 0 0 0 UG 0 0 6298 ppp0 If your output looks similar but doesn t have the destination 0 0 0 0 line which refers to the default route used for connections you may have run pppd without the def
104. rs Changes are periodically made to the information herein to correct such errors and these changes are incorporated into new editions of the publication Chapter 1 Chapter 2 Chapter 3 Table of Contents INTOQUELON ee rannsme ana dvehats naats 1 1 Overview enten det ahnen ul Gite en REA a nnd tees es OE E 1 2 Software Architecture acces ese eieae aeaa heather heen ellae easkers 1 2 Journaling Flash File System JFFS2 annen eneen enveneenvenvencenveenenneene 1 3 Software Packages opran 4 2 supine tenere die eendekker durables 1 4 Getting SlAMEd r oreert eea 2 1 Powering on the W311 321 341 nanne enen onvenvenvenvenvernenneenvenvenvenvenvervenvenvencenneeneene 2 2 Connecting the W311 321 341 to a PC nn eneenvenvenvenvernenneenvenvenvenvenvervenneeneenee 2 2 Serial Console aroase 524 222 62a aan evens bate Ren 2 2 Telnet Consoles scviscss cusses sesvestsestheshscascaset stussy cess heetkethenbeaneni fell Ebsginn 2 3 SSH Console neen enten n ao sn wie E AEE 2 4 Configuring the Ethernet Interface ann onvonvonvenvenneenenvenvervenneenvenvenvenvenvenvenneenenne 2 5 Modifying Network Settings with the Serial Console annen eneen en ven 2 5 Modifying Network Settings over the Network evans enernveneenerne 2 6 Contig rme the WLAN orre ien eetset Blanche renbirteeh 2 6 IEEBS02 1 Ta b 8 t naomi asia oennnatdits Ei een 2 6 Using WPA_SUPPLICANT to Support WPA and WPA2 nennen eenen erneer 2 11 SD Slot and USB for Storage Expansio
105. rted cx Telnet 192 168 27 139 Moxa login root Password HHHHHH HHH HHHH HERH HO HIE HHHHHHHH For further information check http www moxa com broot Moxa H HHHHEHH HHHHHH Hit HH u HH HE HHHHHHH HHHHH Hl HH HHH HIH HH HHH H Hit H Hitt Ht neuen THE HAHA You can proceed with configuring the network settings of the target computer when you reach the bash command shell Configuration instructions are given in the next section A ATTENTION Serial Console Reminder Remember to choose VT100 as the terminal type Use the cable CBL 4PINDB9F 100 which comes with the W311 321 341 to connect to the serial console port Telnet Reminder When connecting to the W311 321 341 over a LAN you must configure your PC s Ethernet IP address to be on the same subnet as the W341 that you wish to contact If you do not get connected on the first try re check the serial and IP settings and then unplug and re plug the power cord SSH Console The W311 321 341 support an SSH Console to provide users with better security options Windows Users Click on the link http www chiark greenend org uk sgtatham putty download html to download PuTTY free software to set up an SSH console for the W311 321 341 in a Windows environment The following figure shows a simple example of the configuration that is required 2 4 ThinkCore W311 321 341 Linux User s Manual Getting Started DX Paul TY C
106. s ez root Moxa 2 19 ThinkCore W311 321 341 Linux User s Manual Getting Started NOTE Use the kill 9 command for PID 728 to terminate this program kill 9 728 Testing Procedure Summary Compile tcps2 c make Upload and run teps2 release in the background tcps2 release amp Check that the process is running jobs or ps ef Use a serial cable to connect PC to the W311 321 341 s serial port 1 Use an Ethernet cable to connect PC2 to the W311 321 341 On PCI If running Windows use HyperTerminal 38400 n 8 1 to open COMn On PC2 Type telnet 192 168 3 127 4001 On PCI Type some text on the keyboard and then press Enter On PC2 The text you typed on PC1 will appear on PC2 s screen 00 SON OY GS The testing environment is illustrated in the following figure However note that there are limitations to the example program teps2 c PC 1 PG tcps2 c Serial Rx Buffer LAN Rx Buffer NOTE The teps2 c application is a simple example designed to give users a basic understanding of the concepts involved in combining Ethernet communication and serial port communication However the example program has some limitations that make it unsuitable for real life applications 1 The serial port is in canonical mode and block mode making it impossible to send data from the Ethernet side to the serial side i e from PC 2 to PC 1 in the above example 2 The Ethernet side will not a
107. se local tcps2 release remote tcps2 release 277 Entering Passive Mode 192 168 3 127 82 253 150 Opening BINARY mode data connection for tcps2 release 226 Transfer complete 4996 bytes sent in 0 00013 seconds 3 9e 04 Kbytes s tp gt IS 227 Entering Passive Mode 192 168 3 127 106 196 150 Opening ASCII mode data connection for bin ls ITO OE root 899 Jun 10 08 11 bash history Sijn 1 root root 4996 Jun 12 02 15 tcps2 release 226 Transfer complete ftp gt 3 From the W311 321 341 type chmod x tcps2 release tcps2 release amp root Moxa ls al Gianpi sars A TOKE TOSE O win 12 Oz drwxr xr xX 15 root root wen il MAO 1 root root 899 Jun 10 08 11 bash history rwer r root root 4996 Jun 12 02215 Ecps2 release root Moxa chmod x tcps2 release root Moxa ls al 5 dhempe sas 2 root root 0 Jun 12 02214 drwxr xr x 13 root Toot 0 wera Al WAO Nn dk e e 899 Jun 10 08 11 bash history EWE EOL TOOR AYE Sen MD ls root Moxa 2 18 ThinkCore W311 321 341 Linux User s Manual Getting Started 4 The program should start running in the background Use the ps ef command to check if the teps2 program is actually running in the background ps use this command to check if the program is running root Moxa ls al drwxr xr x 2 Toot Toot 0 Jun 12 02 14 drwxr xr x ILS root root 0 Jan I 1970 I root HOE SOS wa WO OEL oein lane ij Le HOO 4996 Jun 12 02 15 tcps2 release root Moxa chmod
108. source Help Topics Sd 7 Source Window i a Insight Index Microsoft Internet Explorer File Edit View Favorites Tools Help Dek Or x Ag A JO search Ee Ol 3 El 4 Address c uctusr localtmxsealebisharelinsight1 Oihelplindex henl C UC usr localimxscaleb share insight1 O help index html Breakpoint Window Console Window Function Browser Locals Window Memory Window Register Window Sessions Source Window Stack Window Target Window Thread Window Watch Window 5 12 Programmer s Guide This chapter includes important information for programmers The following functions are covered in this chapter U Flash Memory Map Device API LJ RTC Real Time Clock 0 Buzzer WDT Watch Dog Timer O UART O DO ThinkCore W311 321 341 Linux User s Manual Programmer s Guide Flash Memory Map Partition sizes are hard coded into the kernel binary To change the partition sizes you will need to rebuild the kernel The flash memory map is shown in the following table Address Size Contents 0x00000000 0x0003FFFF 256 KB Boot Loader Read ONLY 0x00040000 0x00 IFFFFF 1 3 MB Kernel object code Read ONLY 0x00200000 Ox009FFFFF 8 MB Root file system JFFS2 Read ONLY 0x00A00000 OxOOFFFFFF 6 MB User directory JFFS2 Read Write Mount the user file system to mnt usrdisk with the root file system Check to s
109. t logs to a specific user Click on the following link for more information about smtpclient http www engelschall com sw smtpclient To send an email message use the smtpclient utility which uses SMTP protocol Type smtpclient help to see the help message Example smtpclient s test f sender company com S IP address receiver company com lt mail body message s The mail subject f Sender s mail address S SMTP server IP address The last mail address receiver company com is the receiver s e mail address mail body message is the mail content The last line of the body of the message should contain ONLY the period character You will need to add your hostname to the file etc hosts The W311 321 341 have built in SNMP V1 Simple Network Management Protocol agent software It supports RFC1317 RS 232 like group and RFC 1213 MIB II The following simple example allows you to use an SNMP browser on the host site to query the W311 321 341 which is the SNMP agent The W311 321 341 will respond tek SNMP QUERY STARTED 1 sysDescr 0 octet string Version 1 0 2 sysObjectID 0 object identifier enterprises 8691 12 240 4 18 ThinkCore W311 321 341 Linux User s Manual Managing Communications sysUpTime 0 timeticks 0 days 03h 50m 11s 00th 1381100 sysContact 0 octet string Moxa Systems Co LDT sysName 0 octet string Moxa sysLocation 0 octet string Unknown
110. t value is 1000 1 second This wait period only applies if the connect or pty option is used plugin pppoe so lt End of File gt options line 1 of 342 4 16 ThinkCore W311 321 341 Linux User s Manual Managing Communications Te Add one of two files etc ppp options eth0 or etc ppp options eth1 The choice depends on which LAN is connected to the ADSL modem If you use LAN to connect to the ADSL modem then add ete ppp options eth0 If you use LAN2 to connect to the ADSL modem then add etc ppp options eth1 The file context is shown below name username hinet net zaken 1 02 mru 1492 defaultroute noipdefault options ixp0 line 1 of 5 20 Type your username the one you set in the etc ppp pap secrets and etc ppp chap secrets files after the name option You may add other options as desired Set up DNS If you are using DNS servers supplied by your ISP edit the file etc resolv conf by adding the following lines of code nameserver ip_addr_of_first_dns_server nameserver ip_addr_of_second_dns_server For example nameserver 168 95 1 1 nameserver 139 175 10 20 Use the following command to create a pppoe connection pppd eth0 The eth0 is what is connected to the ADSL modem LAN port The example above uses LAN To use LAN2 type pppd eth1 Type ifconfig ppp0 to check if the connection is OK or has failed If the connection is OK you will see information about the
111. the latest firmware version from Moxa s website and then upgrade the W31 1 321 341 s hardware System Image Backup Upgrading the Firmware A ATTENTION The W311 321 341 s bios kernel and root file system are combined into one firmware file which can be downloaded from Moxa s website www moxa com The name of the file has the form w341 x x x frm with x x x indicating the firmware version To upgrade the firmware download the firmware file to a PC and then transfer the file to the W311 321 341 using a console port or Telnet console connection Upgrading the firmware will erase all data on the Flash ROM If you are using the ramdisk to store code for your applications beware that updating the firmware will erase all of the data on the Flash ROM You should back up your application files and data before updating the firmware 3 2 ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux Since different Flash disks have different sizes it is a good idea to check the size of your Flash disk before upgrading the firmware or before using the disk to store your application and data files Use the 4 h command to list the size of each memory block and how much free space is available in each block 192 268 3127 PuTTY root Moxa df h Filesystem Size Used Available Use Mounted on dev mtdblock2 8 0M 6 0M 2 0M if dev ram0 499 0k IS Ole 458 0k var dev mtdblock3 6 0M 488 0k 5 5M tmp
112. tility check your IP and DNS settings to make sure that an Internet connection is available Refer to Chapter 2 for instructions on how to configure the Ethernet interface and see Chapter 4 for DNS setting information Updating the Time Automatically In this subsection we show how to use a shell script to update the time automatically Example shell script to update the system time periodically bin sh ntpdate time nist gov You can use the time server s ip address or domain name directly If you use domain name you must enable the domain client on the system by updating etc resolv conf file hwclock systohc sleep 100 Updates every 100 seconds The min time is 100 seconds Change 100 to a larger number to update RTC less often Save the shell script using any file name E g fixtime 3 10 ThinkCore W311 321 341 Linux User s Manual Managing Embedded Linux How to run the shell script automatically when the kernel boots up Copy the example shell script fixtime to directory etc init d and then use chmod 755 fixtime to change the shell script mode Next use vi editor to edit the file etc inittab Add the following line to the bottom of the file ntp 2345 respawn etc init d fixtime Use the command init q to re init the kernel Cron Daemon to Execute Scheduled Commands Start Cron from the directory etc rc d re 1ocal It will return immediately so you don t need to start it with
113. to undergo an additional encryption process after you have developed it The process requires you to install an encryption key in the target computer 1 Choose an encryption key e g ABigKey and install it in the target computer by a pre utility program setkey setkey ABigKey Note set an empty string to clear the encryption key in the target computer by setkey lt 2 Develop and compile your program in the development PC 3 Inthe development PC run the utility program binencryptor to encrypt your program with an encryption key binencryptor yourProgram ABigKey 4 Upload the encrypted program file to the target computerby FTP or NFS and test the program The encryption key is a computer wise key That is to say a computer has only one key installed Running the program setkey multiple times overrides the existing key To prove the effectiveness of this software protection mechanism prepare a target computer that has not been installed an encryption key or install a key different from that used to encrypt your program In any case the encrypted program fails immediately This mechanism also allows the computer with an encryption key to bypass programs that are not encrypted Therefore in the development phase you can develop your programs and test them in the target computer cleanly 8 UC Finder UC Finder comes in handy if you forget the IP address of the target computer while you ha
114. ttings of the LAN interface have been modified issue the following command to activate the LAN settings immediately etc init d networking restart NOTE After changing the IP settings use the networking restart command to activate the new IP address Modifying Network Settings over the Network IP settings can be activated over the network but the new settings will not be saved to the flash ROM without modifying the file etc network interfaces For example type the command ifconfig eth0 192 168 1 1 to change the IP address of LANI to 192 168 1 1 root Moxa ifconfig eth 192 168 27 125 root Moxa _ Configuring the WLAN IEEE802 11a b g Use one of the following options to configure the WLAN for IEEE802 1 1a b g 1 Using the config file to set up your wireless system The config file is ete wireless conf The config file is read by the OS when the W311 321 341 unit boots up You may also use the load_wlan command to force your wireless to run the config file and set up your wireless LAN card after the W311 321 341 unit is already up and running The etc wireless conf file format is shown below 2 6 ThinkCore W311 321 341 Linux User s Manual Getting Started DEVICE eth1 MODE managed ESSID anv KEY any ESA Sst sh Fas t AR fetc wireless conf line 1 of 3 33 etc wireless conf Format DEVICE eth1 MODE managed ESSID any KEY any etc wireless conf Item list DEVICE gt
115. unter 0 519 snmpEnableAuthenTraps 0 integer disabled 2 kt SNMP QUERY FINISHED NOTE Click on the following links for more information about MIB II and RS 232 like groups http www fags org rfes rfc1213 html http www fags org rfes rfc1317 html gt W311 321 341 do NOT support SNMP trap 4 26 ThinkCore W311 321 341 Linux User s Manual Managing Communications OpenVPN OpenVPN provides two types of tunnels for users to implement VPNS Routed IP Tunnels and Bridged Ethernet Tunnels To begin with check to make sure that the system has a virtual device dev net tun If not issue the following command mknod dev net tun c 10 200 An Ethernet bridge is used to connect different Ethernet networks together The Ethernets are bundled into one bigger logical Ethernet Each Ethernet corresponds to one physical interface or port that is connected to the bridge On each OpenVPN machine you should generate a working directory such as etc openvpn where script files and key files reside Once established all operations will be performed in that directory Setup 1 Ethernet Bridging for Private Networks on Different Subnets 1 Set up four machines as shown in the following diagram local net OpenVPN A LANI 192 168 2 173 LANI 192 168 2 171 LAN2 192 168 8 173 Internet LANI 192 168 8 174 LANI 192 168 4 172 LAN2 192 168 4 174 local net Host A B represents one
116. v Ale oe 7 Jared_Wu 4294967295 0 Nov NOME 2 Jared Wu mkpasswd 0 Nov 4 18 07 hello 1 Jared Wu 4294967295 3262 Nov 4 11 12 insight ico 5 Jared_Wu 4294967295 O Nov 4 CSO Tib 1 Jared_Wu 4294967295 ier Now 4 AMOS IEA M ra Dat rwxr x 1 Jared Wu 4294967295 3262 Nov 4 11 12 moxa ico drwxrwx 4 Jared Wu 4294967295 0 Noy 4 Ss tmp drwxrwx 13 Jared Wu 4294967295 0 Novy 4 11 06 usr drwxrwx 6 Jared Wu 4294967295 0 Nov 4 IPSS yar 5 10 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development Next enter the hello directory and invoke the make program that will execute the compilation instructions written in the Makefile to compile the hello project Jared Wu 4294967295 0 Nov 4 11 10 etc Jared Wu mkpasswd 0 Nov 4 18 07 hello drwxrwx 7 6 Kan Pr rwxr x 1 Jared_Wu 4294967295 3262 Nov 4 11 12 insight ico drwxrwx 5 Jared Wu 4294967295 O Nov 4 TIS alto Iib rwxr x 1 Jared_Wu 4294967295 53 Nov 4A 10712 mmopder bat 1 Jared_Wu 4294967295 3262 Nov 4 11 12 moxa ico 4 Jared_Wu 4294967295 0 Nov 4 18 11 tmp 3 Jared Wu 4294967295 0 Nov 4 11 06 usr 6 Jared Wu 4294967295 0 Nov 4 II706 yar LWxr xX drwxrwx drwxrwx 1 drwxrwx cd hello make usr local mxscaleb bin mxscaleb gcc o hello release hello c usr local mxscaleb bin mxscaleb strip s hello release usr local mxscaleb bin mxscaleb gcc ggdb o hello debug hello c ls Makefile README hello debug hello release hello c After
117. ve a demand for troubleshooting field problems This utility works by sending a broadcast message over the LAN to search for IP addresses of target computers Two versions of UC Finder are provided The GUI version works in Windows environments and the command line utility works in Linux environments The following topics are covered in this chapter Q Windows UC Finder gt Installing the Software gt Broadcast Search Q Linux ucfinder ThinkCore W311 321 341 Linux User s Manual UC Finder Windows UC Finder The UC Finder utility is used to search the LAN or intranet for Moxa embedded computers Installing the Software 1 Once the Setup program starts running click on Next to proceed 15 Setup UC Finder Welcome to the UC Finder Setup Wizard This will install UC Finder on your computer kt is recommended that you close all other applications before continuing Click Next to continue or Cancel to exit Setup 2 Click on Next when the Select Additional Tools window opens to proceed with the installation ie Setup UC Finder Select Additional Tasks Which additional tasks should be performed Select the additional tasks you would like Setup to perform while installing UC Finder then click Next Additi 8 2 ThinkCore W311 321 341 Linux User s Manual UC Finder 3 Click on Next to install program files in the default directory or select an alternative location ie Setup UC Finder R
118. w tool chain in a previous root directory would override the old one Choose a different directory to keep both tool chains 5 5 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development 3 Navigate to the directory where the packages of the tool chain reside By default it is on the CD ROM tool chain windows Choose Next to proceed 2 Moxa Linux Tool Chain Setup Select Local Package Directory EIER Select Local Package Directory Select the directory where the package files of Tool Chain exist Local Package Directory E Mool chain windows Browse lt Back Cancel It may take anywhere from 5 to 20 minutes to check the packages in the CD ROM 4 All packages are selected by default Choose Next to continue 2 Moxa Linux Tool Chain Setup Select Packages Select Packages Select packages to install Category New Bi All 4 Default Admin Default Archive 4 Default Base 4 Default Database 4 Default Devel 4 Default Doc 4 Default Editors 4 Default Games 4 Default Graphics 4 Default Cancel e Category column Shows a hierarchical display of packages with category name highest and package name lowest Click the plus sign next to a category name to open the category and see the packages within that category 5 6 ThinkCore W311 321 341 Linux User s Manual Tool Chains for Application Development e Base Category L
119. x x x is the local IP address and y y y y is the IP address of the remote end of the PPP connection If this option is not specified or if just one side is specified then x x x x defaults to the IP address associated with the local machine s hostname located in etc hosts and y y y y is determined by the remote machine 4 13 ThinkCore W311 321 341 Linux User s Manual Managing Communications Example 2 Connecting to a PPP server over a hard wired link If a username and password are not required use the following command note that noipdefault is optional pppd connect chat v noipdefault dev ttyMO 19200 crtscts If a username and password is required use the following command note that noipdefault is optional and root is both the username and password pppd connect chat v user root password root noipdefault dev ttyMO 19200 crtscts How to check the connection Once you ve set up a PPP connection there are some steps you can take to test the connection First type sbin ifconfig The folder ifconfig may be located elsewhere depending on your distribution You should be able to see all the network interfaces that are UP ppp0 should be one of them and you should recognize the first IP address as your own and the P t P address or point to point address the address of your server Here s what it looks like on one machine lo Link encap Local Loopback inet add
120. ype Sets the wireless operation mode Using iwconfig ethl mode Setting Setting Explanation managed Infrastructure mode uses access points to transmit data ad hoc Adhoc mode transmits data from host to host 2 8 ThinkCore W311 321 341 Linux User s Manual Getting Started Channel Sets the channel Using iwconfig ethl channel Setting Note Infrastruct couldn t set channel Freq Sets the channel frequence Using iwconfig eth1 freq Setting G M K Note Infrastruct couldn t set freq 802 11b g Channel and Frequency Table Channel Fregence 2412 K 2417 K 2422 K 2427 K 2432 K 2437 K 2442 K 2447 K 2452 K 10 2457 K 2462 K 12 2467 K 13 2472 K 14 2484 K WO COLAL DD NM BY WI NI ary m 802 11a Channel and Frequency Table Channel Fregence 36 5180 K 40 5200 K 44 5220 K 48 5240 K 52 5260 K 56 5280 K 60 5300 K 64 5320 K 100 5500 K 104 5520 K 108 5540 K 112 5560 K 116 5580 K 120 5600 K 124 5620 K 128 5640 K 132 5660 K 136 5680 K 2 9 ThinkCore W311 321 341 Linux User s Manual Getting Started 140 5700 K 184 4920 K 188 4940 K 192 4960 K 196 4980 K 8 5040 K 12 5060 K 16 5080 K 34 5170 K 38 5190 K 42 5210 K 46 5230 K 149 5745 K 153 5765 K 15

Download Pdf Manuals

image

Related Search

Related Contents

Ultrasonics  HoudahGeo User`s Manual  Oracle FLEXCUBE Universal Banking  Mode d`emploi de Piano Virtuel Midi - p@r M. Brivet  LB-HDMI-DE User Manual.pmd - Broadata Communications, Inc.  Instruções de Operação - sew  Setup Section and Template Editor  DUO JD  MANUAL DE USUARIO. - Tula 200  

Copyright © All rights reserved.
Failed to retrieve file