How ivankornienko31/orbicraft_programs works
Purpose and Scope
This is a C repository for controlling and validating hardware subsystems in the OrbiCraft satellite construction kit. The checked-in code is presently centered on standalone subsystem test executables; the README also describes planned/expected satellite behaviors such as stabilization, imaging, and orientation, but no corresponding source files appear in this tree.
Entry Points and Execution Model
Each *_test.c file is an independent C program and likely build/run entry point for one hardware-validation scenario. There is no application dispatcher, build manifest, service layer, or shared source implementation in the provided tree. Tests directly exercise physical kit components through the common API header.
Paths:
• Sensor tests/Camera_and_HF_test.c
• Sensor tests/Motor_test.c
• Sensor tests/UHF_test.c
Hardware API Boundary
libschsat.h is the repository’s central integration boundary: it declares the functions used to operate OrbiCraft subsystems. Test programs should depend on this header rather than on each other. Its implementation, library linkage details, and target runtime are external to the repository.
Path:
• libschsat.h
Attitude and Environmental-Sensing Validation
Sensor-oriented entry points validate measurements used by satellite orientation and environmental awareness. The magnetometer and solar-sensor programs are separate operational modes; the multi-sensor solar test is distinct from the single-sensor test, implying support for checking individual channels versus a sensor set.
Paths:
• Sensor tests/Magn_test.c
• Sensor tests/Sun Sensor Tests/Sun_sensor_test.c
• Sensor tests/Sun Sensor Tests/Some_sun_sensors_test.c
Propulsion / Actuation Validation
The motor test is the actuator-facing boundary. It should be treated as hardware-affecting execution rather than a safe unit test: it validates commands issued through the shared subsystem API against the physical engine/motor.
Path:
• Sensor tests/Motor_test.c
Imaging and Radio Communications Flow
The camera/HF program represents a composed device flow: acquire an image through the camera subsystem, then send it through the high-frequency transmitter. UHF has its own direct transceiver validation entry point. These programs bridge onboard data acquisition to external RF communications.
Paths:
• Sensor tests/Camera_and_HF_test.c
• Sensor tests/UHF_test.c
Additional Sensor / Device Checks
The remaining test executable covers the “Hyro” subsystem (the exact device meaning is not established by the supplied README). It follows the same standalone hardware-test architecture and common-header dependency model.
Path:
• Sensor tests/Hyro_test.c
Runtime, Infrastructure, and External Dependencies
The runtime is native C on an environment capable of accessing OrbiCraft hardware. Required subsystem drivers/libraries are implied by libschsat.h but are not vendored here. The primary external reference is the OrbiCraft documentation site, http://orbicraft.sputnix.ru/doku.php; the README cautions that its API descriptions and availability may be unreliable. No cloud services, databases, web runtime, CI configuration, or deployment infrastructure are represented in the tree.
Main entry points: libschsat.h libschsat API · Magn_test.c Magnetometer test · Sun_sensor_test.c Sun sensor test · Some_sun_sensors_test.c Multi-sun-sensor test
Components 14
Sensor validation
Standalone programs for sensing and orientation-related checks.
- Magnetometer test
Sensor tests/Magn_test.c - Sun sensor test · Validates one solar-sensor channel.
Sensor tests/Sun Sensor Tests/Sun_sensor_test.c - Multi-sun-sensor test · Validates a set of solar sensors.
Sensor tests/Sun Sensor Tests/Some_sun_sensors_test.c - Hyro test · Validates the unspecified Hyro subsystem.
Sensor tests/Hyro_test.c
Actuation and communications
Standalone programs that command or bridge physical devices.
- Motor test · Hardware-affecting actuator validation.
Sensor tests/Motor_test.c - Camera and HF test · Acquires an image and transmits it over HF.
Sensor tests/Camera_and_HF_test.c - UHF test · Validates the UHF transceiver directly.
Sensor tests/UHF_test.c
External hardware boundary
Drivers and physical kit components are outside this repository.
- OrbiCraft drivers · Library implementation and linkage are not vendored.
- Magnetometer and solar sensors
- Motor subsystem
- Camera and HF transmitter
- UHF transceiver
- Hyro subsystem
Other components
- libschsat API · Shared subsystem-control API boundary.
libschsat.h
Connections 13
- Magnetometer test → libschsat API: uses
- Sun sensor test → libschsat API: uses
- Multi-sun-sensor test → libschsat API: uses
- Hyro test → libschsat API: uses
- Motor test → libschsat API: uses
- Camera and HF test → libschsat API: uses
- UHF test → libschsat API: uses
- libschsat API → OrbiCraft drivers: implemented by
- OrbiCraft drivers → Magnetometer and solar sensors: accesses
- OrbiCraft drivers → Motor subsystem: commands
- OrbiCraft drivers → Camera and HF transmitter: acquires and transmits
- OrbiCraft drivers → UHF transceiver: accesses
- OrbiCraft drivers → Hyro subsystem: accesses