Skip to content

Conversation

@BrianJKoopman
Copy link
Member

Description

This PR makes the StarcamHelper class a subclass of the TCPInterface class, which enables error handling for the connection to the star camera.

In doing so I also split the "driver" code to a separate module, and separated the parts of the helper class that do the packing/unpacking of data sent/received to the star camera.

I didn't actually end up adding an "init" task, as I don't think we really need it in practice.

Questions

While working on this I had a question related to the data rate. @AlexManduca you said in #335 that:

the camera software should be running a program that takes these parameters and is continuously taking pictures, finding pointing solutions, and delivering packets of info to the agent via get_astrom_data() (at a cadence determined by the exposure time + the time it takes for a pointing solution to be found in software).

Can you tell me what an approximate cadence for the camera software sending data to the agent is? And what would be the fastest cadence you'd run at?

Motivation and Context

The motivation here is to make the agent robust against network dropouts between the agent and the star camera hardware.

How Has This Been Tested?

Not yet tested. @AlexManduca, it'd be great to run this version of the agent with the hardware and see if it works. If possible, testing whether the agent is able to recover from the star camera being disconnected from the network and reconnected would also be useful.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.

Just to facilitate testing and use of the TCPInterface class.
Again to facilitate testing and use of the TCPInterface class.
@BrianJKoopman BrianJKoopman requested a review from AlexManduca May 7, 2025 15:32
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

Successfully merging this pull request may close these issues.

2 participants