### Install Software Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/build.rst Install the software after configuration and building. ```bash ./install ``` -------------------------------- ### Start Victoria Metrics Push Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Starts pushing parameters to a Victoria Metrics database. This example shows connecting to a local Victoria Metrics instance and another with authentication and a specified port. ```csh vm start localhost ``` ```csh vm start -u username -p password -s -P 8427 ``` -------------------------------- ### Install System Dependencies Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/requirements.rst Installs essential build tools and libraries required for the project using apt. ```bash sudo apt install git build-essential libsocketcan-dev |can-utils libzmq3-dev libyaml-dev pkg-config fonts-powerline python3-pip libelf-dev ``` -------------------------------- ### Create a New Command Queue Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/scheduler_examples.rst Use 'cmd new get' to initialize a new command queue for 'get' operations. The system confirms initialization. ```csh host>> cmd new get example | Initialized new command: example ``` -------------------------------- ### Build and Install CSH Source: https://github.com/spaceinventor/csh/blob/master/README.md Clones the CSH repository with submodules, navigates into the directory, and then runs the configure and install scripts. ```bash git clone --recurse-submodules https://github.com/spaceinventor/csh.git cd csh ./configure ./install ``` -------------------------------- ### Install Build Dependencies for CSH Source: https://github.com/spaceinventor/csh/blob/master/README.md Installs necessary development libraries and tools for building CSH on Ubuntu systems. Pipx is used to install the meson build system. ```bash sudo apt install libcurl4-openssl-dev git build-essential libsocketcan-dev can-utils libzmq3-dev libyaml-dev pkg-config fonts-powerline pipx libelf-dev libbsd-dev python3-dev pipx install meson ``` -------------------------------- ### Start Prometheus Exporter Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Starts the Prometheus node exporter to enable a webserver compatible with Prometheus scrapers. The first command starts the exporter, and the second starts a housekeeping sniffer for HK node 6. ```csh prometheus start ``` ```csh prometheus start -n 6 ``` -------------------------------- ### Start CSH and Ping a Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/shell_interface.rst Initiates the CSH interface and demonstrates how to ping a specific node. Requires an existing init file. ```csh >>$ csh host>>node 212 host>212>ping |Ping node 212 size 0 timeout 1000: Reply in 14 [ms] ``` -------------------------------- ### Install WSL on Windows Source: https://github.com/spaceinventor/csh/blob/master/README.md Installs the Windows Subsystem for Linux (WSL) on a Windows machine. This enables running Linux environments, including CSH, within Windows. ```powershell wsl --install ``` -------------------------------- ### Initialize CSP Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Initializes CSP in CSH. CSP is automatically initialized with default settings when CSH starts. ```csh csp init ``` -------------------------------- ### Install Python Package Manager Dependencies Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/requirements.rst Installs project-specific Python dependencies using pip. ```bash sudo pip3 install meson ninja ``` -------------------------------- ### Add ZMQ Interface Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Initializes a new ZMQ interface. This example sets up ZMQ0 to listen on address 1, with publish (tx) on tcp://localhost:6000 and subscribe (rx) on tcp://localhost:7000. ```csh csp add zmq 1 localhost ``` -------------------------------- ### Install CSH .deb Package Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/install.rst Execute this command in the terminal within the directory containing the downloaded .deb package. Replace placeholders with your specific Ubuntu version and CSH version. ```bash sudo apt install ./si-csh__amd64_.deb ``` -------------------------------- ### Launch CSH Instances Source: https://github.com/spaceinventor/csh/blob/master/README.md Launches two instances of CSH with different configuration files. This is typically done to set up a communication channel between them, for example, using CSP. ```bash csh -i conf1.csh csh -i conf2.csh ``` -------------------------------- ### Launch CSH Interactively Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/launch_sw.rst Starts the CSH shell in interactive mode. This is the primary command to begin using CSH interactively. ```csh >>$ csh ``` -------------------------------- ### Add CAN Interface Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Registers a new CAN interface in CSH. This example initializes CAN0 with a bitrate of 1000000 and promiscuous mode enabled. ```csh csp add can 1 ``` -------------------------------- ### CSP Initialization for CAN Source: https://github.com/spaceinventor/csh/blob/master/README.md Initializes CSP and adds a CAN interface with a specific ID. This is part of the setup required for CSH instances to communicate over CAN. ```bash csp init csp add can -d 1 ``` -------------------------------- ### Upload File to Memory Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Uploads a file to a specified memory address on a node. This example first creates a file 'hello.txt' and then uploads it to node 6 at address 0x30001000. ```csh echo "HELLO WORLD" >> hello.txt ``` ```csh upload hello.txt 0x30001000 ``` -------------------------------- ### Switch Slot, Program, and Switch Back Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Temporarily switches to a specified slot, programs another slot, and then reboots into the newly programmed slot. This example shows switching from slot 1 to slot 0, programming slot 1, and then rebooting into slot 1. ```csh host>6> ident | IDENT 6 | obc-hk | FLASH-1 | v1.2-1-gd958d8e+ | Mar 17 2023 12:18:08 ``` ```csh host>6> sps 0 1 | Setting rdp options: 3 10000 5000 2000 2 | Switching to flash 0 | Will run this image 1 times | cmd new set | Rebooting........................................ | |obc-hk | |FLASH-1 | |v1.2-1-gd958d8e | |Feb 22 2023 13:55:31 ``` -------------------------------- ### Add Route Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Adds a new route to the CSP routing table. This example adds a route for network 64/8 to the CAN0 interface. ```csh csp add route 64/8 CAN0 ``` -------------------------------- ### Get System Uptime Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Responds with the system uptime of the remote node. This is useful for monitoring system availability and performance. ```csh host>6> uptime | Uptime of node 6 is 10 s ``` -------------------------------- ### Get Module Configuration Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/APMs/csh_si.rst Retrieves and stores persistent configuration parameters from a module. Optionally reboots into firmware slots and performs a list download. Can retrieve from multiple modules by providing a comma-separated list of nodes. ```csh host>bat@8> conf get -r -l | | IDENT 8 | bat | samc21 01] | v1.0-32-g61cfbc9 | Apr 12 2024 16:04:12 | | IDENT 8 | bat | samc21 [1] | v1.0-32-g61cfbc9 | Apr 12 2024 16:04:46 | | Got param: temp:8[1] | Got param: boot_cnt:8[1] | Got param: boot_cur:8[1] | ... | Got param: heater_auto:8[1] | Got param: cell_voltage:8[8] | Got param: bus_current:8[1] | | Configuration is stored into ./configuration and ./paramdefs .. csh-prompt:: host>bat@8> ``` -------------------------------- ### Load csh APM for Extended Functionality Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Load a csh APM for extended functionality using 'apm load'. The system will automatically search in the $HOME/.local/lib/csh folder for installed APMs. ```csh host>6> apm load | Loaded: /home/user/.local/lib/csh/libcsh_hk.so ``` -------------------------------- ### Print the value of an environment variable in CSH Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/environment_variables.rst Use 'var get' to retrieve and display the value of a specific environment variable. This is helpful for verifying variable settings. ```csh var get MY_VARIABLE ``` -------------------------------- ### Pull All Parameters from Remote Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Retrieves all available parameters from a remote node. This command is useful for getting a complete overview of the node's configuration and status. ```csh host>6> pull | 130:6 adc_temp = 21769 | 303:6 alarm_dbg = 1 | 25:6 boot_cnt = 451 | 24:6 boot_cur = 0 | 26:6 boot_err = 32 | 21:6 boot_img0 = 0 | 20:6 boot_img1 = 0 | 384:6 ch_protect = 0 | 13:6 csp_can_pwrsave = 1 | 11:6 csp_can_speed = 1000000 | 10:6 csp_node = 6 | 12:6 csp_rtable = "" | 140:6 dac_enabled = [0 0 0 0 0 0] | 164:6 efficiency = 0.0000 ``` -------------------------------- ### Get Node Identification in CSH Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/shell_interface.rst Retrieves identification details for a node within the CSH interface after pinging it. ```csh host>212> ident |IDENT 212 | obc-hk | FLASH-1 | v1.2-1-gd958d8e+ | Mar 17 2023 12:18:08 ``` -------------------------------- ### Get a Single Parameter from Remote Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Retrieves the current value of a specific parameter from a remote node. This is useful for checking the status or configuration of a parameter. ```csh host>6> get gndwdt 10000 | 1:6 gndwdt = 9997 ``` -------------------------------- ### Configure Build Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/build.rst Run the configure script to prepare the build environment. ```bash ./configure ``` -------------------------------- ### Navigate to Directory Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/build.rst Change the current directory to the cloned CSH repository. ```bash cd csh ``` -------------------------------- ### Download and Upload Files Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Demonstrates downloading a file from a remote node to a local file and uploading a local file to a remote node. Ensure the file paths and addresses are correct. ```csh host>6> download 0x30001000 12 hello2.txt .. csh-prompt:: host>6> upload hello.txt 0x30001000 ``` -------------------------------- ### Run a Command Queue Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/scheduler_examples.rst Execute the current command queue using 'cmd run'. The output shows the parameters and their values after execution. ```csh host>2>#down:example> cmd run | param1 = 42 | param2 = 0 ``` -------------------------------- ### Initialize VTS with ADCS Parameters Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Send ADCS q_hat and position parameters to the VTS timeloop software using 'vts init'. Specify the ADCS node with -n. Server IP and port can be changed from defaults with -s and -p. ```csh host>6> vts init -n 300 | Streaming data to VTS at 127.0.0.1:8888 ``` -------------------------------- ### Download List of Remote Parameters Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Downloads a list of remote parameters. The output indicates which parameters are being received. Use this to fetch multiple parameters efficiently. ```csh host>6> list download | Got param: adc_temp[1] | Got param: alarm_dbg[1] | Got param: boot_cnt[1] | Got param: boot_cur[1] | Got param: boot_err[1] | ... | Got param: tlm_vmax[1] | Got param: tlm_vmin[1] | Got param: v_in[6] | Got param: v_out[1] | Received 81 parameters ``` -------------------------------- ### Initialize CAN Interface Source: https://github.com/spaceinventor/csh/blob/master/README.md Initializes the CAN interface, which requires sudo privileges. This command is a prerequisite for running CSH instances that communicate over CAN. ```bash caninit ``` -------------------------------- ### APM API: libmain function Source: https://github.com/spaceinventor/csh/blob/master/README.md Defines the entry point function for an Add-on Program Module (APM). This function is called once after loading the APM and is intended for initialization. ```c libmain(int argc, char ** argv) ``` -------------------------------- ### Check Node Uptime Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Displays the uptime of a specified node. The first command shows the current uptime, and the second is typically run after a reboot to confirm it. ```csh host>6> uptime | Uptime of node 6 is 10 s ``` ```csh host>6> uptime | Uptime of node 6 is 0 s ``` -------------------------------- ### Display CSP Info Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Provides CSP information for the local node, including interface configuration and statistics. The output details statistics for various interfaces like LOOP and ZMQ0. ```csh info ``` -------------------------------- ### Inspect Leafspace Interface Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/cortex_examples.rst Inspects the details of the added MQTT interface. The output shows the interface name, address, netmask, and transmission/reception statistics. ```csh info | MQTT0-25667 addr: 589 netmask: 8 dfl: 0 | tx: 00000 rx: 00000 txe: 00000 rxe: 00000 | drop: 00000 autherr: 00000 frame: 00000 | txb: 0 (0B) rxb: 0 (0B) ``` -------------------------------- ### Switch to Another Boot Image Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Reboots the node into a different boot image specified by a number. The system indicates the switch and reboot process. ```csh host>6> switch 1 | Switching to flash 1 | Will run this image 1 time |cmd new set | Rebooting.......................... | |obc-hk | |FLASH-1 | |v1.2-1-gd958d8e+ | |Mar 17 2023 12:18:08 ``` -------------------------------- ### Clone Repository Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/build.rst Clone the CSH repository, ensuring all submodules are also fetched. ```bash git clone --recurse-submodules https://github.com/spaceinventor/csh.git ``` -------------------------------- ### Loading All APMs in CSH Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/APMs/introduction.rst Use the 'apm load' command to load all available Extension Modules (APMs) into the CSH shell. This command will display which modules are loaded and report any command name conflicts. ```csh host>> apm load | Loaded: /home/tjessen/.local/lib/csh/libcsh_obc.so | Slash command 'node save' is overriding an existing command | Slash command 'node list' is overriding an existing command | Slash command 'node add' is overriding an existing command | Loaded: /home/tjessen/.local/lib/csh/libcsh_si.so ``` -------------------------------- ### Program a Node Slot Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Programs a specified slot on a node, automatically searching for valid binaries. The -f option can specify a file path. The output shows the programming process and verification. ```csh host>6> program 0 | Setting rdp options: 3 10000 5000 2000 2 | node 16 | Requesting VMEM name: fl0... | Found vmem | Base address: 0x404000 | Size: 507904 | Searching for valid binaries | 0: ./obc-0.bin | | ABOUT TO PROGRAM: ./obc-0.bin | | |obc-hk | |FLASH-1 | |v1.2-1-gd958d8e+ | |Mar 17 2023 12:18:08 ``` ```csh host>6> yes | Upload 82664 bytes to node 6 addr 0x404000 | ................................ - 6 K | ................................ - 78 K | ................................ - 81 K | Uploaded 82664 bytes in 5.950 s at 13893 Bps | ................................ - 6 K | ................................ - 78 K | ................................ - 81 K | Downloaded 82664 bytes in 4.551 s at 18163 Bps ``` -------------------------------- ### Add Parameters to a Command Queue Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/scheduler_examples.rst Use 'cmd add' to append parameters to the current command queue. Each 'cmd add' command adds a specified parameter. ```csh host>2>#down:example> cmd add param1 | cmd new get example | cmd add -n 2 param1 ``` ```csh host>2>#down:example> cmd add param2 | cmd new get example | cmd add -n 2 param1 | cmd add -n 2 param2 ``` -------------------------------- ### List Current Parameter List of Selected Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Displays the current parameter list for a selected node. Use the '-n -1' option to list all remote parameters from all nodes. ```csh host>6> list | 20:6 boot_img1 = 0 | 21:6 boot_img0 = 0 | 22:6 boot_img2 = 0 | 23:6 boot_img3 = 0 | 24:6 boot_cur = 0 | 25:6 boot_cnt = 0 | 26:6 boot_err = 0 | 1:6 gndwdt = 0 | 51:6 csp_buf_out = 0 | ... ``` -------------------------------- ### CSH Usage Information Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/launch_sw.rst Displays the usage information for the csh command, including initialization options and manual access. ```csh >>$ csh -h | usage: csh -i init.csh | In CSH, type 'manual' to access CSH manuals | | Copyright (c) 2016-2025 Space Inventor A/S ``` -------------------------------- ### Check Free Buffers on a Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Displays the number of free buffers available on a specified node. ```csh host>6> buffree | Free buffers at node 6 is 9 ``` -------------------------------- ### Watch Command Execution Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Repeats a specified command periodically. Pressing Enter stops the execution. This is useful for monitoring dynamic values. ```csh host>6> watch -n 1000 "ping" | Executing "ping" each 1000 ms - press to stop | Ping node 6 size 1 timeout 1000: Reply in 2 [ms] | Ping node 6 size 1 timeout 1000: Reply in 8 [ms] | Ping node 6 size 1 timeout 1000: Reply in 2 [ms] ``` -------------------------------- ### Exit a Command Queue Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/scheduler_examples.rst Use 'cmd done' to exit the current command queue and return to the previous state. ```csh host>2>#down:example> cmd done ``` -------------------------------- ### Request Node Information Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Requests nodes to reply with system information such as hostname, vendor, revisions, and build timestamp. Using ident on a broadcast address (16383) can discover all devices on the local network. ```csh ident 16383 ``` -------------------------------- ### Program Slot with CRC-32 Checksum Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Programs a slot using CRC-32 checksum for verification, which can be faster than a full bitwise comparison. This requires module support for CRC-32 calculation. ```csh host>6> program -C 0 ``` -------------------------------- ### List VMEM Areas on a Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Displays the virtual memory (VMEM) areas on a remote node, including their addresses, sizes, and types. ```csh host>6> vmem | Requesting vmem list from node 6 timeout 1000 version 2 | 0: sched 0x31001000 - 4096 typ 8 | 1: comma 0x31002000 - 4096 typ 8 | 2: hk_li 0x31003000 - 20480 typ 8 | 3: hk_co 0x31000500 - 1280 typ 8 | 4: stdbu 0x2045f100 - 3584 typ 1 | 5: fram 0x30000000 - 32768 typ 2 | 6: fl3 0x580000 - 524288 typ 4 | 7: fl2 0x500000 - 524288 typ 4 | 8: fl0 0x404000 - 507904 typ 4 | 9: csp 0x31000000 - 84 typ 2 | 10: btldr 0x31000400 - 16 typ 2 ``` -------------------------------- ### APM API: libinfo function Source: https://github.com/spaceinventor/csh/blob/master/README.md Defines a function to provide information about the state of an APM. This function is called by the 'apm info' command and can be used to expose statistics or other relevant data. ```c libinfo() ``` -------------------------------- ### Add ZMQ Interface to CSH Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Installation/launch_sw.rst Adds a ZeroMQ (ZMQ) interface to CSH, specifying the ZMQ address. This command initializes ZMQ with the given address and configures publish/subscribe ports. ```csh host>>csp add zmq -d 8 localhost | ZMQ init ZMQO: addr: 8, pub(tx): [tcp://localhost:6000], sub(rx): [tcp://localhost:7000] ``` -------------------------------- ### View Downloaded File Content Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Displays the content of a file that has been downloaded from a remote node. This is useful for verifying the integrity of downloaded data. ```csh host>6> exit .. csh-prompt:: >> $ cat hello2.txt | HELLO WORLD ``` -------------------------------- ### Add Space Inventor OBC Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/APMs/csh_si.rst Adds a Space Inventor OBC module, specifying the PDU hostname and channel. This enables remote power control. ```csh host>6> node add -p pdu1-a -c 2 obc host>obc@6> ``` -------------------------------- ### Retrieve and Clear stdout Buffer with stdbuf Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Use the 'stdbuf' command to retrieve the stdout buffer of a node and clear it. This is useful for inspecting logs or debugging. ```csh host>6> stdbuf | bootmsg: obc-hk Feb 15 2023 08:29:19 slot: 0, cause: SOFT | |Feb 15 2023 08:29:18 ``` -------------------------------- ### Generate Built-in Commands CSV Source: https://github.com/spaceinventor/csh/blob/master/doc/index_man.rst This command generates a CSV file listing the built-in commands provided by CSH. It is used for documentation purposes. ```bash .. partool -q --csv -s builddir/csh > doc/MAN/Operating_Instructions/builtin_commands.csv ``` -------------------------------- ### Define a new environment variable in CSH Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/environment_variables.rst Use 'var set' to define or update an environment variable. This command is useful for storing configuration values or parameters that can be reused. ```csh var set MY_VARIABLE 1 ``` -------------------------------- ### Grant Network Capabilities to CSH Executable Source: https://github.com/spaceinventor/csh/blob/master/README.md Grants the CSH executable raw network and network administration capabilities. This is required for changing the CAN interface baudrate and must be re-run after rebuilding the executable. ```bash sudo setcap cap_net_raw,cap_net_admin+ep ./builddir/csh ``` -------------------------------- ### Remote Timesync Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Synchronizes the time with a remote node and reports the time difference. This command is essential for accurate logging and event correlation. ```csh host>6> time | Remote time is 1516625445.622655490 (diff 107 us) ``` -------------------------------- ### Poke Remote Memory Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Writes data to a specified memory address on a remote node. This command is for manipulating memory directly and should be used with caution. It supports writing less than 200 bytes. ```csh host>6> poke 0x30001000 DEADBEEF | Base16-decoded "DEADBEEF" to: | Poke at address 0x30001000 | 0x7ffc60726e67 de ad be ef | ... ``` -------------------------------- ### Add Cortex HDR Interface Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/cortex_examples.rst Adds an interface with a direct TCP/IP socket connection to a Cortex HDR modem at a specified IP address. ```csh csp add cortex_hdr ``` -------------------------------- ### Add Cortex CRT Interface Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/cortex_examples.rst Adds an interface with a direct TCP/IP socket connection to a Cortex CRT modem at a specified IP address. ```csh csp add cortex_crt ``` -------------------------------- ### Set Default Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Sets the default or environment node for most commands. Providing the node as a positional argument when running a command overrides this default. ```csh node 6 ``` -------------------------------- ### Add Leafspace MQTT Interface Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/cortex_examples.rst Adds an MQTT interface to the Leafspace ground segment operators MQTT broker. Requires Leafspace credentials and the satellite's NORADID. The interface is assigned a node address. ```csh csp add leafspace -u -w 589 25667 mqtt.leaf.space ``` -------------------------------- ### Add Remote Parameter to List Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Adds a remote parameter to a list without downloading it from the device. This command requires specifying the parameter name, type, and value. ```csh host>6> list add -c "FRAM+C" -m "Rt" hk_next_timestamp 154 uint32 ``` -------------------------------- ### Request Interface Statistics Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Remotely requests interface statistics for a specified interface, such as CAN0. For a combined overview, use the 'csp_print_cnf' parameter. ```csh host>6> ifstat CAN0 | CAN0 tx: 75840 rx: 81818 txe: 00000 rxe: 00000 | drop: 00000 autherr: 00000 frame: 06176 | txb: 3265270 rxb: 3321911 ``` -------------------------------- ### Peek Remote Memory Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Reads a specified number of bytes from a memory address on a remote node. This command is useful for inspecting memory contents. It retrieves less than 200 bytes. ```csh host>6> peek 0x30001000 16 | Peek at address 0x30001000 len 16 | 0x7ffc60726e67 48 45 4c 4c 4f 20 57 4f 52 4c 44 0a 00 00 00 00 | HELLO WORLD..... ``` -------------------------------- ### Use an environment variable in a CSH command Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/environment_variables.rst Environment variables can be used within other commands by enclosing their names in $(...). This allows for dynamic command execution based on stored values. ```csh watch -n 5 ping $(MY_VARIABLE) ``` -------------------------------- ### Set a Single Parameter on Remote Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Modifies the value of a specific parameter on a remote node. Ensure you provide the correct parameter name and value. ```csh host>6> set gndwdt 10000 | 1:6 gndwdt = 10000 uint32[1] ``` -------------------------------- ### Ping a Remote Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Sends a ping request to a remote node and waits for a reply. This is useful for checking network connectivity. ```csh host>6> ping | Ping node 6 size 1 timeout 1000: Reply in 1 [ms] ``` -------------------------------- ### Reboot a Remote Node Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/Operating_Instructions/command_examples.rst Reboots a specified remote node. Use with caution as it will interrupt current operations. ```csh host>6> reboot ``` -------------------------------- ### Power Cycle OBC Module Source: https://github.com/spaceinventor/csh/blob/master/doc/MAN/APMs/csh_si.rst Remotely powers a registered OBC module on and off. The 'obc' reference can be omitted if the node is preselected. ```csh host>> power on obc host>> sleep 1000 host>> ping obc | Ping node 6 size 1 timeout 1000: Reply in 1 [ms] host>> power off obc ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.