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

Implementation of operational system via SBD #9

Closed
7 tasks done
JimCircadian opened this issue Sep 11, 2023 · 9 comments
Closed
7 tasks done

Implementation of operational system via SBD #9

JimCircadian opened this issue Sep 11, 2023 · 9 comments
Assignees

Comments

@JimCircadian
Copy link
Member

JimCircadian commented Sep 11, 2023

@JimCircadian JimCircadian changed the title Interacting Cambridge deployment operating via SBD Interacting deployment operating via SBD Sep 11, 2023
@JimCircadian JimCircadian changed the title Interacting deployment operating via SBD Implementation of operational system via SBD Sep 11, 2023
@JimCircadian JimCircadian self-assigned this Sep 29, 2023
@JimCircadian
Copy link
Member Author

JimCircadian commented Sep 29, 2023

Basic update to blank OS, looking at 4.9 installation medium and associated caveats and getting the provisioning mechanism up and running. 4.9 is likely a sensible move, there is an option on 5.10 but this doesn't appear as well founded as 4.9 and is more recent, though will offer longer term support so should be attempted if 4.9 works.

@JimCircadian
Copy link
Member Author

Starting with 4.9

  1. Setting up network and SSH
  2. APT sources as archive.debian.org, apt-get update

@JimCircadian
Copy link
Member Author

The image replicator processing should be used once the build is finished to flash the eMMC.

@JimCircadian
Copy link
Member Author

pyremotenode and apscheduler (dependency) installed successfully using the ansible provisioning.

Sent SBD message to test that the setup is still working:

AT
OK
AT+CSQ?
+CSQ:2

000

OK
AT+SBDWT
READY
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32
0

OK
AT+SBDIX
+SBDIX: 34, 0, 2, 0, 0, 0

OK
AT+SBDD0
0

OK

Awaiting email

@JimCircadian
Copy link
Member Author

JimCircadian commented Oct 10, 2023

Had to get the IMEI set up correctly, SBD now working. RUDICS also verified whilst I was at it, just to make sure the internet endpoint was still available to the ISU:

ATD<<number>>
+CR: REL ASYNC

CONNECT 9600

OK

@JimCircadian
Copy link
Member Author

Debian wheezy (original) build as opposed to squeeze is required. The pyremotenode installation on wheezy fails due to the age of the SSL certificates on the system.

However, squeeze requires substantial changes to the hardware interfacing for pyremotenode, #17, so the minimal viable installation is working on wheezy as well.

@JimCircadian
Copy link
Member Author

Command running, producing configuration via the ansible setup at BAS for pyremotenode basic functionality:

run_pyremotenode --help
usage: run_pyremotenode [-h] [--log-dir LOG_DIR] [--start-when-fail]
                        [--pidfile PIDFILE] [--no-pidfile] [--no-daemon]
                        [--verbose]
                        config

positional arguments:
  config                Configuration to use for running remote node

optional arguments:
  -h, --help            show this help message and exit
  --log-dir LOG_DIR, -l LOG_DIR
                        Log directory
  --start-when-fail, -s
                        Start even if initial monitor checks fail
  --pidfile PIDFILE, -p PIDFILE
                        PID file to manage for service operations
  --no-pidfile, -np     Don't check or create PID file
  --no-daemon, -n       Do not daemon
  --verbose, -v         Debugging information

@JimCircadian
Copy link
Member Author

A basic configuration for the LPM:

[general]
housekeeping_sleep= 600

[actions]
;------------ WAKEUP
id1=        wakeup_script
task1=      WakeupTask
onboot1=    1
args1=
    max_gap=    60
ok1=        SBDSender
warn1=      SBDSender
crit1=      SBDSender

id2=        check_free_storage_root
task2=      CheckCommand
time2=      1145
args2=
    path=       check_free_storage -w 70 -c 85 /
warn2=      SBDSender
crit2=      SBDSender

id3=       check_free_storage_data
task3=     CheckCommand
time3=     1145
args3=
    path=       check_free_storage -w 70 -c 85 /data
warn3=      SBDSender
crit3=      SBDSender

;------------ LPM

id4=        process_lpm_files
task4=      RunCommand
time4=      
args4=
    path=       su - -c "/home/lpm/process_files.sh" lpm
waiton4=    check_free_storage_data

;------------ DAILY SLEEP

; Not required, LPM under external control

;------------ EMERGENCY SLEEP

; Not required, LPM under external control

[ModemConnection]
serial_port= /dev/ttySP1
serial_timeout= 2
serial_baud= 9600
modem_wait= 300
msg_timeout= 20
msg_wait_period= 1
sbd_xfer_timeout= 60
; offline_start= 1155
; offline_end= 1605
grace_period= 2

@JimCircadian
Copy link
Member Author

Two versions created: ts7400-lx26-lpm and ts7400-lx49-lpm as SD based images for deployment in Halley.

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