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

Problem of understanding SDI and SSM handling #238

Open
Schlammkuh opened this issue Nov 29, 2022 · 0 comments
Open

Problem of understanding SDI and SSM handling #238

Schlammkuh opened this issue Nov 29, 2022 · 0 comments

Comments

@Schlammkuh
Copy link

Schlammkuh commented Nov 29, 2022

Hi,

I need to receive data from an ARINC429 device that sends 21bit of payload data (bits 8..28) in an ARINC message. So the SDI bits (8..9) would be included as payload as well. Additionally, the SSM bits (29..30) are used as the sign. As I don't have access to this device right now, I'm trying to simulate it by using an internal loop back (sending/receiving on the same channel - Rx: Ch.1, Tx: Ch.17).

How can I make this work?
I'm on Custom Device version 21.3.1.1, and using VeriStand 2020. In VeriStand I don't see the SDI / SSM bits change. Rx data changes in steps of 4 when Tx bits 10 and up toggle, so seems to me that SDI bits are ignored. I tried several combinations of encoding and SDI channel enabled/disabled but no luck. And it makes no difference on the Rx side whether mit startBit in the parameters file is 8 or 10.

Edit:
as opposed to the documentation (Parameters XML FIle.md), you cannot enter startBit=0 and numberOfBits=32, b/c during refreshing the parameters file an error message appears noting the valid range for the startBit is 8..30. Where are all those values defined? are they hard-coded, or does the Custom Device reads in some kind of XML schema file (.xsd)? It can't be the 'ARINC429_Parameters_XML_Schema.xsd' file b/c the correct values (following the documentation) are mentioned in there.

Using the BCD encoding, I can get the SSM bits as sign, but then the value range is too small.
I can't use the Discrete encoding either - it only gives me 0 or 1 on the Rx side, no matter how small / large my numberOfBits in the parameters file is. Seems it only detects whether the Tx payload bits are equal 0 or uneqal 0.

Is there any better documentation for the parameters file? Also, your 'Ballard Multichannel Tx and Rx PARAM.xml' uses only BNR encoding (in contrast to its documentation). Do you have any examples with other encoding?

So my main question is: can you help me with the parameters file?
What I need: send & receive ARINC messages with 21 bits of payload data covering bits 8..28, so the SDI bits are used for the LSBs of the payload. Bits 29..30 (SSM) are used for the sign. E.g., I need to set SDI / SSM bits by myself. Would that be possible?

Edit:
Is there an option to send/receive raw values, i.e. can I enter the hex value ''0x7FD5670C" for transmission? And see that value in my VeriStand channel, like in the log files?

Please contact me if you need any further information.

Thanks,

Sebastian

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

No branches or pull requests

1 participant