Flucardのautorun.shを編集


とんすけぶろぐ: FlucardでプログラムとかCGIとかにて配布されているやつを使う時に、この機能は使いたいが、これはいらない、といった好みが分かれるかも?と感じた。

なので、設定ファイルでon/offできるようにしてみた。
Flucardの管理WebからファイルをアップロードするとDCIM/122_TREK/ にファイルがおけるので、そこを見るように作成した。

設定ファイルの「no」と「yes」を変更することで、機能のon/offができるようになっている。
設定を変更したい場合は、管理Webから編集したfluconfig.txtをアップロードしてから、flucardを抜き差しし、再度立ち上げれば反映されるはず。

設定ファイル: DCIM/122_TREK/fluconfig.txt

ADDFILES=no
REPLACEBUSYBOX=no
REPLACEFTPD=no
REPLACETCPSVD=no
ENABLEHTTPD=no
ENABLEFTPD=yes
ENABLETELNETD=yes
ENABLESSHD=yes

これを使うautorun.shの内容

#!/bin/sh

sdstore=/mnt/sd/DCIM/122_TREK
sdconfigfile=/mnt/sd/DCIM/122_TREK/fluconfig.txt

if [ -f $sdconfigfile ];
then
	. $sdconfigfile
fi

if [ "$ADDFILES" = "yes" ];
then
	ln -s $sdstore/bin/* /bin/
	ln -s $sdstore/usr/bin/* /usr/bin/
	ln -s $sdstore/usr/local /usr/local
	ln -s $sdstore/usr/lib /usr/lib
	ln -s $sdstore/usr/include /usr/include
	ln -s $sdstore/usr/libexec /usr/libexec
	ln -s $sdstore/sbin/* /sbin/
	ln -s $sdstore/lib/* /lib/
	ln -s $sdstore/etc/* /etc/
	ln -s $sdstore/www/* /www/
	ln -s $sdstore/www/cgi-bin/* /www/cgi-bin/
fi

if [ "$REPLACEBUSYBOX" = "yes" ];
then
	ln -s $sdstore/busybox /bin/awk
	rm /bin/dd
	ln -s $sdstore/busybox /bin/dd
	ln -s $sdstore/busybox /bin/find
	ln -s $sdstore/busybox /bin/grep
	ln -s $sdstore/busybox /bin/hexdump
	ln -s $sdstore/busybox /bin/killall
	ln -s $sdstore/busybox /bin/less
	ln -s $sdstore/busybox /bin/passwd
	ln -s $sdstore/busybox /bin/sed
	ln -s $sdstore/busybox /bin/tar
	ln -s $sdstore/busybox /bin/telnetd
	ln -s $sdstore/busybox /bin/watch
	ln -s $sdstore/busybox /bin/whoami
fi

if [ "$REPLACEFTPD" = "yes" ];
then
	rm /usr/sbin/ftpd
	ln -s $sdstore/busybox /usr/sbin/ftpd
fi

if [ "$REPLACETCPSVD" = "yes" ];
then
	rm /usr/bin/tcpsvd
	ln -s $sdstore/busybox /usr/bin/tcpsvd
fi

if [ "$ENABLEHTTPD" = "yes" ];
then
	killall httpd
	sleep 1
	httpd -h /www -c /etc/httpd.conf&
fi

if [ "$ENABLEFTPD" = "yes" ];
then
	$sdstore/busybox tcpsvd 0.0.0.0 21 ftpd -w /&
	sleep 1
fi

if [ "$ENABLETELNETD" = "yes" ];
then
	killall telnetd
	sleep 1

	mount -t devpts /dev/pts
	$sdstore/busybox telnetd -l /bin/sh &
	sleep 1
fi

if [ "$ENABLESSHD" = "yes" ];
then
	dropbear -A -N root -C admin -U 0 -G 0
	sleep 1
fi

Flucard firmware ver3.65でtelentdを有効にする方法


まず、とんすけぶろぐ: FlucardでプログラムとかCGIとかにて配布されているdelpoy~.zipの最新版を持ってきます。

readme.txtにあるとおりにコピーしてもいいのですが、これだけではtelnetdが有効になりません。

私の環境では、コピーした後、autorun.shだけを以下の内容に差し替えて使っています。

#!/bin/sh

is_prevent_auto_start_wifi=no

mount -t devpts /dev/pts
/mnt/sd/DCIM/122_TREK/busybox telnetd -l /bin/sh &

/mnt/sd/DCIM/122_TREK/busybox tcpsvd 0.0.0.0 21 ftpd -w /&
sleep 1
/mnt/sd/DCIM/122_TREK/sbin/dropbear -A -N root -C admin -U 0 -G 0
sleep 1

「is_prevent_auto_start_wifi=no」というのはver3.65では、autorun.shが存在していると、wifiの自動起動を無効化しているように見えたため、入れてみました。
手動でwifiをonしてる場合は関係ないはずです。

ただ、いまのところ、この設定を入れてみても、wifiの自動起動をしてくれない感じです。
(exportをつけてみても同じ)

Flucard busyboxの持ってる機能比較


Flcuardで使われているbusyboxで提供されている機能は何があるのか、比較した。

Firmware 3.24

BusyBox v1.18.3 (2011-08-05 15:32:35 SGT) multi-call binary.
Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: busybox --list[-full]
   or: function [arguments]...

        BusyBox is a multi-call binary that combines many common Unix
        utilities into a single executable.  Most people will create a
        link to busybox for each function they wish to use and BusyBox
        will act like whatever it was invoked as.

Currently defined functions:
        acpid, ash, base64, beep, blkid, blockdev, bootchartd, buzzer, cat,
        chmod, connect_router, cp, depmod, devmem, df, dhcprelay, dmesg, dnsd,
        dnsdomainname, download, download_multi, dumpleases, echo, env,
        flash_eraseall, flu_app, folderOpt, fsync, ftpd, ftpget, ftpput,
        get_config, get_uap_ssid, hostname, htmlcgi, httpd, id, ifconfig,
        ifrename, inetd, init, input, insmod, ionice, ip, ipaddr, iplink,
        iproute, iprule, iptunnel, iwconfig, iwevent, iwlist, iwpriv, kill,
        linuxrc, ln, localization, logpage, ls, lsmod, macaddr, md5sum,
        microcom, mkdir, mknod, modinfo, modprobe, motion_app, mount, mv,
        netstat, nslookup, output, photo, photolist, ping, pkill, playNote,
        power_up_app, preview, printenv, printf, production_test, ps, pwd, pwm,
        readahead, receiver, rename, renice, replace_file_content, rev, rm,
        rmdir, rmmod, route, sender, seq, serverUpload, settings_and_review,
        sh, sha256sum, sha512sum, showkey, sleep, startup, status, sync,
        sysctl, telnetd, thumbNail, thumb_video, timeout, top, touch, udhcpc,
        udhcpd, udpsvd, umount, upload, upload_sd, upload_to_sd, uptime,
        usleep, vconfig, vi, video, volname, wall, wget, wifi_setup

Firmware 3.65

BusyBox v1.18.3 (2012-02-29 09:44:09 SGT) multi-call binary.
Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: busybox --list[-full]
   or: function [arguments]...

        BusyBox is a multi-call binary that combines many common Unix
        utilities into a single executable.  Most people will create a
        link to busybox for each function they wish to use and BusyBox
        will act like whatever it was invoked as.

Currently defined functions:
        acpid, ash, base64, blkid, blockdev, buzzer, cat, chmod,
        connect_router, connect_uap_sender, cp, date, datetime, dcraw, depmod,
        devmem, df, dhcprelay, dnsd, dnsdomainname, download, download_multi,
        dumpleases, echo, env, flash_eraseall, flu_app, folderOpt, fsync,
        ftpget, ftpput, get_config, get_uap_ssid, hostname, htmlcgi,
        http_upload, httpd, id, ifconfig, ifrename, inetd, init, input, insmod,
        ionice, ip, ipaddr, iplink, iproute, iprule, iptunnel, iwconfig,
        iwevent, iwlist, iwpriv, kill, linuxrc, ln, localization, logpage, ls,
        lsdir, lsmod, macaddr, md5sum, microcom, mkdir, mknod, modinfo,
        modprobe, motion_app, motion_cgi, mount, mv, netstat, output, photo,
        photolist, ping, pkill, playNote, power_up_app, preview, printenv,
        printf, production_test, ps, pwd, pwm, readahead, receiver, rename,
        renice, replace_file_content, rev, rm, rmdir, rmmod, route, sender,
        seq, serverUpload, set_config, settings_and_review, sh, sha256sum,
        sha512sum, showkey, sleep, startup, status, sync, sysctl, thumbNail,
        thumbRaw, thumb_video, timeout, top, touch, udhcpc, udhcpd, udpsvd,
        umount, upload, upload_sd, upload_to_sd, usleep, vconfig, vi, video,
        volname, wall, wget, wifi_setup

とんすけぶろぐ: FlucardでプログラムとかCGIとかにて配布されているbusyboxの2012/04/10版

BusyBox v1.19.4 (2012-04-04 15:08:58 JST) multi-call binary.
Copyright (C) 1998-2011 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: busybox --list[-full]
   or: function [arguments]...

        BusyBox is a multi-call binary that combines many common Unix
        utilities into a single executable.  Most people will create a
        link to busybox for each function they wish to use and BusyBox
        will act like whatever it was invoked as.

Currently defined functions:
        [, [[, acpid, add-shell, addgroup, adduser, adjtimex, arp, arping, ash,
        awk, base64, basename, beep, blkid, blockdev, bootchartd, brctl,
        bunzip2, bzcat, bzip2, cal, cat, catv, chat, chattr, chgrp, chmod,
        chown, chpasswd, chpst, chroot, chrt, chvt, cksum, clear, cmp, comm,
        cp, cpio, crond, crontab, cryptpw, cttyhack, cut, date, dc, dd,
        deallocvt, delgroup, deluser, depmod, devmem, df, dhcprelay, diff,
        dirname, dmesg, dnsd, dnsdomainname, dos2unix, du, dumpkmap,
        dumpleases, echo, ed, egrep, eject, env, envdir, envuidgid, ether-wake,
        expand, expr, fakeidentd, false, fbset, fbsplash, fdflush, fdformat,
        fdisk, fgconsole, fgrep, find, findfs, flock, fold, free, freeramdisk,
        fsck, fsck.minix, fsync, ftpd, ftpget, ftpput, fuser, getopt, getty,
        grep, groups, gunzip, gzip, halt, hd, hdparm, head, hexdump, hostid,
        hostname, httpd, hush, hwclock, id, ifconfig, ifdown, ifenslave,
        ifplugd, ifup, inetd, init, insmod, install, ionice, iostat, ip,
        ipaddr, ipcalc, ipcrm, ipcs, iplink, iproute, iprule, iptunnel,
        kbd_mode, kill, killall, killall5, klogd, last, less, linux32, linux64,
        linuxrc, ln, loadfont, loadkmap, logger, login, logname, logread,
        losetup, lpd, lpq, lpr, ls, lsattr, lsmod, lspci, lsusb, lzcat, lzma,
        lzop, lzopcat, makedevs, makemime, man, md5sum, mdev, mesg, microcom,
        mkdir, mkdosfs, mke2fs, mkfifo, mkfs.ext2, mkfs.minix, mkfs.vfat,
        mknod, mkpasswd, mkswap, mktemp, modinfo, modprobe, more, mount,
        mountpoint, mpstat, mt, mv, nameif, nbd-client, nc, netstat, nice,
        nmeter, nohup, nslookup, ntpd, od, openvt, passwd, patch, pgrep, pidof,
        ping, ping6, pipe_progress, pivot_root, pkill, pmap, popmaildir,
        poweroff, powertop, printenv, printf, ps, pscan, pstree, pwd, pwdx,
        raidautorun, rdate, rdev, readahead, readlink, readprofile, realpath,
        reboot, reformime, remove-shell, renice, reset, resize, rev, rm, rmdir,
        rmmod, route, rpm, rpm2cpio, rtcwake, run-parts, runlevel, runsv,
        runsvdir, rx, script, scriptreplay, sed, sendmail, seq, setarch,
        setconsole, setfont, setkeycodes, setlogcons, setserial, setsid,
        setuidgid, sh, sha1sum, sha256sum, sha512sum, showkey, slattach, sleep,
        smemcap, softlimit, sort, split, start-stop-daemon, stat, strings,
        stty, su, sulogin, sum, sv, svlogd, swapoff, swapon, switch_root, sync,
        sysctl, syslogd, tac, tail, tar, tcpsvd, tee, telnet, telnetd, test,
        tftp, tftpd, time, timeout, top, touch, tr, traceroute, traceroute6,
        true, tty, ttysize, tunctl, ubiattach, ubidetach, ubimkvol, ubirmvol,
        ubirsvol, ubiupdatevol, udhcpc, udhcpd, udpsvd, umount, uname,
        unexpand, uniq, unix2dos, unlzma, unlzop, unxz, unzip, uptime, users,
        usleep, uudecode, uuencode, vconfig, vi, vlock, volname, wall, watch,
        watchdog, wc, wget, which, who, whoami, whois, xargs, xz, xzcat, yes,
        zcat, zcip

Flucard firmware 3.24と3.65のファイル上での違い


バイナリファイルは結構違うようだけど、とりあえず、それは置いておく
それ以外の違いについて調べた

/etc/init.d/rcS における差

・読み込むモジュールが変わった

冒頭で「ka2000-sdhc.ko」を読み込む(以前はコメントアウトされていた)

-#insmod /lib/ka2000-sdhc.ko
+insmod /lib/ka2000-sdhc.ko

中盤で読み込んでいた「gpio_i2c.ko」を読み込まなくなった。

-insmod /lib/gpio_i2c.ko
-#sleep 1
+#insmod /lib/gpio_i2c.ko

・自動wifi起動関連の処理が入った

+is_prevent_auto_start_wifi=no
+
+get_config -p "Auto Start Wifi"
+original_auto_wifi_value=`cat /param_value.txt`

など

・/mnt/sd/autorun.shというファイルがあるときは自動wifi起動が実行されない
という設定を入れられている。

 # autorun.sh from sd in case need to perform some test mode
 if [ -f /mnt/sd/autorun.sh ]
 then
        sleep 1
+       is_prevent_auto_start_wifi=yes
        chmod 777 /mnt/sd/autorun.sh
        /mnt/sd/autorun.sh

 fi

・自動wifi起動関連処理の続き

+if [ "$is_prevent_auto_start_wifi" = "no" ]; then
+       get_config -p "Auto Start Wifi"
+       autowifi=`cat /param_value.txt`
+       if [ "$autowifi" = "uap" ]; then
+               if [ ! -f /wifi_flag.txt ]; then
+                       uap
+
+                       # check and disable wifi after timeout if no station connects
+                       check_sta.sh &
+               fi
+       fi
+       if [ "$autowifi" = "sta" ]; then
+               if [ ! -f /wifi_flag.txt ]; then
+                       w2
+               fi
+       fi
+fi
+# set the default value if it is not set
+if [ "$original_auto_wifi_value" = "" ]; then
+       set_config -p "Auto Start Wifi" -v  "uap"
+
+fi

/etc/mtab における違い
・「none /dev/pts devpts mode=0622 0 0」が削除された
telnetdを消したことによる変更。

/etc/uaputl.conf における違い
・MaxStaNumの値が5から8に増加
同時接続数が増えた(「Max number of stations allowed to connect」)

/etc/uaputl_sender.conf というファイルが追加
「Trek_FLUCARD_WiFi」に関する設定が入っている。
かなり細かい設定が書かれている。

#   File : uaputl.conf


ap_config={
    SSID="Trek_FLUCARD_WiFi"         # SSID of Micro AP
    BeaconPeriod=100                # Beacon period in TU
    Channel=6                       # Radio Channel     6
#   Channel=0,1                     # auto channel select (MCS mode)
#   Channel=6,2                     # primary channel 6, secondary channel above.
#   Channel=6,4                     # primary channel 6, secondary channel below
    ChanList=1,6,11                 # Scan channel list
    #AP_MAC=00:21:E8:71:B8:F4        # MAC address of AP
    RxAntenna=0                     # 0 for Antenna A
                                    # 1 for Antenna B
    TxAntenna=0                     # 0 for Antenna A
                                    # 1 for Antenna B
    Rate=0x82,0x84,0x8b,0x96,0x0C,0x12,0x18,0x24,0x30,0x48,0x60,0x6c
                                    # Set of data rate that a station
                                    # in the BSS may use
                                    # (in unit of 500 kilobit/s)
    TxPowerLevel=13                 # Transmit power level in dBm
    BroadcastSSID=1                 # Broadcast SSID feature
                                    # 1: Enable  0:Disable
    RTSThreshold=2347               # RTS threshold value
    FragThreshold=2346              # Fragmentation threshold value
    DTIMPeriod=10                    # DTIM period in beacon periods
    RadioControl=1                  # 0: radio on  1: radio off
    MCBCdataRate=0                  # MCBC rate to use for packet transmission
                                    # 0:auto
                                    # >0 fix rate (in unit of 500 kilobit/s)
    TxDataRate=0                    # Data rate to use for packet transmission
                                    # 0:auto
                                    # >0 fix rate (in unit of 500 kilobit/s)
    PktFwdCtl=1                     # Packet forwarding control
                                    # 0: forward all packets to the host
                                    # 1: firmware handles intr-BSS packets
    StaAgeoutTimer=1800             # Inactive client station age out timer value
                                    # in units of 100ms
    PSStaAgeoutTimer=400            # Inactive client PS station age out timer value
                                    # in units of 100ms
                                                                        # try to set to 5 first for sender mode
    MaxStaNum=5                     # Max number of stations allowed to connect
    Retrylimit=7                    # Retry limit to use for packet transmissions
    AuthMode=0                      # 0:Open authentication
                                    # 1:shared key authentication
    Protocol=1                     # protocol to use
                                    # 1: No security    2: Static WEP
                                    # 8: WPA    32: WPA2    40:WPA2 Mixed Mode
    RSNReplayProtection=0           # RSN replay protection 0: disabled, 1: enabled
    PairwiseUpdateTimeout=100       #Pairwise Handshake update timeout: 100ms
    PairwiseHandshakeRetries=3      #Pairwise Handshake retries: 3
    GroupwiseUpdateTimeout=100      #Groupwise Handshake update timeout: 100ms
    GroupwiseHandshakeRetries=3           #Groupwise Handshake retries: 3

# **** WEP security setting******
#   KeyIndex=0                      # Index of WEP key to use (0 to 3)
#   Sample Key configurations are
#       Key_0=55555
#       Key_1=1234567890
#       Key_2="1234567890123"
#       Key_3=12345678901234567890123456

# **** Pairwise Cipher setting******
#    Configure both of the following for Protocol=40
#    PwkCipherWPA=4                 # Pairwise cipher type
                                    # 4: TKIP     8: AES CCMP
                                    # 12: AES CCMP + TKIP
#    PwkCipherWPA2=8                # Pairwise cipher type
                                    # 4: TKIP     8: AES CCMP
                                    # 12: AES CCMP + TKIP

# **** Group Cipher setting******

#    GwkCipher=4                    # group cipher type
                                    # 4: TKIP     8: AES CCMP

#    PSK="1234567890"               # WPA/WPA2 passphrase
#     GroupRekeyTime= 86400          # Group key re-key interval, in second.
                                    # 0 mean never re-key
                                    #802.11D specific configuration
    11d_enable=0                    # 0-disable 1-enable
#    country=SG                      # country information

}



ap_mac_filter={
    FilterMode=0                    # Mode of filter table
                                    # 0: filter table is disabled
                                    # 1: allow MAC address in the filter table to associate
                                    # 2: block MAC address in the filter table
    Count=0                         # Number of entries in filter table,up to 16
#Sample mac settings are
#    mac_1=00:50:23:45:76:22         # mac address
#    mac_2=00:34:22:77:46:34         # mac address
}

/etc/udhcpd.conf および /etc/udhcpd_uap.conf の変更点
default gatewayなどの設定に変化があり。

 start 192.168.1.50
 end   192.168.1.250  #default can hold max 200 FLUCARD
 max_leases      200
 interface       mlan0
 lease_file      /var/lib/misc/udhcpd.lease
 option  subnet  255.255.255.0
-option  router  192.168.1.1
+#option  router  192.168.1.1
 option  dns     192.168.1.1
-option  domain  FLUCARD
+#option  domain  FLUCARD
+option  search  192.168.1.1
 option  lease   86400 #1 day of seconds
 option  mtu     1500
 start 192.168.1.50
 end   192.168.1.250  #default can hold max 200 FLUCARD
 max_leases      200
 interface       uap0
 lease_file      /var/lib/misc/udhcpd.lease
 option  subnet  255.255.255.0
 option  domain  FLUCARD
 option  lease   10 #reduce lease time from 86400 to force pc renew ip
 option  mtu     1500
-option router 192.168.1.1
-option dns 192.168.1.1

・設定ファイル
/mnt/mtd/config/config.trek
/www/mtd/config/config.trek

いまの設定

[LANGUAGE]
English
[AP]
AP_ACCOUNT : 1
SSID : SSID名
Key : キー
[FTP]
FTP Path : アップロード先
User Name : ユーザ名
Password : パスワード
Server Type : Gallery3
Upload jpeg : yes
Upload raw : no
Upload video : no
[Wi-Fi Setting]
FLUCARD SSID : Trek_FLUCARD_WiFi
FLUCARD KEY :
Auto Start Wifi : none
My IP Addr : 192.168.1.1
Target IP Addr : 192.168.1.1
[MISC]
Download Enable :
Power Saving :
Channel : 6
Buzzer Mode : Normal
Display raw : yes
Sender jpeg : yes
Sender raw : no
Sender video : no
Public SSID : Trek_FLUCARD_Public
Private SSID :
Private KEY :
Always Private : no
Starting Mode : Public

・ファイルのアップロードログ
/www/page/upload.log

FLUCARD GEN 2とGEN 3の違い


firmwareアップデータのデータを確認すると、「FLUCARD GEN2」と「FLUCARD GEN3」というものが存在しているらしい。
「FLUCARD GEN1」は、黒いFLUCARDのことだと思われる。
「FLUCARD GEN3」が何をさすのかがよく分からない。16GBモデルのことなんだろうか?

それは、ひとまずおいておくとして、firmwareを見る限りでのFLUCARD GEN 2とFLUCARD GEN 3の違いを確認してみた。
busyboxバイナリ自体は同一の様に見える。
設定ファイルやWeb管理画面のテンプレートレベルでの差異は、以下の様になっていた。
GEN 3では、いろいろと音が鳴らないような感じになるのか?

diff -Nur initramfs/etc/udhcpd.conf initramfs3/etc/udhcpd.conf
--- initramfs/etc/udhcpd.conf   2012-04-05 13:25:02.000000000 +0900
+++ initramfs3/etc/udhcpd.conf  2012-04-09 16:06:48.000000000 +0900
@@ -7,6 +7,6 @@
 #option  router  192.168.1.1
 option  dns     192.168.1.1
 #option  domain  FLUCARD
-option         search  192.168.1.1
+#option        search  192.168.1.1
 option  lease   86400 #1 day of seconds
 option  mtu     1500
diff -Nur initramfs/usr/bin/rcS1 initramfs3/usr/bin/rcS1
--- initramfs/usr/bin/rcS1      2012-04-05 13:25:02.000000000 +0900
+++ initramfs3/usr/bin/rcS1     2012-04-09 16:06:48.000000000 +0900
@@ -1,3 +1,3 @@
-# alex remove telnetd
-# mount -t devpts /dev/pts
-# telnetd -l /bin/sh
+# alex comment out telnet  server
+#mount -t devpts /dev/pts
+#telnetd -l /bin/sh
diff -Nur initramfs/usr/bin/uap initramfs3/usr/bin/uap
--- initramfs/usr/bin/uap       2012-04-05 13:25:02.000000000 +0900
+++ initramfs3/usr/bin/uap      2012-04-09 16:06:48.000000000 +0900
@@ -1,4 +1,5 @@
 #!/bin/sh
+buzzer -t 2
 echo "uAp start"
 # load wifi driver
 w1
@@ -6,10 +7,10 @@
 sleep 2

 ifconfig mlan0 down
-# improve the scan time
+
+#improve the scan time
 iwpriv mlan0 scancfg 2 3 1 110  100 100

-buzzer -t 2

 sleep 2

@@ -96,12 +97,12 @@
 fi


-#sleep 1
+sleep 1


 uaputl sys_cfg_channel $channel

-#sleep 1
+sleep 1

 # generate unique ssid; by default is from config file; however, if there
 # is another flucard with the same ssid, automatically add suffix _1, _2, etc.
diff -Nur initramfs/usr/bin/uap_sender initramfs3/usr/bin/uap_sender
--- initramfs/usr/bin/uap_sender        2012-04-05 13:25:02.000000000 +0900
+++ initramfs3/usr/bin/uap_sender       2012-04-09 16:06:48.000000000 +0900
@@ -1,15 +1,14 @@
 #!/bin/sh
-
+buzzer -t 2
 echo "uAp for sender start"
 # load wifi driver
 w1

-sleep 2
+sleep 1

 ifconfig mlan0 down
-buzzer -t 2

-sleep 2
+#sleep 2



 #obtain the essid from config file
@@ -70,7 +69,7 @@
 # use separate config file from normal setting review
 uaputl sys_config /etc/uaputl_sender.conf

-sleep 1
+#sleep 1

 uaputl sys_cfg_11n 0
diff -Nur initramfs/usr/bin/w0 initramfs3/usr/bin/w0
--- initramfs/usr/bin/w0        2012-04-05 13:25:02.000000000 +0900
+++ initramfs3/usr/bin/w0       2012-04-09 16:06:48.000000000 +0900
@@ -1,3 +1,5 @@
+#!/bin/sh
+
 pkill httpd
 pkill dnsd
 pkill telnetd
@@ -8,3 +10,4 @@
 rmmod /lib/mlan.ko
 rmmod /lib/ka2000-sdio.ko

+
diff -Nur initramfs/usr/bin/w1 initramfs3/usr/bin/w1
--- initramfs/usr/bin/w1        2012-04-05 13:25:02.000000000 +0900
+++ initramfs3/usr/bin/w1       2012-04-09 16:06:48.000000000 +0900
@@ -1,8 +1,14 @@
+#!/bin/sh
 export FIRMWARE="/lib/firmware"
 insmod /lib/ka2000-sdio.ko
 insmod /lib/mlan.ko
 insmod /lib/sd8xxx.ko

+echo '' > /wifi_flag.txt
+
 #iwpriv mlan0 version
 #iwpriv mlan0 httxcfg 0x62
 #iwpriv mlan0 htcapinfo 0x1820000
+
+
+
diff -Nur initramfs/www/css/css_main.css initramfs3/www/css/css_main.css
--- initramfs/www/css/css_main.css      2012-04-05 13:25:01.000000000 +0900
+++ initramfs3/www/css/css_main.css     2012-04-09 16:06:46.000000000 +0900
@@ -29,7 +29,7 @@
 input.submit{  line-height: normal;    color: black;   font-size: 25px;        height: 18px;       width: 75px; font-weight: bold;}


-select  {vertical-align: middle; height: 50px; color: black;}
+select  {vertical-align: top;height: 10px      color: red;}
 select.list { width: 120px;}
 select.listL { width: 150px;}
 select.listS { width: 80px;}