Sunday, October 25, 2009

tinyOS make error

There is an error might be occurred when compiling.
/opt/msp430/msp430/include/stdlib.h:52: syntax error before "asm"
make: *** [exe0] Error 1


Here is a solution,

Modify Line 52 of /opt/msp430/msp430/include/stdlib.h:
extern void exit(int) __asm__(”__stop_progExec__”) __ATTR_CONST__;

Into
extern void exit(int) __ATTR_CONST__;
void exit(int a) __asm__("__stop_progExec__");

Monday, August 03, 2009

YuShanNet - Base Station Installation Guide

 



  • Overview - Base Station Functionality


Helping forwarding the user tags' information to the server.

Using 3G communicate to the server.

 



  • Install Debian From USB CD-ROM


Do NOT install any addiction package (space is limited)



  • Install required package


apt-get install libdevice-serialport-perl


apt-get install expect


apt-get install wvdial


apt-get install rsync


apt-get install beep


apt-get install ntpdate




  • Change time zone

ln -sf /usr/share/zoneinfo/Asia/Taipei /etc/localtime



  • Edit wvdial.conf


vim /etc/wvdial.conf

 

[Dialer Defaults]
Init1 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0

Modem Type = USB Modem

IDSN = 0

New PPPD = yes

Phone = *99#

Modem = /dev/ttyUSB1

Username = default

Password = default

Ask Password = 0

Dial Command = ATD

Stupid Mode = yes



  •  Create udev rule for serial device

vim /etc/udev/rules.d/taroko.rules 
 

kerne;="ttyUSB*", SYSFS{idVendor}=="0403", SYSFS{idProduct}=="6001", SYMLINK="TAROKO"



vim /etc/udev/rules.d/battery.rules

 

KERNEL=="ttyUSB*", SYSFS{idVendor}=="067b", SYSFS{idProduct}=="2303", SYMLINK="BATTERY"



  •  Edit rc.local


vim /etc/rc.local

 

/usr/bin/wvdialconf

/usr/bin/wvdial &

sh /root/BaseStation/run &

sh /root/BatteryMonitor/run &

sh /root/check.sh

exit 0



  • Copy and extract Base Station file to /root

 File structure
 

    /root

    |
    |-- BaseStation
    |   |-- SerialForwarder.pl
    |   |-- run
    |   |-- send
    |   |   `-- message
    |   `-- wildernessnet.sql
    |-- BatteryMonitor
    |   |-- SerialBattery.pl
    |   `-- run
    |-- check.sh
    `-- cmdSender.sh



  •  Add crontab tasks


crontab -e

 


# m h  dom mon dow   command

*        *    *     *       *       sh /root/cmdSender.sh "/sbin/ifconfig" "/root/BaseStation/send/message/" "network.log"

*/10    *    *    *       *       sh /root/cmdSender.sh "sh /root/check.sh" "/root/BaseStation/send/message/" "check.log"

*        *    *    *       *       rsync -av --compress --remove-source-files --timeout=10 --progress /root/BaseStation/send/ YuShanNet@140.112.42.162:/home/nas/YuShanNet/StarBox/data > /root/rsync.log 



  •  Add ssh key to server


ssh-keygen at StarBox (no passphrase)

copy the content of id_rsa.pub to the authorized_keys at the server

 


 




  •  Programs description


SerialForwarder.pl      Receive the message from user's tag and forward to PC

SerialBattery.pl         Communication with the battery
check.sh                   PC self-check procedure

cmdSender.sh           Dump command inforamtion

 

All data that needed to send to the server will be placed under BaseStation/send directory.

Once the data is sent successfully, the data will be deleted.

 

  

 

 

 

Tuesday, January 06, 2009

Picture flow for ARM embedded system

This is the final project of SOC design lab. The goal is using FPGA to decoding jpeg files and show the pictures on the LCD screen. We use touch panel ( not support multi-touch) to create ipod like picture view applicaiton.



video