Simple message encoding

Imported from previous forum

I’m trying to encode small test message with only one field. In compact notation template for that message looks like “1u=1”. I’m sending messages for this template: “1=1”, “1=1”, “1=2”. But for 2 first messages encoder doesn’t return enything, because field value doesn’t differ from previous on, and because where are no fields to transfer, presence map is also empty.
How I should encode messages in such situation?

Hi Iyla,

AFAIK FAST hand assembly hasn’t reached the university curriculum yet:

1u=1 means default to value=1, so:

3 one field messages: ‘1=1’, ‘1=1’, ‘1=2’ should encode to:

0x80 0x80 0xc0 0x82

the decoder should parse the following:

msg 1 - pmap 0x80 means default field 1 => 1=1
msg 2 - pmap 0x80 means default field 1 => 1=1
msg 3 - pmap 0xc0 means field 1 present, 0x82 => 0x02 => 1=2

Have a nice weekend,
Rolf

I’m trying to encode small test message with only one field. In compact
notation template for that message looks like “1u=1”. I’m sending
messages for this template: “1=1”, “1=1”, “1=2”. But for 2 first
messages encoder doesn’t return enything, because field value doesn’t
differ from previous on, and because where are no fields to transfer,
presence map is also empty. How I should encode messages in such
situation?

I was a bit to quick hitting the send button.
1u=1 means COPY use default=1 if no previous value.

CN isn’t the default specification language anymore :slight_smile:

/Rolf

Hi Iyla,

AFAIK FAST hand assembly hasn’t reached the university curriculum yet:

1u=1 means default to value=1, so:

3 one field messages: ‘1=1’, ‘1=1’, ‘1=2’ should encode to:

0x80 0x80 0xc0 0x82

the decoder should parse the following:

msg 1 - pmap 0x80 means default field 1 => 1=1
msg 2 - pmap 0x80 means default field 1 => 1=1
msg 3 - pmap 0xc0 means field 1 present, 0x82 => 0x02 => 1=2

Have a nice weekend, Rolf

I’m trying to encode small test message with only one field. In
compact notation template for that message looks like “1u=1”. I’m
sending messages for this template: “1=1”, “1=1”, “1=2”. But for 2
first messages encoder doesn’t return enything, because field value
doesn’t differ from previous on, and because where are no fields to
transfer, presence map is also empty. How I should encode messages
in such situation?

I was a bit to quick hitting the send button. 1u=1 means COPY use
default=1 if no previous value.

CN isn’t the default specification language anymore :slight_smile:

/Rolf

Thanks a lot for a quick answer. I already understood thatpmap should have at least one byte even if there are no fields to transfer.
I’m using compact notation because it’s really… compact :slight_smile: and it’s easier and faster to write.