Document number
205065
Version
Rev. N
Issue date
2019-02-04
Sirius OBC and TCM User Manual
Page
86
of
174
Return value
Description
0
Command executed
successfully
-EIO
Unknown IOCTL for device.
5.9.6. Usage description
5.9.6.1. RTEMS
–
Send Telemetry
1.
Open the device “/dev/ccsds
-
tm0”,”/dev/ccsds
-
tm1”, …, “/dev/ccsds
-
tm6”, “/dev/ccsds
-
tc0” and “/dev/ccsds”. Set up the TM path by ioctl
-call CCSDS_SET_TM_CONFIG on
device “/dev/ccsds
-
tm” or ioctl CCSDS_INIT on device “/dev/ccsds”
2. Prepare the content in SDRAM that will be fetched by DMA-transfer.
3. Write the SDRAM content to the device for the virtual channel to use.
5.9.6.2. RTEMS
–
Receive Telecommands
1.
Open the device “/dev/ccsds
-
tm”, “/dev/ccsds
-
tc0” and “/dev/ccsds”. Set up the TC path
by ioctl-call CCSDS_SET_TC_C
ONFIG on device “/dev/ccsds
-
tc” or or ioctl
CCSDS_INIT on device “/dev/ccsds”
2.
Do a read from “/dev/ccsds
-
tc0”. This call will block until a new TC has been received.
CCSDS_INIT
/dev/ccsds
N.A.
Sets a default
configuration of
CCSDS IP. See 5.9.1
CCSDS_SET_CLCW
/dev/ccsds-tm
uint32_t
Set the CLCW. See
RD8.
CCSDS_GET_CLCW
/dev/ccsds-tm
uint32_t*
Get the CLCW. See
RD8.
CCSDS_SET_TM_TIMESTAMP
/dev/ccsds-tm
uint32_t
Set period of
timestamp
generation.
0x00
–
No time
stamping
0x01
–
Take a time
stamp every time
frame sent
0x02
–
Take a time
stamp every 2
nd
time
frame sent
…
0xFF
–
Take a time
stamp every 255
th
time frame sent
CCSDS_GET_TM_TIMESTAMP
/dev/ccsds-tm
uint32_t *
Get period of
timestamp
generation.