void setProfileConstantVelocity(int fd, uint8_t nodeId, uint32_t vel)
{
    ZO_PROTOCOL_PACKET p;
    p.addressedNodeID = nodeId;
    p.ownNodeID = 0x01;
    p.commandID = 0x04;
    p.byteCount = 0x04;
    u32ToStr(vel, p.data);
    p.lrc = calcLRC(&p);
    if( putPacketSerial(fd, &p) )
        getResponse(fd, &p);
}
void setAntiWindup(int fd, uint8_t nodeId, uint32_t anti_windup)
{
    ZO_PROTOCOL_PACKET p;
    p.addressedNodeID = nodeId;
    p.ownNodeID = 0x01;
    p.commandID = 0x1D;
    p.byteCount = 0x04;
    u32ToStr(anti_windup, p.data);
    p.lrc = calcLRC(&p);
    if( putPacketSerial(fd, &p) )
        getResponse(fd, &p);
}
void setBaudRate(int fd, uint8_t nodeId, uint32_t baudRate)
{
    ZO_PROTOCOL_PACKET p;
    p.addressedNodeID = nodeId;
    p.ownNodeID = 0x01;
    p.commandID = 0x17;
    p.byteCount = 0x04;
    u32ToStr(baudRate, p.data);
    p.lrc = calcLRC(&p);
    if( putPacketSerial(fd, &p) )
        getResponse(fd, &p);
}
void zoSms::setProfileConstantVelocity(uint8_t nodeId, uint32_t vel)
{
	ZO_PROTOCOL_PACKET p;
	
	p.addressedNodeID = nodeId;
	p.ownNodeID = 1;
	p.commandID = 0x04;
	p.byteCount = 4;
	u32ToStr(vel,p.data);
	p.lrc = calcLRC(&p);
	
	if( ha.putPacket(&p) )
		getResponse(&p);
}
void zoSms::setProfileAcceleration(uint8_t nodeId, uint32_t accel)
{
	ZO_PROTOCOL_PACKET p;
	
	p.addressedNodeID = nodeId;
	p.ownNodeID = 1;
	p.commandID = 0x03;
	p.byteCount = 4;
	u32ToStr(accel,p.data);
	p.lrc = calcLRC(&p);
	
	if( ha.putPacket(&p) )
		getResponse(&p);
}