📄 burn-net
字号:
#!/bin/bash
TOS_DELUGE=`type -p tos-deluge`
if [[ ! -x ${TOS_DELUGE} ]] ; then
TOS_DELUGE=../../../../tools/tinyos/misc/tos-deluge
fi
$TOS_DELUGE > /dev/null
if [[ $? != 0 ]]
then
echo "Unable to locate tos-deluge."
exit 2
fi
if [ $# -ne 2 ]; then
echo "Usage: $0 <platform> <number of motes>"
echo " <platform> micaz, telosb or iris or mulle"
echo " <number of motes> how many motes will be used in the test"
exit 2
fi
PLATFORM=$1
NO_MOTES=$2
if [ ${PLATFORM} != 'micaz' -a \
${PLATFORM} != 'telosb' -a \
${PLATFORM} != 'iris' \
${PLATFORM} != 'iris' -a \
${PLATFORM} != 'mulle' -a \
${PLATFORM} != 'epic' ]
then
echo "\"${PLAFTORM}\" is not a supported platform"
exit 2
fi
if ! [ -a ${TOSDIR}/lib/tosboot/build/${PLATFORM}/main.ihex ]
then
echo ========================== Compile tosboot for ${PLATFORM} ===========================
( cd $TOSDIR/lib/tosboot ; make ${PLATFORM} )
fi
echo ================================ Compile Blink =================================
make clean
ID=0
function burn_one() {
ID=`expr $ID + 1`
echo -n ">>> Please plug mote $ID and type the programming sorce (bsl,PORT | mib510,PORT | eprb,HOST): "
read PORT
CFLAGS=$1 make ${PLATFORM} install,$ID ${PORT}
}
while [[ ${NO_MOTES} > 1 ]]
do
burn_one -DDELUGE_LIGHT_BASESTATION
NO_MOTES=`expr ${NO_MOTES} - 1`
done
echo ">>> Note: this last mote will be the basestation! <<<"
burn_one -DDELUGE_BASESTATION
echo -n ">>> Please plug mote $ID and type the communication sorce (serial@PORT:SPEED | network@HOST:PORT) to continue: "
read CPORT
echo ' +------------------------------------------------------------------------+'
echo ' | |'
echo ' | At this point the first led (red) of all the motes should be blinking. |'
echo ' | |'
echo ' | Press ENTER to continue... |'
echo ' | |'
echo ' +------------------------------------------------------------------------+'
read
echo ============================= Compile a new Blink ==============================
CFLAGS=-DBLINK_REVERSE\ -DDELUGE_LIGHT_BASESTATION make ${PLATFORM}
echo ========= Upload the new image to the external flash of the last mote ==========
${TOS_DELUGE} ${CPORT} -i 1 build/${PLATFORM}/tos_image.xml
echo ' +-----------------------------------------------------+'
echo ' | |'
echo ' | In the next step the dissemination will be started. |'
echo ' | When a node receives a page, the second led (green) |'
echo ' | will blink. |'
echo ' | |'
echo ' | Press ENTER to continue... |'
echo ' | |'
echo ' +-----------------------------------------------------+'
read
echo ============================= Start dissemination ==============================
${TOS_DELUGE} ${CPORT} -dr 1
echo ' +------------------------------------------------------------+'
echo ' | |'
echo ' | The dissemination is completed when the second and third |'
echo ' | led from all the motes except the last one stops blinking. |'
echo ' | |'
echo ' | After a mote gets the whole image he will reboot and |'
echo ' | reprogram itself. If the new image contains Deluge he will |'
echo ' | continue participating in dissemination. |'
echo ' | |'
echo ' | In the next step all the motes except the basestation will |'
echo ' | be rebooted to allow the reprogramming to take place. |'
echo ' | |'
echo ' | After reboot the motes should start blinking the 3rd led |'
echo ' | (blue/yellow). |'
echo ' | |'
echo ' +------------------------------------------------------------+'
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -