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

Introduce new addressing- and telegram-classes #48

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

SystemKeeper
Copy link

The original intend of this branch was to allow extended GAs, i.e. full 16 bit group addresses. Went a bit further than I originally anticipated, so this is quite a large PR and introduces some API changes. Let me know what you think.

Here are the changes:
Addressing:

  • Moved Addressing to separate classes (not relying on string for GAs)
  • Support for extended GAs (i.e. full 16 bit group addresses)
  • Support for different GA styles (ThreeLevel, TwoLevel, Free)

Telegram processing:

  • Added classes for ControlField1 and ControlField2
  • Added enums to better understand what the ControlFields actually represent
  • Changed event parameters to standard .net pattern
  • Fixed bugs for CF1 / CF2 (wrong hop count, wrong broadcast bit, 0.0.0 not allowed as address)

Testes:

  • Added tests for Addressing-classes
  • Added tests for ControlField-classes

Readme:

  • Updated to reflect changes of this commit

…reeLevel, TwoLevel and FreeStyle).

This also supports extended GAs as supported starting with ETS4 and using the full 16-bit GA range.
Addressing:
 - Moved Addressing to separate classes (not relying on string for GAs)
 - Support for extended GAs (i.e. full 16 bit group addresses)
 - Support for different GA styles (ThreeLevel, TwoLevel, Free)

Telegram processing:
 - Added classes for ControlField1 and ControlField2
 - Added enums to better understand what the ControlFields actually represent
 - Changed event parameters to standard .net pattern
 - Fixed bugs for CF1 / CF2 (wrong hop count, wrong broadcast bit, 0.0.0 not allowed as address)

Testes:
 - Added tests for Addressing-classes
 - Added tests for ControlField-classes

Readme:
 - Updated to reflect changes of this commit
GA was tested against SourceAddress instead of DestinationAddress
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant