TC definition

39 views
Skip to first unread message

Tilman Glotzner

unread,
Jul 1, 2025, 10:40:23 PMJul 1
to yamcs
Dear all

I understand that the TC are defined in the xtce.xml file. But where/how do I define/set the VCID, the MAP, and COP-1 (yes,no) for a telecommand?

<MetaCommand name="rqst_amsat_logo_cmd" shortDescription="TC to request the #255 SSDV image with the AMSAT-DL logo"> 
 <BaseMetaCommand metaCommandRef="generic_cmd_password"> 
  <ArgumentAssignmentList>
    <ArgumentAssignment argumentName="generic_cmd_password/ccsds_packet/apid" argumentValue="200" /> 
   </ArgumentAssignmentList> 
 </BaseMetaCommand> 
 <CommandContainer name="rqst_logo"> 
   <BaseContainer containerRef="generic_cmd_password" /> 
 </CommandContainer> 
</MetaCommand>

Many thanks
Tilman

Nicolae Mihalache

unread,
Jul 3, 2025, 2:25:13 PMJul 3
to ya...@googlegroups.com
Those are added by the command post-processor as command attributes. See this example:
https://github.com/yamcs/yamcs/tree/master/examples/ccsds-frames/src/main/yamcs/etc
and this documentation:
https://docs.yamcs.org/yamcs-server-manual/links/ccsds-frame-processing/

--
You received this message because you are subscribed to the Google Groups "yamcs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to yamcs+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/yamcs/d7e45b49-556e-4501-ab4e-536f8bacee61n%40googlegroups.com.

Tilman Glotzner

unread,
Jul 7, 2025, 6:07:49 PMJul 7
to yamcs
Dear Nicolae,

thank you for your response.

We would like to preset the  VCID, COP-1 Bypass, and CCSDS MAP ID  for different commands defined in the xtce-file. Right now, we need to enter those into the web-Gui before a command can be issued (see arrached screenshot). I understand that the xtce.xml offers no language elements to define these attributes as part of a command. On the other hand, I am pretty sure we are not the first ones with this desire and there is a native way to achieve this within yamcs :-) If there should be none, would it for instance be possible to setup a GUI e.g. using python and use yamcs API?

Many thanks again

Tilman

Untitled.jpg

Nicolae Mihalache

unread,
Jul 8, 2025, 10:08:18 PMJul 8
to ya...@googlegroups.com
I think the MAP_ID you can indeed set in the xtce file, something like this should work:
<MetaCommand...>
   <AncillaryDataSet>
      <AncillaryData name="Yamcs:CcsdsMapId">3</AncillaryData>
   </AncillaryDataSet>
...

For the VCID you would have to configure the different VCIDs in the link config, each VCID with a different stream. There is no way to specify in XTCE the stream on which a command is sent. However, you can define in the stream configuration which commands are routed to which stream using patterns. See the tcPatterns section here:

For the by-pass, I'm not sure I have any option to set it automatically based on the command :(

I think we should allow setting the default for the command attributes based on XTCE ancillary data properties, like the above CcsdsMapId. However, that requires some development, and I cannot promise it will be done soon unless we find someone to sponsor it...

nicolae



Tilman Glotzner

unread,
Jul 9, 2025, 6:13:41 PMJul 9
to yamcs
Dear Nicolae,

I tried it with 3 selected commands -- that worked. Thanks for the hints. Only the COP-1 bypass needs to be set manually. Would there be any workaround to get the bypass set anyhow, like setting it in general for all commands?

Many thanks
Tilman

Tilman Glotzner

unread,
Jul 22, 2025, 3:46:54 PMJul 22
to yamcs
Just for the record: I set useCop1 to false for the virtual channels used for commanding (in yamcs.yaml). The COP1-flag apparently can only be set for virtual channel rather than for an individual command.  I think there is no other way or better way to do it.
Reply all
Reply to author
Forward
0 new messages