Skip to content

Conversation

LeStarch
Copy link
Contributor

@LeStarch LeStarch commented Oct 6, 2025

Description

This adds the LoRa radio into the topology. Additionally, it adds ComDelay and ComAggregator (fprime version bump) to ensure the radio can send/receive.

Related Issues/Tickets

Close #37.
Resolves #48.

How Has This Been Tested?

Ran radio pair. UTs.

  • Unit tests
  • Integration tests
  • Z Tests
  • Manual testing (describe steps)
    • Set up radio pair, flowed data, decreased ComDelay divider via command.

Checklist

  • Written detailed sdd with requirements, channels, ports, commands, telemetry defined and correctly formatted and spelled
  • Have written relevant integration tests and have documented them in the sdd
  • Have done a code review with
  • Have tested this PR on every supported board with correct board definitions

Further Notes / Considerations

@LeStarch LeStarch requested a review from ineskhou October 6, 2025 03:18
@Mikefly123
Copy link
Contributor

I think I accidentally broke the build here by changing the submodules when I was trying to appease the linter. Working on a fix...

@Mikefly123 Mikefly123 mentioned this pull request Oct 6, 2025
8 tasks
@Mikefly123
Copy link
Contributor

This is strange, it looks like for some reason just running the linter is blowing up the build. I'm going to try re-runing the action on the working commit. Here is the old run for safe keeping: https://github.com/Open-Source-Space-Foundation/proves-core-reference/actions/runs/18269024675/job/52008249263

@ineskhou ineskhou moved this to In review in v0.1-v0.3 Oct 6, 2025
@Mikefly123 Mikefly123 added the enhancement New feature or request label Oct 7, 2025
@ineskhou ineskhou removed their assignment Oct 8, 2025
@nateinaction nateinaction mentioned this pull request Oct 11, 2025
ineskhou
ineskhou previously approved these changes Oct 13, 2025
Copy link
Contributor

@ineskhou ineskhou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Runs locally and on integrations. Maybe up the ComQueue a bit so it doesn't keep overflowing, but everything looks great!

nateinaction
nateinaction previously approved these changes Oct 13, 2025
Copy link
Contributor

@Mikefly123 Mikefly123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm going to temporarily block merging this into main until we make modifications to our integration test setup at the lab to make it "safe" to allow the radio to transmit unattended.

Currently my understanding is this PR makes all future deployments of the core reference automagically start streaming data out over the radio in the form of the Beacon. The pysquared radio manager allows us to block transmissions through the config: license check.

            if self._radio_config.license == "":
                self._log.warning("Radio send attempt failed: Not licensed.")
                return False

Not having this functionality has two potential issues:

  1. It may unintentionally run afoul of FCC radio frequency regulations by spewing out transmissions in an manner that is not consistent with the developer's licensing privileges
  2. Transmitting without having an antenna, attenuator, or dummy load attached will cause damage to the radio modules being used for testing.

I'll type out some ideas about what we can do about these things in #59. Off the dome though, shortlist of tasks we'll want to prioritize to get this into main:

  • Update the deathstar integration test setup to pipe the radio output into an attenuated receiver pair.
  • Ensure all developers have proper antenna / load setups so we don't accidentally start breaking radios
  • Add a silence functionality either through another flow control component or a port on the LoRa driver that will place the radio into a receive only mode until requested to leave it. This doesn't have to happen in this PR, since it was out of the scope of the original SDD, but should happen as soon as possible

@LeStarch LeStarch dismissed stale reviews from nateinaction and ineskhou via ce40252 October 17, 2025 18:33
@ineskhou
Copy link
Contributor

Ran a super cool test with Moises, he controlled the satellite from his computer, I listened with the cube

image

Copy link
Collaborator

@moisesmata moisesmata left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! @LeStarch 🔥

Works on mine:

Image

(Theses are the commands sent from the ground station, @ineskhou will attach the events received on the FC Board)

Copy link
Contributor

@Mikefly123 Mikefly123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Live from New York City! LGTM! 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: In review

Development

Successfully merging this pull request may close these issues.

Radio and beaconing Integration Tests Failing When Merged with Radio

5 participants