Kernel 2.6.25.7-kb1 for Korebot LE, NOT the Korebot II Procedure for upgrading Kernel 2.6.x to 2.6.25.7-kb1 with Libertas driver for Marwell compatible Wifi G cards K-Team SA, J.Tharin versions: 1.0 13.10.2008 first version 1.1 22.10.2008 added details in instructions 1.2 06.03.2009 added details for the full toolchain (chapter 2. d)) 1.3 09.03.2009 added sources file location; updated wpa-tkip details 1.4 15.04.2009 Added details, corrected modules load (pcmcia,pxa2xx_cs) ======== required hardware/software =========================================== required hardwares: - Korebot with image and Kernel 2.6 - compact flash Wifi G card (Ambicom WL5400G-CF, SparkLAN WCFM-100 (CF), Pretec CompactWLAN 802.11g CFEWGS or Marwell compatible chipset (libertas driver)) required softwares: - development directory(see http://ftp.k-team.com/korebot/toolchain-2.6-betaV0.1/light_toolchain/development_light_kernel2.6_readme.txt ) sources files: path: http://ftp.k-team.com/korebot/kernel/kernel2.6.25.7-kb1/ - linux-2.6.25.7-kb1.tar.bz2 - gspcav1-20071224-kb1.tar.bz2 - korebot-various-1.0.tar.bz2 - libertas-tools.tar.bz2 remark: this kernel works also with Wifi B cards (hostap driver): replace eth0 by wlan0 ======== Install ============================================================= 1. Enter your development directory (see see http://ftp.k-team.com/korebot/toolchain-2.6-betaV0.1/light_toolchain/development_light_kernel2.6_readme.txt ) 2. a) Modify KTEAM_KERNEL_VERSION in env.sh to: export KTEAM_KERNEL_VERSION=2.6.25.7-kb1 b) enter bash shell by executing: bash c) then source env.sh to have access to the cross-compiler and development variables: source env.sh d) if you installed the full toolchain (http://ftp.k-team.com/korebot/toolchain-2.6-betaV0.1/full_toolchain/development_toolchain_full_version_2.6_readme.txt), you have to modify the 2 following lines to adapt to the new kernel path and name version in the file /usr/local/korebot-oetools-1.0/create-image.sh: ROOTFS_MODULES_SRC="/home/jtharin/projects/kernel2.6/development/dist/lib/modules/2.6.25.7-kb1" /sbin/depmod -a -b build/tmp/rootfs 2.6.25.7-kb1 3. Extract the following files in your development directory: various: korebot-various-1.0.tar.bz2 kernel: linux-2.6.25.7-kb1.tar.bz2 camera driver: gspcav1-20071224-kb1.tar.bz2 4. In gspcav1-20071224-kb1, execute make clean make make install 5. Change directory to linux-2.6.25.7-kb1 and compile the kernel with the usual commands: make menuconfig (Select , if you don't want to customize the kernel) make -j3 make modules_install (DO NOT run make install). => Your kernel has been built. 6. Enter the ktboot-1.6 directory and modify the Makefile: replace the uncommented line "KERNEL = .." by "KERNEL = $(KTEAM_KERNEL_HOME)" and modify the variable "SDEV = /dev/ttyS0" to match your serial port connection 7. a) Connect the Korebot to the computer. b) Edit the script picocom in your development directory to match your serial port connection and run it: ./picocom c) Reboot the KoreBot, then press a key when U-Boot asks for autoboot. d) Type Ctrl-y Ctrl-x to exit picocom. e) Use the following command to upload the kernel: make flashk 8. Reboot the Korebot 9. Remove the old modules on the korebot: rm -rf /lib/modules/2.6.* 10. Connect the korebot with the usb cable (the module g_ether is already in the new kernel): and change it's IP address with the command (the old ip 10.0.0.2/24 does not work anymore): ifconfig usb0 10.0.0.2 netmask 255.255.255.0 11. On the computer, edit the script tx-ssh in the directory "dist": - replace 2.6.23-kb1 with $KTEAM_KERNEL_VERSION - execute it to transfert the modules: ./tx-ssh Remarks: if the file tx-ssh is not executable, change its mode with chmod +x tx-ssh 12. a) Extract the file libertas-tools.tar.bz2 b) Copy the firmware files of the Wifi G card libertas-tools/fwcutter/*.fw (2 files) into /lib/firmware on KoreBot as follow: In the libertas-tools/fwcutter/ directory, execute the following command to copy the files to the korebot: scp *.fw root@10.0.0.2:/lib/firmware 13. Add the two following modules with the following commands to be able to detect automatically the compact flash card: echo pcmcia>>/etc/modules echo pxa2xx_cs>>/etc/modules ======== Usage ================================================================ - Insert the Wifi Card and power up the Korebot - Configure the Wifi connection: I) WEP support a) for configuring the wifi connection, type: iwconfig eth0 essid YOUR_SSID_OF_NETWORK b) if the network is secured, enter the key by typing : iwconfig eth0 key YOUR_KEY c) then set an ip address to the korebot: ifconfig eth0 YOUR_IP_ADDRESS d) configure the gateway by entering the gateway ip: route add default gw YOUR_GATEWAY_IP eth0 e) insert the local domain name in /etc/resolv.conf: echo search YOUR_LOCAL_DOMAIN_NAME>> /etc/resolv.conf f) and the dns server. echo nameserver YOUR_DNS_SERVER_IP_ADDRESS>> /etc/resolv.conf You can also create a file in /etc/network/if-pre-up.d named wireless to have these settings saved and put the following into it: #!/bin/sh ifconfig eth0 up iwconfig eth0 essid YOUR_SSID_OF_NETWORK iwconfig eth0 key s:YOUR_KEY ifconfig eth0 YOUR_IP_ADDRESS route add default gw YOUR_GATEWAY_IP eth0 and the following in a file named /etc/resolv.conf: search YOUR_LOCAL_DOMAIN_NAME nameserver YOUR_DNS_SERVER_IP_ADDRESS II) WEP, WPA and other encryptions: a) create a file named /etc/wpa_supplicant/wpa_supplicant.conf and insert your selected wireless encryption: #Shared WEP key connection (no WPA): network={ ssid="YOUR_SSID" key_mgmt=NONE wep_key0="YOUR_WEP_KEY" auth_alg=SHARED wep_tx_keyidx=0 priority=5 } WPA-TKIP: - see instructions at : http://ftp.k-team.com/korebot/kernel/modules/wpa-tkip/wpa-tkip_support.txt #/etc/wpa_supplicant/wpa_supplicant.conf #with WPA-PSK TKIT: network={ ssid="YOUR_SSID" key_mgmt=WPA-PSK group=TKIP psk="YOUR_PASS_KEY" pairwise=TKIP proto=WPA priority=5 } You can check the following link for other encryptions: http://hostap.epitest.fi/wpa_supplicant/ b) run the daemon controlling the wireless connection with the following command: wpa_supplicant -c /etc/wpa_supplicant/wpa_supplicant.conf -i eth0 -Dwext -B You can also add the command above to a file in /etc/network/if-pre-up.d named wireless: #!/bin/sh ifconfig eth0 up ifconfig eth0 YOUR_IP_ADDRESS route add default gw YOUR_GATEWAY eth0 wpa_supplicant -c /etc/wpa_supplicant/wpa_supplicant.conf -i eth0 -Dwext -B