Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion current/include/c/urg_sensor.h
Original file line number Diff line number Diff line change
Expand Up @@ -990,7 +990,7 @@ extern "C" {
\~
\see urg_wakeup()
*/
extern void urg_sleep(urg_t *urg);
extern int urg_sleep(urg_t *urg);


/*!
Expand Down
16 changes: 11 additions & 5 deletions current/src/urg_sensor.c
Original file line number Diff line number Diff line change
Expand Up @@ -1263,18 +1263,24 @@ int urg_reboot(urg_t *urg)
}


void urg_sleep(urg_t *urg)
int urg_sleep(urg_t *urg)
{
enum { RECEIVE_BUFFER_SIZE = 4 };
int sl_expected[] = { 0, EXPECTED_END };
char receive_buffer[RECEIVE_BUFFER_SIZE];
char receive_buffer[RECEIVE_BUFFER_SIZE + 1];

if (urg_stop_measurement(urg) != URG_NO_ERROR) {
return;
int qtResult = urg_stop_measurement(urg);

if (qtResult != URG_NO_ERROR) {
return qtResult;
}

scip_response(urg, "%SL\n", sl_expected, MAX_TIMEOUT,
int ret = scip_response(urg, "%SL\n", sl_expected, 1000,
receive_buffer, RECEIVE_BUFFER_SIZE);
if (ret < 0) {
return ret;
}
return 0;
}


Expand Down