package net.tinyos.cmds;

import java.io.*;
import net.tinyos.util.PrintStreamMessenger;
import net.tinyos.message.Message;
import net.tinyos.message.MoteIF;

/**
* Sends CmdMsg packets over RF to control LEDs of the
* remote sensor nodes.
*/

public class CmdLedApp
{

 public static void main(String[] args) throws IOException 
 {
 		int group_id = 136;
		BufferedReader console = new BufferedReader
			(new InputStreamReader(System.in));
		System.out.print("Enter group ID [136] : ");
		String groupIDString = console.readLine();

		try{			
			if (groupIDString.length() != 0)
			   group_id = Integer.parseInt(groupIDString);			
		}
		catch (NumberFormatException e) {
			e.printStackTrace();
			System.exit(1);
		}

		System.out.println("Group ID = " + group_id); 
		
		try{
			MoteIF mote = new MoteIF(PrintStreamMessenger.err, group_id);
			CmdMsg cmd = new CmdMsg();
			short i=0;		
			while(true){	
				i = (short)((i+1)%8);
				cmd.set_value(i);
								
    			System.out.println("Cmd = " + cmd);
    			mote.send(MoteIF.TOS_BCAST_ADDR, cmd);
				
				try{Thread.sleep(1000); // pause for one second
				}catch(InterruptedException e){e.printStackTrace();}
			}
		} catch(IOException e){ e.printStackTrace(); }
		
 } // end main
 
}

