Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create support for KNX-RF Retransmitter #59

Open
nanosonde opened this issue May 21, 2020 · 0 comments
Open

Create support for KNX-RF Retransmitter #59

nanosonde opened this issue May 21, 2020 · 0 comments
Labels
enhancement New feature or request

Comments

@nanosonde
Copy link
Contributor

nanosonde commented May 21, 2020

Enable support for retransmitting received KNX-RF frames. This can be used to extend the range of KNX-RF.

See

// Frame duplication prevention based on LFN (see KKNX RF spec. 3.2.5 p.28)

See chapter 6.1.7 of 03.02.05 Communication Medium RF.

1) History List
We have to store the KNX serial number and the last received LFN (frame number) of this device in a list:

  • minimum 3 entries
  • maximum 7 entries or deletion mechanism after a timeout (e.g. 3s)
  • only one entry for each KNX serial number

Then discard a received frame if its KNX serial number and LFN pair is already in the list.

2) Repetition Counter
Implement pseudo code:

if rf_repetition_counter(rec_Frame) > 0 and 
  rf_repetition_counter(rec_Frame) > rf_repetition_counter_limit(Repeater) 
    rf_repetetion_counter(rec_Frame)— 
else 
  discard(rec_Frame) 
endif 

rf_repetition_counter_limit should be read from PID_RF_REPEAT_COUNTER (PID = 74) in the Device Object (object_type = 0).

Additional remarks:

  • The KNX serial number is only contained in RF frames where the destination address is a group address and it is not 0x0000 (broadcast).

Open questions:

  • As the KNX serial number is only conained in frames that are used for normal group communication, does this mean that the RF retransmitter really only works on this single communication mode? So no RF retransmitting when configuring a device for example.
@thelsing thelsing added the enhancement New feature or request label Aug 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants