commit c2b64420d73716c5eea3a49e204627a99ab8f94c
Author: Tom Mullins <tmullins@andrew.cmu.edu>
Date:   Wed Nov 7 21:37:06 2012 -0500

    Finally automated generation of ros_lib for rosserial!

diff --git a/scout_avr/Makefile b/scout_avr/Makefile
index 6337e4e..8f62347 100644
--- a/scout_avr/Makefile
+++ b/scout_avr/Makefile
@@ -16,7 +16,11 @@ SRC=src/*.cpp src/ros_lib/*.cpp
 HDR=src/*.h
 FLAGS=-Isrc/ros_lib -Isrc -mmcu=$(MCU) -DF_CPU=$(F_CPU)UL -funsigned-char -Os -fpack-struct -Wall
 
-all: scout_avr.hex
+ROS_MSG_DEPS=rosserial_msgs std_msgs bom sonar
+
+default: scout_avr.hex
+
+all: ros_lib scout_avr.hex
 
 %.hex: %.elf
 	avr-objcopy -j .text -j .data -O ihex $< $@
@@ -27,5 +31,14 @@ scout_avr.elf: $(SRC) $(HDR)
 program: scout_avr.hex
 	avrdude -p $(PART) -c $(PROG) -P usb -B 1 -U flash:w:scout_avr.hex
 
+ros_lib: ros_lib_nomsgs msgs
+
+ros_lib_nomsgs:
+	rm -rf src/ros_lib
+	cp -r `rospack find rosserial_client`/src/ros_lib src
+
+msgs:
+	rosrun rosserial_client make_library.py src $(ROS_MSG_DEPS)
+
 clean:
-	rm -f scout_avr.elf scout_avr.hex
+	rm -rf scout_avr.elf scout_avr.hex src/ros_lib
diff --git a/scout_avr/src/ros_lib/duration.cpp b/scout_avr/src/ros_lib/duration.cpp
deleted file mode 100644
index 7a55efd..0000000
--- a/scout_avr/src/ros_lib/duration.cpp
+++ /dev/null
@@ -1,81 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <math.h>
-#include "ros/duration.h"
-
-namespace ros
-{
-  void normalizeSecNSecSigned(long &sec, long &nsec)
-  {
-    long nsec_part = nsec;
-    long sec_part = sec;
-     
-    while (nsec_part > 1000000000L)
-    {
-      nsec_part -= 1000000000L;
-      ++sec_part;
-    }
-    while (nsec_part < 0)
-    {
-      nsec_part += 1000000000L;
-      --sec_part;
-    }
-    sec = sec_part;
-    nsec = nsec_part;
-  }
-
-  Duration& Duration::operator+=(const Duration &rhs)
-  {
-    sec += rhs.sec;
-    nsec += rhs.nsec;
-    normalizeSecNSecSigned(sec, nsec);
-    return *this;
-  }
-
-  Duration& Duration::operator-=(const Duration &rhs){
-    sec += -rhs.sec;
-    nsec += -rhs.nsec;
-    normalizeSecNSecSigned(sec, nsec);
-    return *this;
-  }
-
-  Duration& Duration::operator*=(double scale){
-    sec *= scale;
-    nsec *= scale;
-    normalizeSecNSecSigned(sec, nsec);
-    return *this;
-  }
-
-}
diff --git a/scout_avr/src/ros_lib/ros/duration.h b/scout_avr/src/ros_lib/ros/duration.h
deleted file mode 100644
index 61b1293..0000000
--- a/scout_avr/src/ros_lib/ros/duration.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ROS_DURATION_H_
-#define _ROS_DURATION_H_
-
-namespace ros {
-
-  void normalizeSecNSecSigned(long& sec, long& nsec);
-
-  class Duration
-  {
-    public:
-      long sec, nsec; 
-      
-      Duration() : sec(0), nsec(0) {}
-      Duration(long _sec, long _nsec) : sec(_sec), nsec(_nsec)
-      {
-        normalizeSecNSecSigned(sec, nsec);
-      }
-
-      Duration& operator+=(const Duration &rhs);
-      Duration& operator-=(const Duration &rhs);
-      Duration& operator*=(double scale);
-  };
-
-}
-
-#endif
-
diff --git a/scout_avr/src/ros_lib/ros/msg.h b/scout_avr/src/ros_lib/ros/msg.h
deleted file mode 100644
index 41991c6..0000000
--- a/scout_avr/src/ros_lib/ros/msg.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ROS_MSG_H_
-#define _ROS_MSG_H_
-
-namespace ros {
-
-  /* Base Message Type */
-  class Msg
-  {
-    public:
-      virtual int serialize(unsigned char *outbuffer) const = 0;
-	  virtual int deserialize(unsigned char *data) = 0;
-      virtual const char * getType() = 0;
-      virtual const char * getMD5() = 0;
-  };
-
-}
-
-#endif
diff --git a/scout_avr/src/ros_lib/ros/node_handle.h b/scout_avr/src/ros_lib/ros/node_handle.h
deleted file mode 100644
index f464403..0000000
--- a/scout_avr/src/ros_lib/ros/node_handle.h
+++ /dev/null
@@ -1,481 +0,0 @@
-/*
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ROS_NODE_HANDLE_H_
-#define ROS_NODE_HANDLE_H_
-
-#include "std_msgs/Time.h"
-#include "rosserial_msgs/TopicInfo.h"
-#include "rosserial_msgs/Log.h"
-#include "rosserial_msgs/RequestParam.h"
-
-#define SYNC_SECONDS        5
-
-#define MODE_FIRST_FF       0
-#define MODE_SECOND_FF      1
-#define MODE_TOPIC_L        2   // waiting for topic id
-#define MODE_TOPIC_H        3
-#define MODE_SIZE_L         4   // waiting for message size
-#define MODE_SIZE_H         5
-#define MODE_MESSAGE        6
-#define MODE_CHECKSUM       7
-
-#define MSG_TIMEOUT 20  //20 milliseconds to recieve all of message data
-
-#include "msg.h"
-
-namespace ros {
-
-  class NodeHandleBase_{
-    public:
-      virtual int publish(int id, const Msg* msg)=0;
-      virtual int spinOnce()=0;
-      virtual bool connected()=0;
-    };
-
-}
-
-#include "publisher.h"
-#include "subscriber.h"
-#include "service_server.h"
-#include "service_client.h"
-
-namespace ros {
-
-  using rosserial_msgs::TopicInfo;
-
-  /* Node Handle */
-  template<class Hardware,
-           int MAX_SUBSCRIBERS=25,
-           int MAX_PUBLISHERS=25,
-           int INPUT_SIZE=512,
-           int OUTPUT_SIZE=512>
-  class NodeHandle_ : public NodeHandleBase_
-  {
-    protected:
-      Hardware hardware_;
-
-      /* time used for syncing */
-      unsigned long rt_time;
-
-      /* used for computing current time */
-      unsigned long sec_offset, nsec_offset;
-
-      unsigned char message_in[INPUT_SIZE];
-      unsigned char message_out[OUTPUT_SIZE];
-
-      Publisher * publishers[MAX_PUBLISHERS];
-      Subscriber_ * subscribers[MAX_SUBSCRIBERS];
-
-      /*
-       * Setup Functions
-       */
-    public:
-      NodeHandle_() : configured_(false) {}
-      
-      Hardware* getHardware(){
-        return &hardware_;
-      }
-
-      /* Start serial, initialize buffers */
-      void initNode(){
-        hardware_.init();
-        mode_ = 0;
-        bytes_ = 0;
-        index_ = 0;
-        topic_ = 0;
-      };
-
-    protected:
-      //State machine variables for spinOnce
-      int mode_;
-      int bytes_;
-      int topic_;
-      int index_;
-      int checksum_;
-
-      bool configured_;
-
-      /* used for syncing the time */
-      unsigned long last_sync_time;
-      unsigned long last_sync_receive_time;
-      unsigned long last_msg_timeout_time;
-
-    public:
-      /* This function goes in your loop() function, it handles
-       *  serial input and callbacks for subscribers.
-       */
-
-      virtual int spinOnce(){
-
-        /* restart if timed out */
-        unsigned long c_time = hardware_.time();
-        if( (c_time - last_sync_receive_time) > (SYNC_SECONDS*2200) ){
-            configured_ = false;
-         }
-         
-        /* reset if message has timed out */
-        if ( mode_ != MODE_FIRST_FF){ 
-          if (c_time > last_msg_timeout_time){
-            mode_ = MODE_FIRST_FF;
-          }
-        }
-
-        /* while available buffer, read data */
-        while( true )
-        {
-          int data = hardware_.read();
-          if( data < 0 )
-            break;
-          checksum_ += data;
-          if( mode_ == MODE_MESSAGE ){        /* message data being recieved */
-            message_in[index_++] = data;
-            bytes_--;
-            if(bytes_ == 0)                   /* is message complete? if so, checksum */
-              mode_ = MODE_CHECKSUM;
-          }else if( mode_ == MODE_FIRST_FF ){
-            if(data == 0xff){
-              mode_++;
-              last_msg_timeout_time = c_time + MSG_TIMEOUT;
-            }
-          }else if( mode_ == MODE_SECOND_FF ){
-            if(data == 0xff){
-              mode_++;
-            }else{
-              mode_ = MODE_FIRST_FF;
-            }
-          }else if( mode_ == MODE_TOPIC_L ){  /* bottom half of topic id */
-            topic_ = data;
-            mode_++;
-            checksum_ = data;                 /* first byte included in checksum */
-          }else if( mode_ == MODE_TOPIC_H ){  /* top half of topic id */
-            topic_ += data<<8;
-            mode_++;
-          }else if( mode_ == MODE_SIZE_L ){   /* bottom half of message size */
-            bytes_ = data;
-            index_ = 0;
-            mode_++;
-          }else if( mode_ == MODE_SIZE_H ){   /* top half of message size */
-            bytes_ += data<<8;
-            mode_ = MODE_MESSAGE;
-            if(bytes_ == 0)
-              mode_ = MODE_CHECKSUM;
-          }else if( mode_ == MODE_CHECKSUM ){ /* do checksum */
-            mode_ = MODE_FIRST_FF;
-            if( (checksum_%256) == 255){
-              if(topic_ == TopicInfo::ID_PUBLISHER){
-                requestSyncTime();
-                negotiateTopics();
-                last_sync_time = c_time;
-                last_sync_receive_time = c_time;
-                return -1;
-              }else if(topic_ == TopicInfo::ID_TIME){
-                syncTime(message_in);
-              }else if (topic_ == TopicInfo::ID_PARAMETER_REQUEST){
-                  req_param_resp.deserialize(message_in);
-                  param_recieved= true;
-              }else{
-                if(subscribers[topic_-100])
-                  subscribers[topic_-100]->callback( message_in );
-              }
-            }
-          }
-        }
-
-        /* occasionally sync time */
-        if( configured_ && ((c_time-last_sync_time) > (SYNC_SECONDS*500) )){
-          requestSyncTime();
-          last_sync_time = c_time;
-        }
-
-        return 0;
-      }
-
-      /* Are we connected to the PC? */
-      virtual bool connected() {
-        return configured_;
-      };
-
-      /********************************************************************
-       * Time functions
-       */
-
-      void requestSyncTime()
-      {
-        std_msgs::Time t;
-        publish(TopicInfo::ID_TIME, &t);
-        rt_time = hardware_.time();
-      }
-
-      void syncTime( unsigned char * data )
-      {
-        std_msgs::Time t;
-        unsigned long offset = hardware_.time() - rt_time;
-
-        t.deserialize(data);
-        t.data.sec += offset/1000;
-        t.data.nsec += (offset%1000)*1000000UL;
-
-        this->setNow(t.data);
-        last_sync_receive_time = hardware_.time();
-      }
-
-      Time now(){
-        unsigned long ms = hardware_.time();
-        Time current_time;
-        current_time.sec = ms/1000 + sec_offset;
-        current_time.nsec = (ms%1000)*1000000UL + nsec_offset;
-        normalizeSecNSec(current_time.sec, current_time.nsec);
-        return current_time;
-      }
-
-      void setNow( Time & new_now )
-      {
-        unsigned long ms = hardware_.time();
-        sec_offset = new_now.sec - ms/1000 - 1;
-        nsec_offset = new_now.nsec - (ms%1000)*1000000UL + 1000000000UL;
-        normalizeSecNSec(sec_offset, nsec_offset);
-      }
-
-      /********************************************************************
-       * Topic Management 
-       */
-
-      /* Register a new publisher */    
-      bool advertise(Publisher & p)
-      {
-        for(int i = 0; i < MAX_PUBLISHERS; i++){
-          if(publishers[i] == 0){ // empty slot
-            publishers[i] = &p;
-            p.id_ = i+100+MAX_SUBSCRIBERS;
-            p.nh_ = this;
-            return true;
-          }
-        }
-        return false;
-      }
-
-      /* Register a new subscriber */
-      template<typename MsgT>
-      bool subscribe(Subscriber< MsgT> & s){
-        for(int i = 0; i < MAX_SUBSCRIBERS; i++){
-          if(subscribers[i] == 0){ // empty slot
-            subscribers[i] = (Subscriber_*) &s;
-            s.id_ = i+100;
-            return true;
-          }
-        }
-        return false;
-      }
-
-      /* Register a new Service Server */
-      template<typename MReq, typename MRes>
-      bool advertiseService(ServiceServer<MReq,MRes>& srv){
-        bool v = advertise(srv.pub);
-        for(int i = 0; i < MAX_SUBSCRIBERS; i++){
-          if(subscribers[i] == 0){ // empty slot
-            subscribers[i] = (Subscriber_*) &srv;
-            srv.id_ = i+100;
-            return v;
-          }
-        }
-        return false;
-      }
-
-      /* Register a new Service Client */
-      template<typename MReq, typename MRes>
-      bool serviceClient(ServiceClient<MReq, MRes>& srv){
-        bool v = advertise(srv.pub);
-        for(int i = 0; i < MAX_SUBSCRIBERS; i++){
-          if(subscribers[i] == 0){ // empty slot
-            subscribers[i] = (Subscriber_*) &srv;
-            srv.id_ = i+100;
-            return v;
-          }
-        }
-        return false;
-      }
-
-      void negotiateTopics()
-      {
-        configured_ = true;
-
-        rosserial_msgs::TopicInfo ti;
-        int i;
-        for(i = 0; i < MAX_PUBLISHERS; i++)
-        {
-          if(publishers[i] != 0) // non-empty slot
-          {
-            ti.topic_id = publishers[i]->id_;
-            ti.topic_name = (char *) publishers[i]->topic_;
-            ti.message_type = (char *) publishers[i]->msg_->getType();
-            ti.md5sum = (char *) publishers[i]->msg_->getMD5();
-            ti.buffer_size = OUTPUT_SIZE;
-            publish( publishers[i]->getEndpointType(), &ti );
-          }
-        }
-        for(i = 0; i < MAX_SUBSCRIBERS; i++)
-        {
-          if(subscribers[i] != 0) // non-empty slot
-          {
-            ti.topic_id = subscribers[i]->id_;
-            ti.topic_name = (char *) subscribers[i]->topic_;
-            ti.message_type = (char *) subscribers[i]->getMsgType();
-            ti.md5sum = (char *) subscribers[i]->getMsgMD5();
-            ti.buffer_size = INPUT_SIZE;
-            publish( subscribers[i]->getEndpointType(), &ti );
-          }
-        }
-      }
-
-      virtual int publish(int id, const Msg * msg)
-      {
-        if(!configured_) return 0;
-
-        /* serialize message */
-        int l = msg->serialize(message_out+6);
-
-        /* setup the header */
-        message_out[0] = 0xff;
-        message_out[1] = 0xff;
-        message_out[2] = (unsigned char) id&255;
-        message_out[3] = (unsigned char) id>>8;
-        message_out[4] = (unsigned char) l&255;
-        message_out[5] = ((unsigned char) l>>8);
-
-        /* calculate checksum */
-        int chk = 0;
-        for(int i =2; i<l+6; i++)
-          chk += message_out[i];
-        l += 6;
-        message_out[l++] = 255 - (chk%256);
-
-        if( l <= OUTPUT_SIZE ){
-          hardware_.write(message_out, l);
-          return l;
-        }else{
-          logerror("Message from device dropped: message larger than buffer.");
-          return 0;
-        }
-      }
-
-      /********************************************************************
-       * Logging
-       */
-
-    private:
-      void log(char byte, const char * msg){
-        rosserial_msgs::Log l;
-        l.level= byte;
-        l.msg = (char*)msg;
-        publish(rosserial_msgs::TopicInfo::ID_LOG, &l);
-      }
-
-    public:
-      void logdebug(const char* msg){
-        log(rosserial_msgs::Log::DEBUG, msg);
-      }
-      void loginfo(const char * msg){
-        log(rosserial_msgs::Log::INFO, msg);
-      }
-      void logwarn(const char *msg){
-        log(rosserial_msgs::Log::WARN, msg);
-      }
-      void logerror(const char*msg){
-        log(rosserial_msgs::Log::ERROR, msg);
-      }
-      void logfatal(const char*msg){
-        log(rosserial_msgs::Log::FATAL, msg);
-      }
-
-      /********************************************************************
-       * Parameters
-       */
-
-    private:
-      bool param_recieved;
-      rosserial_msgs::RequestParamResponse req_param_resp;
-
-      bool requestParam(const char * name, int time_out =  1000){
-        param_recieved = false;
-        rosserial_msgs::RequestParamRequest req;
-        req.name  = (char*)name;
-        publish(TopicInfo::ID_PARAMETER_REQUEST, &req);
-        int end_time = hardware_.time();
-        while(!param_recieved ){
-          spinOnce();
-          if (end_time > hardware_.time()) return false;
-        }
-        return true;
-      }
-
-    public:
-      bool getParam(const char* name, int* param, int length =1){
-        if (requestParam(name) ){
-          if (length == req_param_resp.ints_length){
-            //copy it over
-            for(int i=0; i<length; i++)
-              param[i] = req_param_resp.ints[i];
-            return true;
-          }
-        }
-        return false;
-      }
-      bool getParam(const char* name, float* param, int length=1){
-        if (requestParam(name) ){
-          if (length == req_param_resp.floats_length){
-            //copy it over
-            for(int i=0; i<length; i++) 
-              param[i] = req_param_resp.floats[i];
-            return true;
-          }
-        }
-        return false;
-      }
-      bool getParam(const char* name, char** param, int length=1){
-        if (requestParam(name) ){
-          if (length == req_param_resp.strings_length){
-            //copy it over
-            for(int i=0; i<length; i++)
-              strcpy(param[i],req_param_resp.strings[i]);
-            return true;
-          }
-        }
-        return false;
-      }  
-  };
-
-}
-
-#endif
diff --git a/scout_avr/src/ros_lib/ros/publisher.h b/scout_avr/src/ros_lib/ros/publisher.h
deleted file mode 100644
index 1217362..0000000
--- a/scout_avr/src/ros_lib/ros/publisher.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ROS_PUBLISHER_H_
-#define _ROS_PUBLISHER_H_
-
-#include "rosserial_msgs/TopicInfo.h"
-#include "node_handle.h"
-
-namespace ros {
-
-  /* Generic Publisher */
-  class Publisher
-  {
-    public:
-      Publisher( const char * topic_name, Msg * msg, int endpoint=rosserial_msgs::TopicInfo::ID_PUBLISHER) :
-        topic_(topic_name), 
-        msg_(msg),
-        endpoint_(endpoint) {};
-
-      int publish( const Msg * msg ) { return nh_->publish(id_, msg); };
-      int getEndpointType(){ return endpoint_; }
-
-      const char * topic_;
-      Msg *msg_;
-      // id_ and no_ are set by NodeHandle when we advertise 
-      int id_;
-      NodeHandleBase_* nh_;
-
-    private:
-      int endpoint_;
-  };
-
-}
-
-#endif
diff --git a/scout_avr/src/ros_lib/ros/service_client.h b/scout_avr/src/ros_lib/ros/service_client.h
deleted file mode 100644
index 06522f2..0000000
--- a/scout_avr/src/ros_lib/ros/service_client.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ROS_SERVICE_CLIENT_H_
-#define _ROS_SERVICE_CLIENT_H_
-
-#include "rosserial_msgs/TopicInfo.h"
-
-#include "publisher.h"
-#include "subscriber.h"
-
-namespace ros {
-
-  template<typename MReq , typename MRes>
-  class ServiceClient : public Subscriber_  {
-    public:
-      ServiceClient(const char* topic_name) : 
-        pub(topic_name, &req, rosserial_msgs::TopicInfo::ID_SERVICE_CLIENT + rosserial_msgs::TopicInfo::ID_PUBLISHER)
-      {
-        this->topic_ = topic_name;
-        this->waiting = true;
-      }
-
-      virtual void call(const MReq & request, MRes & response)
-      {
-        if(!pub.nh_->connected()) return;
-        ret = &response;
-        waiting = true;
-        pub.publish(&request);
-        while(waiting && pub.nh_->connected())
-          if(pub.nh_->spinOnce() < 0) break;
-      }
-
-      // these refer to the subscriber
-      virtual void callback(unsigned char *data){
-        ret->deserialize(data);
-        waiting = false;
-      }
-      virtual const char * getMsgType(){ return this->resp.getType(); }
-      virtual const char * getMsgMD5(){ return this->resp.getMD5(); }
-      virtual int getEndpointType(){ return rosserial_msgs::TopicInfo::ID_SERVICE_CLIENT + rosserial_msgs::TopicInfo::ID_SUBSCRIBER; }
-
-      MReq req;
-      MRes resp;
-      MRes * ret;
-      bool waiting;
-      Publisher pub;
-  };
-
-}
-
-#endif
diff --git a/scout_avr/src/ros_lib/ros/service_server.h b/scout_avr/src/ros_lib/ros/service_server.h
deleted file mode 100644
index 67a3e0a..0000000
--- a/scout_avr/src/ros_lib/ros/service_server.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ROS_SERVICE_SERVER_H_
-#define _ROS_SERVICE_SERVER_H_
-
-#include "rosserial_msgs/TopicInfo.h"
-
-#include "publisher.h"
-#include "subscriber.h"
-
-namespace ros {
-
-  template<typename MReq , typename MRes>
-  class ServiceServer : public Subscriber_ {
-    public:
-      typedef void(*CallbackT)(const MReq&,  MRes&);
-
-      ServiceServer(const char* topic_name, CallbackT cb) :
-        pub(topic_name, &resp, rosserial_msgs::TopicInfo::ID_SERVICE_SERVER + rosserial_msgs::TopicInfo::ID_PUBLISHER)
-      {
-        this->topic_ = topic_name;
-        this->cb_ = cb;
-      }
-
-      // these refer to the subscriber
-      virtual void callback(unsigned char *data){
-        req.deserialize(data);
-        cb_(req,resp);
-        pub.publish(&resp);
-      }
-      virtual const char * getMsgType(){ return this->req.getType(); }
-      virtual const char * getMsgMD5(){ return this->req.getMD5(); }
-      virtual int getEndpointType(){ return rosserial_msgs::TopicInfo::ID_SERVICE_SERVER + rosserial_msgs::TopicInfo::ID_SUBSCRIBER; }
-
-      MReq req;
-      MRes resp;
-      Publisher pub;
-    private:
-      CallbackT cb_;
-  };
-
-}
-
-#endif
diff --git a/scout_avr/src/ros_lib/ros/subscriber.h b/scout_avr/src/ros_lib/ros/subscriber.h
deleted file mode 100644
index 5464646..0000000
--- a/scout_avr/src/ros_lib/ros/subscriber.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ROS_SUBSCRIBER_H_
-#define ROS_SUBSCRIBER_H_
-
-#include "rosserial_msgs/TopicInfo.h"
-
-namespace ros {
-
-  /* Base class for objects subscribers. */
-  class Subscriber_
-  {
-    public:
-      virtual void callback(unsigned char *data)=0;
-      virtual int getEndpointType()=0;
-
-      // id_ is set by NodeHandle when we advertise 
-      int id_;
-
-      virtual const char * getMsgType()=0;
-      virtual const char * getMsgMD5()=0;
-      const char * topic_;
-  };
-
-
-  /* Actual subscriber, templated on message type. */
-  template<typename MsgT>
-  class Subscriber: public Subscriber_{
-    public:
-      typedef void(*CallbackT)(const MsgT&);
-      MsgT msg;
-
-      Subscriber(const char * topic_name, CallbackT cb, int endpoint=rosserial_msgs::TopicInfo::ID_SUBSCRIBER) :
-        cb_(cb),
-        endpoint_(endpoint)
-      {
-        topic_ = topic_name;
-      };
-
-      virtual void callback(unsigned char* data){
-        msg.deserialize(data);
-        this->cb_(msg);
-      }
-
-      virtual const char * getMsgType(){ return this->msg.getType(); }
-      virtual const char * getMsgMD5(){ return this->msg.getMD5(); }
-      virtual int getEndpointType(){ return endpoint_; }
-
-    private:
-      CallbackT cb_;
-      int endpoint_;
-  };
-
-}
-
-#endif
diff --git a/scout_avr/src/ros_lib/ros/time.h b/scout_avr/src/ros_lib/ros/time.h
deleted file mode 100644
index 602fbdb..0000000
--- a/scout_avr/src/ros_lib/ros/time.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ROS_TIME_H_
-#define ROS_TIME_H_
-
-#include <ros/duration.h>
-#include <math.h>
-
-namespace ros
-{
-  void normalizeSecNSec(unsigned long &sec, unsigned long &nsec);
-
-  class Time
-  {
-    public:
-      unsigned long sec, nsec;
-
-      Time() : sec(0), nsec(0) {}
-      Time(unsigned long _sec, unsigned long _nsec) : sec(_sec), nsec(_nsec)
-      {
-        normalizeSecNSec(sec, nsec);  
-      } 
-        
-      double toSec() const { return (double)sec + 1e-9*(double)nsec; };
-      void fromSec(double t) { sec = (unsigned long) floor(t); nsec = (unsigned long) round((t-sec) * 1e9); };
-
-      unsigned long toNsec() { return (unsigned long)sec*1000000000ull + (unsigned long)nsec; };
-      Time& fromNSec(long t);
-
-      Time& operator +=(const Duration &rhs);
-      Time& operator -=(const Duration &rhs);
-
-      static Time now();
-      static void setNow( Time & new_now);
-  };
-
-}
-
-#endif
diff --git a/scout_avr/src/ros_lib/rosserial_msgs/Log.h b/scout_avr/src/ros_lib/rosserial_msgs/Log.h
deleted file mode 100644
index cfe5c71..0000000
--- a/scout_avr/src/ros_lib/rosserial_msgs/Log.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef _ROS_rosserial_msgs_Log_h
-#define _ROS_rosserial_msgs_Log_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace rosserial_msgs
-{
-
-  class Log : public ros::Msg
-  {
-    public:
-      uint8_t level;
-      char * msg;
-      enum { DEBUG = 0 };
-      enum { INFO = 1 };
-      enum { WARN = 2 };
-      enum { ERROR = 3 };
-      enum { FATAL = 4 };
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->level >> (8 * 0)) & 0xFF;
-      offset += sizeof(this->level);
-      uint32_t * length_msg = (uint32_t *)(outbuffer + offset);
-      *length_msg = strlen( (const char*) this->msg);
-      offset += 4;
-      memcpy(outbuffer + offset, this->msg, *length_msg);
-      offset += *length_msg;
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->level |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      offset += sizeof(this->level);
-      uint32_t length_msg = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_msg; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_msg-1]=0;
-      this->msg = (char *)(inbuffer + offset-1);
-      offset += length_msg;
-     return offset;
-    }
-
-    const char * getType(){ return "rosserial_msgs/Log"; };
-    const char * getMD5(){ return "7170d5aec999754ba0d9f762bf49b913"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/rosserial_msgs/RequestParam.h b/scout_avr/src/ros_lib/rosserial_msgs/RequestParam.h
deleted file mode 100644
index b001abd..0000000
--- a/scout_avr/src/ros_lib/rosserial_msgs/RequestParam.h
+++ /dev/null
@@ -1,182 +0,0 @@
-#ifndef _ROS_SERVICE_RequestParam_h
-#define _ROS_SERVICE_RequestParam_h
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace rosserial_msgs
-{
-
-static const char REQUESTPARAM[] = "rosserial_msgs/RequestParam";
-
-  class RequestParamRequest : public ros::Msg
-  {
-    public:
-      char * name;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      uint32_t * length_name = (uint32_t *)(outbuffer + offset);
-      *length_name = strlen( (const char*) this->name);
-      offset += 4;
-      memcpy(outbuffer + offset, this->name, *length_name);
-      offset += *length_name;
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      uint32_t length_name = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_name; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_name-1]=0;
-      this->name = (char *)(inbuffer + offset-1);
-      offset += length_name;
-     return offset;
-    }
-
-    const char * getType(){ return REQUESTPARAM; };
-    const char * getMD5(){ return "c1f3d28f1b044c871e6eff2e9fc3c667"; };
-
-  };
-
-  class RequestParamResponse : public ros::Msg
-  {
-    public:
-      uint8_t ints_length;
-      int32_t st_ints;
-      int32_t * ints;
-      uint8_t floats_length;
-      float st_floats;
-      float * floats;
-      uint8_t strings_length;
-      char* st_strings;
-      char* * strings;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset++) = ints_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < ints_length; i++){
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_intsi;
-      u_intsi.real = this->ints[i];
-      *(outbuffer + offset + 0) = (u_intsi.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_intsi.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_intsi.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_intsi.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->ints[i]);
-      }
-      *(outbuffer + offset++) = floats_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < floats_length; i++){
-      union {
-        float real;
-        uint32_t base;
-      } u_floatsi;
-      u_floatsi.real = this->floats[i];
-      *(outbuffer + offset + 0) = (u_floatsi.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_floatsi.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_floatsi.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_floatsi.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->floats[i]);
-      }
-      *(outbuffer + offset++) = strings_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < strings_length; i++){
-      uint32_t * length_stringsi = (uint32_t *)(outbuffer + offset);
-      *length_stringsi = strlen( (const char*) this->strings[i]);
-      offset += 4;
-      memcpy(outbuffer + offset, this->strings[i], *length_stringsi);
-      offset += *length_stringsi;
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      uint8_t ints_lengthT = *(inbuffer + offset++);
-      if(ints_lengthT > ints_length)
-        this->ints = (int32_t*)realloc(this->ints, ints_lengthT * sizeof(int32_t));
-      offset += 3;
-      ints_length = ints_lengthT;
-      for( uint8_t i = 0; i < ints_length; i++){
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_st_ints;
-      u_st_ints.base = 0;
-      u_st_ints.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_st_ints.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_st_ints.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_st_ints.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->st_ints = u_st_ints.real;
-      offset += sizeof(this->st_ints);
-        memcpy( &(this->ints[i]), &(this->st_ints), sizeof(int32_t));
-      }
-      uint8_t floats_lengthT = *(inbuffer + offset++);
-      if(floats_lengthT > floats_length)
-        this->floats = (float*)realloc(this->floats, floats_lengthT * sizeof(float));
-      offset += 3;
-      floats_length = floats_lengthT;
-      for( uint8_t i = 0; i < floats_length; i++){
-      union {
-        float real;
-        uint32_t base;
-      } u_st_floats;
-      u_st_floats.base = 0;
-      u_st_floats.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_st_floats.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_st_floats.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_st_floats.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->st_floats = u_st_floats.real;
-      offset += sizeof(this->st_floats);
-        memcpy( &(this->floats[i]), &(this->st_floats), sizeof(float));
-      }
-      uint8_t strings_lengthT = *(inbuffer + offset++);
-      if(strings_lengthT > strings_length)
-        this->strings = (char**)realloc(this->strings, strings_lengthT * sizeof(char*));
-      offset += 3;
-      strings_length = strings_lengthT;
-      for( uint8_t i = 0; i < strings_length; i++){
-      uint32_t length_st_strings = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_st_strings; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_st_strings-1]=0;
-      this->st_strings = (char *)(inbuffer + offset-1);
-      offset += length_st_strings;
-        memcpy( &(this->strings[i]), &(this->st_strings), sizeof(char*));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return REQUESTPARAM; };
-    const char * getMD5(){ return "9f0e98bda65981986ddf53afa7a40e49"; };
-
-  };
-
-  class RequestParam {
-    public:
-    typedef RequestParamRequest Request;
-    typedef RequestParamResponse Response;
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/rosserial_msgs/TopicInfo.h b/scout_avr/src/ros_lib/rosserial_msgs/TopicInfo.h
deleted file mode 100644
index ed3285b..0000000
--- a/scout_avr/src/ros_lib/rosserial_msgs/TopicInfo.h
+++ /dev/null
@@ -1,112 +0,0 @@
-#ifndef _ROS_rosserial_msgs_TopicInfo_h
-#define _ROS_rosserial_msgs_TopicInfo_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace rosserial_msgs
-{
-
-  class TopicInfo : public ros::Msg
-  {
-    public:
-      uint16_t topic_id;
-      char * topic_name;
-      char * message_type;
-      char * md5sum;
-      int32_t buffer_size;
-      enum { ID_PUBLISHER = 0 };
-      enum { ID_SUBSCRIBER = 1 };
-      enum { ID_SERVICE_SERVER = 2 };
-      enum { ID_SERVICE_CLIENT = 4 };
-      enum { ID_PARAMETER_REQUEST = 6 };
-      enum { ID_LOG = 7 };
-      enum { ID_TIME = 10 };
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->topic_id >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->topic_id >> (8 * 1)) & 0xFF;
-      offset += sizeof(this->topic_id);
-      uint32_t * length_topic_name = (uint32_t *)(outbuffer + offset);
-      *length_topic_name = strlen( (const char*) this->topic_name);
-      offset += 4;
-      memcpy(outbuffer + offset, this->topic_name, *length_topic_name);
-      offset += *length_topic_name;
-      uint32_t * length_message_type = (uint32_t *)(outbuffer + offset);
-      *length_message_type = strlen( (const char*) this->message_type);
-      offset += 4;
-      memcpy(outbuffer + offset, this->message_type, *length_message_type);
-      offset += *length_message_type;
-      uint32_t * length_md5sum = (uint32_t *)(outbuffer + offset);
-      *length_md5sum = strlen( (const char*) this->md5sum);
-      offset += 4;
-      memcpy(outbuffer + offset, this->md5sum, *length_md5sum);
-      offset += *length_md5sum;
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_buffer_size;
-      u_buffer_size.real = this->buffer_size;
-      *(outbuffer + offset + 0) = (u_buffer_size.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_buffer_size.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_buffer_size.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_buffer_size.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->buffer_size);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->topic_id |= ((uint16_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->topic_id |= ((uint16_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      offset += sizeof(this->topic_id);
-      uint32_t length_topic_name = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_topic_name; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_topic_name-1]=0;
-      this->topic_name = (char *)(inbuffer + offset-1);
-      offset += length_topic_name;
-      uint32_t length_message_type = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_message_type; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_message_type-1]=0;
-      this->message_type = (char *)(inbuffer + offset-1);
-      offset += length_message_type;
-      uint32_t length_md5sum = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_md5sum; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_md5sum-1]=0;
-      this->md5sum = (char *)(inbuffer + offset-1);
-      offset += length_md5sum;
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_buffer_size;
-      u_buffer_size.base = 0;
-      u_buffer_size.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_buffer_size.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_buffer_size.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_buffer_size.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->buffer_size = u_buffer_size.real;
-      offset += sizeof(this->buffer_size);
-     return offset;
-    }
-
-    const char * getType(){ return "rosserial_msgs/TopicInfo"; };
-    const char * getMD5(){ return "63aa5e8f1bdd6f35c69fe1a1b9d28e9f"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Bool.h b/scout_avr/src/ros_lib/std_msgs/Bool.h
deleted file mode 100644
index b58eb5f..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Bool.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef _ROS_std_msgs_Bool_h
-#define _ROS_std_msgs_Bool_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Bool : public ros::Msg
-  {
-    public:
-      bool data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        bool real;
-        uint8_t base;
-      } u_data;
-      u_data.real = this->data;
-      *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        bool real;
-        uint8_t base;
-      } u_data;
-      u_data.base = 0;
-      u_data.base |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data = u_data.real;
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Bool"; };
-    const char * getMD5(){ return "8b94c1b53db61fb6aed406028ad6332a"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Byte.h b/scout_avr/src/ros_lib/std_msgs/Byte.h
deleted file mode 100644
index 8f9f5d8..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Byte.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#ifndef _ROS_std_msgs_Byte_h
-#define _ROS_std_msgs_Byte_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/byte.h"
-
-namespace std_msgs
-{
-
-  class Byte : public ros::Msg
-  {
-    public:
-      std_msgs::byte data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->data.serialize(outbuffer + offset);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->data.deserialize(inbuffer + offset);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Byte"; };
-    const char * getMD5(){ return "ad736a2e8818154c487bb80fe42ce43b"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/ByteMultiArray.h b/scout_avr/src/ros_lib/std_msgs/ByteMultiArray.h
deleted file mode 100644
index 3a731e5..0000000
--- a/scout_avr/src/ros_lib/std_msgs/ByteMultiArray.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef _ROS_std_msgs_ByteMultiArray_h
-#define _ROS_std_msgs_ByteMultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-#include "std_msgs/byte.h"
-
-namespace std_msgs
-{
-
-  class ByteMultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      std_msgs::byte st_data;
-      std_msgs::byte * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      offset += this->data[i].serialize(outbuffer + offset);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (std_msgs::byte*)realloc(this->data, data_lengthT * sizeof(std_msgs::byte));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      offset += this->st_data.deserialize(inbuffer + offset);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(std_msgs::byte));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/ByteMultiArray"; };
-    const char * getMD5(){ return "70ea476cbcfd65ac2f68f3cda1e891fe"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Char.h b/scout_avr/src/ros_lib/std_msgs/Char.h
deleted file mode 100644
index d844e3f..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Char.h
+++ /dev/null
@@ -1,38 +0,0 @@
-#ifndef _ROS_std_msgs_Char_h
-#define _ROS_std_msgs_Char_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/char.h"
-
-namespace std_msgs
-{
-
-  class Char : public ros::Msg
-  {
-    public:
-      std_msgs::char data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->data.serialize(outbuffer + offset);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->data.deserialize(inbuffer + offset);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Char"; };
-    const char * getMD5(){ return "1bf77f25acecdedba0e224b162199717"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/ColorRGBA.h b/scout_avr/src/ros_lib/std_msgs/ColorRGBA.h
deleted file mode 100644
index 49c72f4..0000000
--- a/scout_avr/src/ros_lib/std_msgs/ColorRGBA.h
+++ /dev/null
@@ -1,122 +0,0 @@
-#ifndef _ROS_std_msgs_ColorRGBA_h
-#define _ROS_std_msgs_ColorRGBA_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class ColorRGBA : public ros::Msg
-  {
-    public:
-      float r;
-      float g;
-      float b;
-      float a;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        float real;
-        uint32_t base;
-      } u_r;
-      u_r.real = this->r;
-      *(outbuffer + offset + 0) = (u_r.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_r.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_r.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_r.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->r);
-      union {
-        float real;
-        uint32_t base;
-      } u_g;
-      u_g.real = this->g;
-      *(outbuffer + offset + 0) = (u_g.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_g.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_g.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_g.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->g);
-      union {
-        float real;
-        uint32_t base;
-      } u_b;
-      u_b.real = this->b;
-      *(outbuffer + offset + 0) = (u_b.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_b.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_b.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_b.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->b);
-      union {
-        float real;
-        uint32_t base;
-      } u_a;
-      u_a.real = this->a;
-      *(outbuffer + offset + 0) = (u_a.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_a.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_a.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_a.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->a);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        float real;
-        uint32_t base;
-      } u_r;
-      u_r.base = 0;
-      u_r.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_r.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_r.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_r.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->r = u_r.real;
-      offset += sizeof(this->r);
-      union {
-        float real;
-        uint32_t base;
-      } u_g;
-      u_g.base = 0;
-      u_g.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_g.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_g.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_g.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->g = u_g.real;
-      offset += sizeof(this->g);
-      union {
-        float real;
-        uint32_t base;
-      } u_b;
-      u_b.base = 0;
-      u_b.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_b.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_b.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_b.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->b = u_b.real;
-      offset += sizeof(this->b);
-      union {
-        float real;
-        uint32_t base;
-      } u_a;
-      u_a.base = 0;
-      u_a.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_a.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_a.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_a.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->a = u_a.real;
-      offset += sizeof(this->a);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/ColorRGBA"; };
-    const char * getMD5(){ return "a29a96539573343b1310c73607334b00"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Duration.h b/scout_avr/src/ros_lib/std_msgs/Duration.h
deleted file mode 100644
index 944e94c..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Duration.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef _ROS_std_msgs_Duration_h
-#define _ROS_std_msgs_Duration_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "ros/duration.h"
-
-namespace std_msgs
-{
-
-  class Duration : public ros::Msg
-  {
-    public:
-      ros::Duration data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->data.sec >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data.sec >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->data.sec >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->data.sec >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data.sec);
-      *(outbuffer + offset + 0) = (this->data.nsec >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data.nsec >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->data.nsec >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->data.nsec >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data.nsec);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->data.sec);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->data.nsec);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Duration"; };
-    const char * getMD5(){ return "3e286caf4241d664e55f3ad380e2ae46"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Empty.h b/scout_avr/src/ros_lib/std_msgs/Empty.h
deleted file mode 100644
index 5b31e1c..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Empty.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef _ROS_std_msgs_Empty_h
-#define _ROS_std_msgs_Empty_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Empty : public ros::Msg
-  {
-    public:
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Empty"; };
-    const char * getMD5(){ return "d41d8cd98f00b204e9800998ecf8427e"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Float32.h b/scout_avr/src/ros_lib/std_msgs/Float32.h
deleted file mode 100644
index a653732..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Float32.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef _ROS_std_msgs_Float32_h
-#define _ROS_std_msgs_Float32_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Float32 : public ros::Msg
-  {
-    public:
-      float data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        float real;
-        uint32_t base;
-      } u_data;
-      u_data.real = this->data;
-      *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_data.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_data.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_data.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        float real;
-        uint32_t base;
-      } u_data;
-      u_data.base = 0;
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->data = u_data.real;
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Float32"; };
-    const char * getMD5(){ return "73fcbf46b49191e672908e50842a83d4"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Float32MultiArray.h b/scout_avr/src/ros_lib/std_msgs/Float32MultiArray.h
deleted file mode 100644
index 4d14679..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Float32MultiArray.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef _ROS_std_msgs_Float32MultiArray_h
-#define _ROS_std_msgs_Float32MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class Float32MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      float st_data;
-      float * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        float real;
-        uint32_t base;
-      } u_datai;
-      u_datai.real = this->data[i];
-      *(outbuffer + offset + 0) = (u_datai.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_datai.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_datai.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_datai.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (float*)realloc(this->data, data_lengthT * sizeof(float));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        float real;
-        uint32_t base;
-      } u_st_data;
-      u_st_data.base = 0;
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->st_data = u_st_data.real;
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(float));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Float32MultiArray"; };
-    const char * getMD5(){ return "6a40e0ffa6a17a503ac3f8616991b1f6"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Float64.h b/scout_avr/src/ros_lib/std_msgs/Float64.h
deleted file mode 100644
index 48b02a8..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Float64.h
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef _ROS_std_msgs_Float64_h
-#define _ROS_std_msgs_Float64_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Float64 : public ros::Msg
-  {
-    public:
-      float data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      int32_t * val_data = (long *) &(this->data);
-      int32_t exp_data = (((*val_data)>>23)&255);
-      if(exp_data != 0)
-        exp_data += 1023-127;
-      int32_t sig_data = *val_data;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = (sig_data<<5) & 0xff;
-      *(outbuffer + offset++) = (sig_data>>3) & 0xff;
-      *(outbuffer + offset++) = (sig_data>>11) & 0xff;
-      *(outbuffer + offset++) = ((exp_data<<4) & 0xF0) | ((sig_data>>19)&0x0F);
-      *(outbuffer + offset++) = (exp_data>>4) & 0x7F;
-      if(this->data < 0) *(outbuffer + offset -1) |= 0x80;
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      uint32_t * val_data = (uint32_t*) &(this->data);
-      offset += 3;
-      *val_data = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
-      *val_data |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
-      *val_data |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
-      *val_data |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
-      uint32_t exp_data = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
-      exp_data |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
-      if(exp_data !=0)
-        *val_data |= ((exp_data)-1023+127)<<23;
-      if( ((*(inbuffer+offset++)) & 0x80) > 0) this->data = -this->data;
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Float64"; };
-    const char * getMD5(){ return "fdb28210bfa9d7c91146260178d9a584"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Float64MultiArray.h b/scout_avr/src/ros_lib/std_msgs/Float64MultiArray.h
deleted file mode 100644
index 293f6a2..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Float64MultiArray.h
+++ /dev/null
@@ -1,80 +0,0 @@
-#ifndef _ROS_std_msgs_Float64MultiArray_h
-#define _ROS_std_msgs_Float64MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class Float64MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      float st_data;
-      float * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      int32_t * val_datai = (long *) &(this->data[i]);
-      int32_t exp_datai = (((*val_datai)>>23)&255);
-      if(exp_datai != 0)
-        exp_datai += 1023-127;
-      int32_t sig_datai = *val_datai;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = (sig_datai<<5) & 0xff;
-      *(outbuffer + offset++) = (sig_datai>>3) & 0xff;
-      *(outbuffer + offset++) = (sig_datai>>11) & 0xff;
-      *(outbuffer + offset++) = ((exp_datai<<4) & 0xF0) | ((sig_datai>>19)&0x0F);
-      *(outbuffer + offset++) = (exp_datai>>4) & 0x7F;
-      if(this->data[i] < 0) *(outbuffer + offset -1) |= 0x80;
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (float*)realloc(this->data, data_lengthT * sizeof(float));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      uint32_t * val_st_data = (uint32_t*) &(this->st_data);
-      offset += 3;
-      *val_st_data = ((uint32_t)(*(inbuffer + offset++))>>5 & 0x07);
-      *val_st_data |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<3;
-      *val_st_data |= ((uint32_t)(*(inbuffer + offset++)) & 0xff)<<11;
-      *val_st_data |= ((uint32_t)(*(inbuffer + offset)) & 0x0f)<<19;
-      uint32_t exp_st_data = ((uint32_t)(*(inbuffer + offset++))&0xf0)>>4;
-      exp_st_data |= ((uint32_t)(*(inbuffer + offset)) & 0x7f)<<4;
-      if(exp_st_data !=0)
-        *val_st_data |= ((exp_st_data)-1023+127)<<23;
-      if( ((*(inbuffer+offset++)) & 0x80) > 0) this->st_data = -this->st_data;
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(float));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Float64MultiArray"; };
-    const char * getMD5(){ return "4b7d974086d4060e7db4613a7e6c3ba4"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Header.h b/scout_avr/src/ros_lib/std_msgs/Header.h
deleted file mode 100644
index 043b662..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Header.h
+++ /dev/null
@@ -1,81 +0,0 @@
-#ifndef _ROS_std_msgs_Header_h
-#define _ROS_std_msgs_Header_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "ros/time.h"
-
-namespace std_msgs
-{
-
-  class Header : public ros::Msg
-  {
-    public:
-      uint32_t seq;
-      ros::Time stamp;
-      char * frame_id;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->seq >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->seq >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->seq >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->seq >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->seq);
-      *(outbuffer + offset + 0) = (this->stamp.sec >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->stamp.sec >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->stamp.sec >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->stamp.sec >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->stamp.sec);
-      *(outbuffer + offset + 0) = (this->stamp.nsec >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->stamp.nsec >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->stamp.nsec >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->stamp.nsec >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->stamp.nsec);
-      uint32_t * length_frame_id = (uint32_t *)(outbuffer + offset);
-      *length_frame_id = strlen( (const char*) this->frame_id);
-      offset += 4;
-      memcpy(outbuffer + offset, this->frame_id, *length_frame_id);
-      offset += *length_frame_id;
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->seq |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->seq |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->seq |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->seq |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->seq);
-      this->stamp.sec |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->stamp.sec |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->stamp.sec |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->stamp.sec |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->stamp.sec);
-      this->stamp.nsec |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->stamp.nsec |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->stamp.nsec |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->stamp.nsec |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->stamp.nsec);
-      uint32_t length_frame_id = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_frame_id; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_frame_id-1]=0;
-      this->frame_id = (char *)(inbuffer + offset-1);
-      offset += length_frame_id;
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Header"; };
-    const char * getMD5(){ return "2176decaecbce78abc3b96ef049fabed"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int16.h b/scout_avr/src/ros_lib/std_msgs/Int16.h
deleted file mode 100644
index 43e2716..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int16.h
+++ /dev/null
@@ -1,52 +0,0 @@
-#ifndef _ROS_std_msgs_Int16_h
-#define _ROS_std_msgs_Int16_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Int16 : public ros::Msg
-  {
-    public:
-      int16_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        int16_t real;
-        uint16_t base;
-      } u_data;
-      u_data.real = this->data;
-      *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_data.base >> (8 * 1)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        int16_t real;
-        uint16_t base;
-      } u_data;
-      u_data.base = 0;
-      u_data.base |= ((uint16_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_data.base |= ((uint16_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->data = u_data.real;
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int16"; };
-    const char * getMD5(){ return "8524586e34fbd7cb1c08c5f5f1ca0e57"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int16MultiArray.h b/scout_avr/src/ros_lib/std_msgs/Int16MultiArray.h
deleted file mode 100644
index 991a5f0..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int16MultiArray.h
+++ /dev/null
@@ -1,72 +0,0 @@
-#ifndef _ROS_std_msgs_Int16MultiArray_h
-#define _ROS_std_msgs_Int16MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class Int16MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      int16_t st_data;
-      int16_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int16_t real;
-        uint16_t base;
-      } u_datai;
-      u_datai.real = this->data[i];
-      *(outbuffer + offset + 0) = (u_datai.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_datai.base >> (8 * 1)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (int16_t*)realloc(this->data, data_lengthT * sizeof(int16_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int16_t real;
-        uint16_t base;
-      } u_st_data;
-      u_st_data.base = 0;
-      u_st_data.base |= ((uint16_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_st_data.base |= ((uint16_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->st_data = u_st_data.real;
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(int16_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int16MultiArray"; };
-    const char * getMD5(){ return "d9338d7f523fcb692fae9d0a0e9f067c"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int32.h b/scout_avr/src/ros_lib/std_msgs/Int32.h
deleted file mode 100644
index c0769c7..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int32.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef _ROS_std_msgs_Int32_h
-#define _ROS_std_msgs_Int32_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Int32 : public ros::Msg
-  {
-    public:
-      int32_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_data;
-      u_data.real = this->data;
-      *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_data.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_data.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_data.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_data;
-      u_data.base = 0;
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->data = u_data.real;
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int32"; };
-    const char * getMD5(){ return "da5909fbe378aeaf85e547e830cc1bb7"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int32MultiArray.h b/scout_avr/src/ros_lib/std_msgs/Int32MultiArray.h
deleted file mode 100644
index e749933..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int32MultiArray.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef _ROS_std_msgs_Int32MultiArray_h
-#define _ROS_std_msgs_Int32MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class Int32MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      int32_t st_data;
-      int32_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_datai;
-      u_datai.real = this->data[i];
-      *(outbuffer + offset + 0) = (u_datai.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_datai.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_datai.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_datai.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (int32_t*)realloc(this->data, data_lengthT * sizeof(int32_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int32_t real;
-        uint32_t base;
-      } u_st_data;
-      u_st_data.base = 0;
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->st_data = u_st_data.real;
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(int32_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int32MultiArray"; };
-    const char * getMD5(){ return "1d99f79f8b325b44fee908053e9c945b"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int64.h b/scout_avr/src/ros_lib/std_msgs/Int64.h
deleted file mode 100644
index 59879eb..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int64.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef _ROS_std_msgs_Int64_h
-#define _ROS_std_msgs_Int64_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Int64 : public ros::Msg
-  {
-    public:
-      int64_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        int64_t real;
-        uint32_t base;
-      } u_data;
-      u_data.real = this->data;
-      *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_data.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_data.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_data.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        int64_t real;
-        uint32_t base;
-      } u_data;
-      u_data.base = 0;
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->data = u_data.real;
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int64"; };
-    const char * getMD5(){ return "34add168574510e6e17f5d23ecc077ef"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int64MultiArray.h b/scout_avr/src/ros_lib/std_msgs/Int64MultiArray.h
deleted file mode 100644
index b9dbfbf..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int64MultiArray.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef _ROS_std_msgs_Int64MultiArray_h
-#define _ROS_std_msgs_Int64MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class Int64MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      int64_t st_data;
-      int64_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int64_t real;
-        uint32_t base;
-      } u_datai;
-      u_datai.real = this->data[i];
-      *(outbuffer + offset + 0) = (u_datai.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_datai.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_datai.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_datai.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (int64_t*)realloc(this->data, data_lengthT * sizeof(int64_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int64_t real;
-        uint32_t base;
-      } u_st_data;
-      u_st_data.base = 0;
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->st_data = u_st_data.real;
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(int64_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int64MultiArray"; };
-    const char * getMD5(){ return "54865aa6c65be0448113a2afc6a49270"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int8.h b/scout_avr/src/ros_lib/std_msgs/Int8.h
deleted file mode 100644
index a1615ef..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int8.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef _ROS_std_msgs_Int8_h
-#define _ROS_std_msgs_Int8_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class Int8 : public ros::Msg
-  {
-    public:
-      int8_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        int8_t real;
-        uint8_t base;
-      } u_data;
-      u_data.real = this->data;
-      *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        int8_t real;
-        uint8_t base;
-      } u_data;
-      u_data.base = 0;
-      u_data.base |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data = u_data.real;
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int8"; };
-    const char * getMD5(){ return "27ffa0c9c4b8fb8492252bcad9e5c57b"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Int8MultiArray.h b/scout_avr/src/ros_lib/std_msgs/Int8MultiArray.h
deleted file mode 100644
index 704a8d0..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Int8MultiArray.h
+++ /dev/null
@@ -1,70 +0,0 @@
-#ifndef _ROS_std_msgs_Int8MultiArray_h
-#define _ROS_std_msgs_Int8MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class Int8MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      int8_t st_data;
-      int8_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int8_t real;
-        uint8_t base;
-      } u_datai;
-      u_datai.real = this->data[i];
-      *(outbuffer + offset + 0) = (u_datai.base >> (8 * 0)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (int8_t*)realloc(this->data, data_lengthT * sizeof(int8_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        int8_t real;
-        uint8_t base;
-      } u_st_data;
-      u_st_data.base = 0;
-      u_st_data.base |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->st_data = u_st_data.real;
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(int8_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Int8MultiArray"; };
-    const char * getMD5(){ return "d7c1af35a1b4781bbe79e03dd94b7c13"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/MultiArrayDimension.h b/scout_avr/src/ros_lib/std_msgs/MultiArrayDimension.h
deleted file mode 100644
index 1710b14..0000000
--- a/scout_avr/src/ros_lib/std_msgs/MultiArrayDimension.h
+++ /dev/null
@@ -1,70 +0,0 @@
-#ifndef _ROS_std_msgs_MultiArrayDimension_h
-#define _ROS_std_msgs_MultiArrayDimension_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class MultiArrayDimension : public ros::Msg
-  {
-    public:
-      char * label;
-      uint32_t size;
-      uint32_t stride;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      uint32_t * length_label = (uint32_t *)(outbuffer + offset);
-      *length_label = strlen( (const char*) this->label);
-      offset += 4;
-      memcpy(outbuffer + offset, this->label, *length_label);
-      offset += *length_label;
-      *(outbuffer + offset + 0) = (this->size >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->size >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->size >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->size >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->size);
-      *(outbuffer + offset + 0) = (this->stride >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->stride >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->stride >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->stride >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->stride);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      uint32_t length_label = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_label; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_label-1]=0;
-      this->label = (char *)(inbuffer + offset-1);
-      offset += length_label;
-      this->size |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->size |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->size |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->size |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->size);
-      this->stride |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->stride |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->stride |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->stride |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->stride);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/MultiArrayDimension"; };
-    const char * getMD5(){ return "4cd0c83a8683deae40ecdac60e53bfa8"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/MultiArrayLayout.h b/scout_avr/src/ros_lib/std_msgs/MultiArrayLayout.h
deleted file mode 100644
index 83d2c7b..0000000
--- a/scout_avr/src/ros_lib/std_msgs/MultiArrayLayout.h
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef _ROS_std_msgs_MultiArrayLayout_h
-#define _ROS_std_msgs_MultiArrayLayout_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayDimension.h"
-
-namespace std_msgs
-{
-
-  class MultiArrayLayout : public ros::Msg
-  {
-    public:
-      uint8_t dim_length;
-      std_msgs::MultiArrayDimension st_dim;
-      std_msgs::MultiArrayDimension * dim;
-      uint32_t data_offset;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset++) = dim_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < dim_length; i++){
-      offset += this->dim[i].serialize(outbuffer + offset);
-      }
-      *(outbuffer + offset + 0) = (this->data_offset >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data_offset >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->data_offset >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->data_offset >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data_offset);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      uint8_t dim_lengthT = *(inbuffer + offset++);
-      if(dim_lengthT > dim_length)
-        this->dim = (std_msgs::MultiArrayDimension*)realloc(this->dim, dim_lengthT * sizeof(std_msgs::MultiArrayDimension));
-      offset += 3;
-      dim_length = dim_lengthT;
-      for( uint8_t i = 0; i < dim_length; i++){
-      offset += this->st_dim.deserialize(inbuffer + offset);
-        memcpy( &(this->dim[i]), &(this->st_dim), sizeof(std_msgs::MultiArrayDimension));
-      }
-      this->data_offset |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data_offset |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->data_offset |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->data_offset |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->data_offset);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/MultiArrayLayout"; };
-    const char * getMD5(){ return "0fed2a11c13e11c5571b4e2a995a91a3"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/String.h b/scout_avr/src/ros_lib/std_msgs/String.h
deleted file mode 100644
index 7e3d7ee..0000000
--- a/scout_avr/src/ros_lib/std_msgs/String.h
+++ /dev/null
@@ -1,48 +0,0 @@
-#ifndef _ROS_std_msgs_String_h
-#define _ROS_std_msgs_String_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class String : public ros::Msg
-  {
-    public:
-      char * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      uint32_t * length_data = (uint32_t *)(outbuffer + offset);
-      *length_data = strlen( (const char*) this->data);
-      offset += 4;
-      memcpy(outbuffer + offset, this->data, *length_data);
-      offset += *length_data;
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      uint32_t length_data = *(uint32_t *)(inbuffer + offset);
-      offset += 4;
-      for(unsigned int k= offset; k< offset+length_data; ++k){
-          inbuffer[k-1]=inbuffer[k];
-      }
-      inbuffer[offset+length_data-1]=0;
-      this->data = (char *)(inbuffer + offset-1);
-      offset += length_data;
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/String"; };
-    const char * getMD5(){ return "992ce8a1687cec8c8bd883ec73ca41d1"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/Time.h b/scout_avr/src/ros_lib/std_msgs/Time.h
deleted file mode 100644
index 48997e4..0000000
--- a/scout_avr/src/ros_lib/std_msgs/Time.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef _ROS_std_msgs_Time_h
-#define _ROS_std_msgs_Time_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "ros/time.h"
-
-namespace std_msgs
-{
-
-  class Time : public ros::Msg
-  {
-    public:
-      ros::Time data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->data.sec >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data.sec >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->data.sec >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->data.sec >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data.sec);
-      *(outbuffer + offset + 0) = (this->data.nsec >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data.nsec >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->data.nsec >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->data.nsec >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data.nsec);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->data.sec |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->data.sec);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->data.nsec |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->data.nsec);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/Time"; };
-    const char * getMD5(){ return "cd7166c74c552c311fbcc2fe5a7bc289"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt16.h b/scout_avr/src/ros_lib/std_msgs/UInt16.h
deleted file mode 100644
index 41fd0a2..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt16.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#ifndef _ROS_std_msgs_UInt16_h
-#define _ROS_std_msgs_UInt16_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class UInt16 : public ros::Msg
-  {
-    public:
-      uint16_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->data >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data >> (8 * 1)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->data |= ((uint16_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data |= ((uint16_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt16"; };
-    const char * getMD5(){ return "1df79edf208b629fe6b81923a544552d"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt16MultiArray.h b/scout_avr/src/ros_lib/std_msgs/UInt16MultiArray.h
deleted file mode 100644
index 9fc58ab..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt16MultiArray.h
+++ /dev/null
@@ -1,61 +0,0 @@
-#ifndef _ROS_std_msgs_UInt16MultiArray_h
-#define _ROS_std_msgs_UInt16MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class UInt16MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      uint16_t st_data;
-      uint16_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      *(outbuffer + offset + 0) = (this->data[i] >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data[i] >> (8 * 1)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (uint16_t*)realloc(this->data, data_lengthT * sizeof(uint16_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      this->st_data |= ((uint16_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->st_data |= ((uint16_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(uint16_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt16MultiArray"; };
-    const char * getMD5(){ return "52f264f1c973c4b73790d384c6cb4484"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt32.h b/scout_avr/src/ros_lib/std_msgs/UInt32.h
deleted file mode 100644
index 0ac94a4..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt32.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef _ROS_std_msgs_UInt32_h
-#define _ROS_std_msgs_UInt32_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class UInt32 : public ros::Msg
-  {
-    public:
-      uint32_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->data >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->data >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->data >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->data |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->data |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->data |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->data |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt32"; };
-    const char * getMD5(){ return "304a39449588c7f8ce2df6e8001c5fce"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt32MultiArray.h b/scout_avr/src/ros_lib/std_msgs/UInt32MultiArray.h
deleted file mode 100644
index b6f4205..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt32MultiArray.h
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef _ROS_std_msgs_UInt32MultiArray_h
-#define _ROS_std_msgs_UInt32MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class UInt32MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      uint32_t st_data;
-      uint32_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      *(outbuffer + offset + 0) = (this->data[i] >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (this->data[i] >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (this->data[i] >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (this->data[i] >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (uint32_t*)realloc(this->data, data_lengthT * sizeof(uint32_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      this->st_data |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      this->st_data |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      this->st_data |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      this->st_data |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(uint32_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt32MultiArray"; };
-    const char * getMD5(){ return "4d6a180abc9be191b96a7eda6c8a233d"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt64.h b/scout_avr/src/ros_lib/std_msgs/UInt64.h
deleted file mode 100644
index 02468f0..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt64.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef _ROS_std_msgs_UInt64_h
-#define _ROS_std_msgs_UInt64_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class UInt64 : public ros::Msg
-  {
-    public:
-      uint64_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      union {
-        uint64_t real;
-        uint32_t base;
-      } u_data;
-      u_data.real = this->data;
-      *(outbuffer + offset + 0) = (u_data.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_data.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_data.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_data.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      union {
-        uint64_t real;
-        uint32_t base;
-      } u_data;
-      u_data.base = 0;
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->data = u_data.real;
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt64"; };
-    const char * getMD5(){ return "1b2a79973e8bf53d7b53acb71299cb57"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt64MultiArray.h b/scout_avr/src/ros_lib/std_msgs/UInt64MultiArray.h
deleted file mode 100644
index c562c66..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt64MultiArray.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef _ROS_std_msgs_UInt64MultiArray_h
-#define _ROS_std_msgs_UInt64MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class UInt64MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      uint64_t st_data;
-      uint64_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        uint64_t real;
-        uint32_t base;
-      } u_datai;
-      u_datai.real = this->data[i];
-      *(outbuffer + offset + 0) = (u_datai.base >> (8 * 0)) & 0xFF;
-      *(outbuffer + offset + 1) = (u_datai.base >> (8 * 1)) & 0xFF;
-      *(outbuffer + offset + 2) = (u_datai.base >> (8 * 2)) & 0xFF;
-      *(outbuffer + offset + 3) = (u_datai.base >> (8 * 3)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (uint64_t*)realloc(this->data, data_lengthT * sizeof(uint64_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      union {
-        uint64_t real;
-        uint32_t base;
-      } u_st_data;
-      u_st_data.base = 0;
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 1))) << (8 * 1);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 2))) << (8 * 2);
-      u_st_data.base |= ((uint32_t) (*(inbuffer + offset + 3))) << (8 * 3);
-      this->st_data = u_st_data.real;
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(uint64_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt64MultiArray"; };
-    const char * getMD5(){ return "6088f127afb1d6c72927aa1247e945af"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt8.h b/scout_avr/src/ros_lib/std_msgs/UInt8.h
deleted file mode 100644
index 5a70588..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt8.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef _ROS_std_msgs_UInt8_h
-#define _ROS_std_msgs_UInt8_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-
-namespace std_msgs
-{
-
-  class UInt8 : public ros::Msg
-  {
-    public:
-      uint8_t data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      *(outbuffer + offset + 0) = (this->data >> (8 * 0)) & 0xFF;
-      offset += sizeof(this->data);
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      this->data |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      offset += sizeof(this->data);
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt8"; };
-    const char * getMD5(){ return "7c8164229e7d2c17eb95e9231617fdee"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/std_msgs/UInt8MultiArray.h b/scout_avr/src/ros_lib/std_msgs/UInt8MultiArray.h
deleted file mode 100644
index bbc97e4..0000000
--- a/scout_avr/src/ros_lib/std_msgs/UInt8MultiArray.h
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef _ROS_std_msgs_UInt8MultiArray_h
-#define _ROS_std_msgs_UInt8MultiArray_h
-
-#include <stdint.h>
-#include <string.h>
-#include <stdlib.h>
-#include "ros/msg.h"
-#include "std_msgs/MultiArrayLayout.h"
-
-namespace std_msgs
-{
-
-  class UInt8MultiArray : public ros::Msg
-  {
-    public:
-      std_msgs::MultiArrayLayout layout;
-      uint8_t data_length;
-      uint8_t st_data;
-      uint8_t * data;
-
-    virtual int serialize(unsigned char *outbuffer) const
-    {
-      int offset = 0;
-      offset += this->layout.serialize(outbuffer + offset);
-      *(outbuffer + offset++) = data_length;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      *(outbuffer + offset++) = 0;
-      for( uint8_t i = 0; i < data_length; i++){
-      *(outbuffer + offset + 0) = (this->data[i] >> (8 * 0)) & 0xFF;
-      offset += sizeof(this->data[i]);
-      }
-      return offset;
-    }
-
-    virtual int deserialize(unsigned char *inbuffer)
-    {
-      int offset = 0;
-      offset += this->layout.deserialize(inbuffer + offset);
-      uint8_t data_lengthT = *(inbuffer + offset++);
-      if(data_lengthT > data_length)
-        this->data = (uint8_t*)realloc(this->data, data_lengthT * sizeof(uint8_t));
-      offset += 3;
-      data_length = data_lengthT;
-      for( uint8_t i = 0; i < data_length; i++){
-      this->st_data |= ((uint8_t) (*(inbuffer + offset + 0))) << (8 * 0);
-      offset += sizeof(this->st_data);
-        memcpy( &(this->data[i]), &(this->st_data), sizeof(uint8_t));
-      }
-     return offset;
-    }
-
-    const char * getType(){ return "std_msgs/UInt8MultiArray"; };
-    const char * getMD5(){ return "82373f1612381bb6ee473b5cd6f5d89c"; };
-
-  };
-
-}
-#endif
\ No newline at end of file
diff --git a/scout_avr/src/ros_lib/tf/tf.h b/scout_avr/src/ros_lib/tf/tf.h
deleted file mode 100644
index c84c127..0000000
--- a/scout_avr/src/ros_lib/tf/tf.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ROS_TF_H_
-#define ROS_TF_H_
-
-#include "geometry_msgs/TransformStamped.h"
-
-namespace tf
-{
-  
-  geometry_msgs::Quaternion createQuaternionFromYaw(double yaw)
-  {
-    geometry_msgs::Quaternion q;
-    q.x = 0;
-    q.y = 0;
-    q.z = sin(yaw * 0.5);
-    q.w = cos(yaw * 0.5);
-    return q;
-  }
-
-}
-
-#endif
-
diff --git a/scout_avr/src/ros_lib/tf/transform_broadcaster.h b/scout_avr/src/ros_lib/tf/transform_broadcaster.h
deleted file mode 100644
index 52165e0..0000000
--- a/scout_avr/src/ros_lib/tf/transform_broadcaster.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ROS_TRANSFORM_BROADCASTER_H_
-#define ROS_TRANSFORM_BROADCASTER_H_
-
-#include "tfMessage.h"
-
-namespace tf
-{
-
-  class TransformBroadcaster
-  {
-    public:
-      TransformBroadcaster() : publisher_("tf", &internal_msg) {}
-
-      void init(ros::NodeHandle &nh)
-      {
-        nh.advertise(publisher_);
-      }
-
-      void sendTransform(geometry_msgs::TransformStamped &transform)
-      {
-        internal_msg.transforms_length = 1;
-        internal_msg.transforms = &transform;
-        publisher_.publish(&internal_msg);
-      }
-
-    private:
-      tf::tfMessage internal_msg;
-      ros::Publisher publisher_;
-  };
-
-}
-
-#endif
-
diff --git a/scout_avr/src/ros_lib/time.cpp b/scout_avr/src/ros_lib/time.cpp
deleted file mode 100644
index 9b3f10d..0000000
--- a/scout_avr/src/ros_lib/time.cpp
+++ /dev/null
@@ -1,70 +0,0 @@
-/* 
- * Software License Agreement (BSD License)
- *
- * Copyright (c) 2011, Willow Garage, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above
- *    copyright notice, this list of conditions and the following
- *    disclaimer in the documentation and/or other materials provided
- *    with the distribution.
- *  * Neither the name of Willow Garage, Inc. nor the names of its
- *    contributors may be used to endorse or promote prducts derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "ros.h"
-#include "ros/time.h"
-
-namespace ros
-{
-  void normalizeSecNSec(unsigned long& sec, unsigned long& nsec){
-    unsigned long nsec_part= nsec % 1000000000UL;
-    unsigned long sec_part = nsec / 1000000000UL;
-    sec += sec_part;
-    nsec = nsec_part;
-  }
-
-  Time& Time::fromNSec(long t)
-  {
-    sec = t / 1000000000;
-    nsec = t % 1000000000;
-    normalizeSecNSec(sec, nsec);
-    return *this;
-  }
-
-  Time& Time::operator +=(const Duration &rhs)
-  {
-    sec += rhs.sec;
-    nsec += rhs.nsec;
-    normalizeSecNSec(sec, nsec);
-    return *this; 
-  }
-
-  Time& Time::operator -=(const Duration &rhs){
-    sec += -rhs.sec;
-    nsec += -rhs.nsec;
-    normalizeSecNSec(sec, nsec);
-    return *this;
-  }
-
-}
