Guidelines

Features

All LibreCube projects share the following main features:

  • Open Source: Everything is and stays free and open source.
  • Modular: Each project is a small building block for your mission, with a focus on re-usability.
  • Compatible: All interfaces are standardized, with a focus on re-placeability.

Open Source

We strictly use free and open source software (FOSS) tools for development and operation of LibreCube elements. Only in this way, really everyone has the freedom to contribute.

Standards

The use of standards is important for reliability, maintainability, and compatibility among LibreCube devices and space missions in general. LibreCube recommends the use of ECSS [www.ecss.nl] and CCSDS [www.ccsds.org] standards where feasible, because these standards are open and freely available to anyone.

Repository Structure

Each system element project as listed in the projects page is contained in a repository that holds all the design information plus all information needed for its production and utilization. This includes CAD files, schematics, source codes, PCB files, documents, datasheets, and so on. The repositories are commonly structured as shown in the tables below.

Hardware (+ Firmware) Projects

Folder Subfolder Content
. License and readme file
design
datasheets Third-party datasheets of components used, such as ICs
electrical Schematics (circuit diagrams) and PCB layouts
mechanical CAD models and drawings
firmware Source code of embedded firmware
documentation
. User manual and developer manual
pictures Photographs of the project and/or screenshots
figures Any generated graphics for the manuals or other purposes
production
bom Bill of materials
electrical Gerber files for PCB production
mechanical CAD files for production or 3d printing
firmware Binary file of compiled source code
verification
Documents about conducted tests/verification, and/or software programs for checkout and testing

Software Projects

Folder Subfolder Content
. License and readme file
design
source Source code of software application
documentation
. User manual and developer manual
pictures Photographs of the project and/or screenshots
figures Any generated graphics for the manuals or other purposes
production
release-xxx Executable file and libraries for specific target platform
verification
Documents about conducted tests/verification, and/or software programs for checkout and testing

Naming

Repositories are named using the pattern LC-XXYY, where XX specifies the system element category and YY is a consecutive (unique) number within that category. The system element categories are:

  • 10 payload
  • 20 platform
    • 21 structure
    • 22 power
    • 23 communication
    • 24 thermal
    • 25 processing
    • 26 attitude and orbit
    • 27 propulsion
    • 28 flight software
  • 30 ground support equipment
    • 31 egse (electrical ground support equipment)
    • 32 mgse (mechanical ground support equipment)
  • 40 ground segment
    • 41 ground station systems
    • 42 data systems
    • 43 application software

Versioning

The repositories have tags that define specific versions (that is, snapshots) of the project, such as “v1.0” for the first release (which reads as Issue 1, Revision 0). Normally, any document of the repository, such as the user manual, keeps in line with the issue number but retains its own revision number. For example, a project version may be v2.3, with a user manual at issue 2, revision 5.