Page 1 of 1

Troubles with Set Signal Properties

Posted: Fri Sep 21, 2018 3:57 am
by pierdela
Hi,

On the "set signal properties" you write on the user manual that :
- Available Min/Max actions values are 2 bytes values .
- But on the frame description you write that Min/Max actions are 1 bytes values

I also find that there missing 3 bytes on the frames description.
Including Address, header and CRC, the user manual gives 50 bytes from the frame.

But i only success to set signals when i add 3 more bytes in the frame [53 bytes for the whole frame]

For now, i only needed to set simple signal :
- PIN
- TYPE
- MODE
- TARGET

So, i set all the others bytes to 0, but i plan to use more complex and nice signal properties !

So my questions are :
- What are the 3 missing bytes ?
- Min/Max actions are 2 bytes values ?

Best Regards
Pierre

Re: Troubles with Set Signal Properties

Posted: Fri Sep 21, 2018 9:55 am
by Basicmicro Support
Packet format for SetSignal is:

address, cmd, index, type(byte), mode(byte), target(byte), minactions(2 bytes), maxactions(2 bytes), lowpass(byte), timeout(4 bytes), loadhome(4 bytes), min(4 bytes), max(4 bytes), center(4 bytes), deadband(4 bytes), powerexp(4 bytes), minout(4 bytes), maxout(4 bytes), powermin(4 bytes), CRC16

This is straight from the IonStudio interface code(which obviously works).

In general commands that move motors around should never change BUT commands for setup are modified fairly often(we modified the SetSignal and GetSignals commands about 2 months ago) and the manual takes a while to get caught up. We recommend always using IonStudio for setup if possible. In the rare case where you need to make changes on the fly check out the python and arduino interface libraries. However some commands(the SetSignal and GetSignals commands among them) are not implemented in either library(mainly because they are very cumbersome). In that case contact us directly or look at the C# interface class. That class is what is used by IonStudio so if it works in IonStudio it should be in there.