Skip to content
Snippets Groups Projects
Commit 879d6a9f authored by Sergi Hernandez's avatar Sergi Hernandez
Browse files

Increades the receive buffer in the version 2 functions.

parent 20538f19
No related branches found
No related tags found
No related merge requests found
...@@ -200,7 +200,7 @@ unsigned char CDynamixel::receive_status_packet_v1(unsigned char **data,unsigned ...@@ -200,7 +200,7 @@ unsigned char CDynamixel::receive_status_packet_v1(unsigned char **data,unsigned
unsigned char CDynamixel::receive_status_packet_v2(unsigned char **data,unsigned short int *len) unsigned char CDynamixel::receive_status_packet_v2(unsigned char **data,unsigned short int *len)
{ {
std::list<std::string> events; std::list<std::string> events;
unsigned char data_int[256]; unsigned char data_int[1024];
int num=0,read=0,length=0,start=0; int num=0,read=0,length=0,start=0;
unsigned short int crc; unsigned short int crc;
...@@ -216,10 +216,10 @@ unsigned char CDynamixel::receive_status_packet_v2(unsigned char **data,unsigned ...@@ -216,10 +216,10 @@ unsigned char CDynamixel::receive_status_packet_v2(unsigned char **data,unsigned
this->event_server->wait_all(events,500); this->event_server->wait_all(events,500);
num=this->comm_dev->get_num_data(); num=this->comm_dev->get_num_data();
} }
if((read+num)>256) if((read+num)>1024)
{ {
this->comm_dev->read(&data_int[read],256-read); this->comm_dev->read(&data_int[read],1024-read);
read=256; read=1024;
} }
else else
{ {
...@@ -237,10 +237,10 @@ unsigned char CDynamixel::receive_status_packet_v2(unsigned char **data,unsigned ...@@ -237,10 +237,10 @@ unsigned char CDynamixel::receive_status_packet_v2(unsigned char **data,unsigned
this->event_server->wait_all(events,500); this->event_server->wait_all(events,500);
num=this->comm_dev->get_num_data(); num=this->comm_dev->get_num_data();
} }
if((read-start+num)>256) if((read-start+num)>1024)
{ {
this->comm_dev->read(&data_int[read],256-read); this->comm_dev->read(&data_int[read],1024-read);
read=256; read=1024;
} }
else else
{ {
...@@ -447,7 +447,7 @@ void CDynamixel::resync(void) ...@@ -447,7 +447,7 @@ void CDynamixel::resync(void)
do{ do{
try{ try{
this->comm_dev->write(&foo,1); this->comm_dev->write(&foo,1);
this->event_server->wait_all(events,100); this->event_server->wait_all(events,500);
num=this->comm_dev->get_num_data(); num=this->comm_dev->get_num_data();
data=new unsigned char[num]; data=new unsigned char[num];
this->comm_dev->read(data,num); this->comm_dev->read(data,num);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment