Version 2.8 Release Notes
Version 2.8.0 (August 30, 2025)
Marked the use of python 3.8 as deprecated
Support for
opNavModeflag within vizSupport was removed, as its deprecation period endedDemo video was added to scenarioQuadMaps documentation
Pinned python dependencies to avoid issues with new package versions.
Updated C++ Module: vscmgStateEffector documentation.
Added a new C++ Module: vscmgGimbalRateServo module that computes the VSCMG wheel motor torque and gimbal motor torque.
Added a new C++ Module: vscmgVelocitySteering module that computes the desired VSCMG wheel accelerations and gimbal rates.
Added a new github workflow job
canaryto routinely check the compatibility of latest python dependencies with python 3.13 on the latest mac-os.Deprecated C++ Module: spacecraftSystem. It was never completed and we have other ways to connect spacecraft components
Allow event conditions and effects to be defined by functions. This is preferred over the old string-based method, as it enables the use of arbitrary packages and objects in events and allows for event code to be parsed by IDE tools.
Add a sun message input and
theta_solarthreshold to C++ Module: spacecraftLocation.Fixed an issue where DynamicObject classes computed time steps by differencing double values rather than
uint64_tvalues in nanoseconds. This could cause micro drifts in the integration process. See Issue 993 for more info on this issue. Now the time step is computed usinguint64_ttime values and then converted to a double.Enhance how
uint64_tvalues are converted to doubles. BSK now warns if the time value is large enough such that the conversion method has a loss of precision in this process.Support including an eclipse message in C++ Module: spacecraftLocation to more accurately determine illumination.
Fixed an issue where the C++ Module: spaceToGroundTransmitter would check for the amount of data remaining in a different partition than the one being downlinked.
Fixed an issue where a high baud rate prevented the C++ Module: spaceToGroundTransmitter from downlinking data from the C++ Module: simpleStorageUnit or C++ Module: partitionedStorageUnit.
Updated default Windows compiler to be
Visual Studio 17 2022. The CI test build now occurs on Windows 11.Warning
If you still want to use Visual Studio 16, then be sure to set the generator using
python conanfile.py --generator "Visual Studio 16 2019Improve reading speed of recorded messages by about 75%.
Added support for Vizard 2.3.0
Adds support for updating noise parameters in C++ Module: simpleNav during simulation
Redirected MuJoCo errors and warnings to bskLogging instead of printing to file.
Update vizSupport for the
saveFileargument to take an explicit file path and file name and not auto-generate the_VizFilessub-folder. This provides the user more direct control where and how the simulation data is saved.Support calling
unsubscribeon input messages.Fixed an issue where the C Module: forceTorqueThrForceMapping module’s Reset() function did not zero all thruster settings correctly.
Updated
canaryworkflow to run on all pull requests to the develop branch, providing feedback on compatibility with latest dependencies.Added links to published paper in C Module: oneAxisSolarArrayPoint documentation.
Converted RW data structures in
reactionWheelStateEffectorto shared pointers instead of raw pointers.The
BSKLoggernow raises aBasiliskError(Basilisk.architecture.bskLogging.BasiliskError) if something is logged atBSK_ERRORlevel. Certain errors are reduced toBSK_WARNINGto reflect the new behavior.Improve reading speed of recorded messages by 1-4 orders of magnitude.
Warning
This is a breaking change, see list of known issues for details. Please report any issues (at buildtime or runtime) with recorders for custom payloads.
Support initialization of fields in the constructor of message payloads (in Python).
Improve string representation of message payloads (in Python).
Add support for pretty-printing message payloads (in Python).
Updated documentation and all scenarios to use new payload constructor format.
Add scenarioBranchingPanels, which showcases a branching solar array configuration, staged deployment, and joint locking when panels are stowed or fully deployed.
Bugfix: joint velocity not being reported correctly in
MJScalarJoint.Add
addJointSingleActuatortoMJScene. This can be used to add actuators acting on joints to a MuJoCo-based simulation (e.g. motors that produce torque).Add method to scalar joints class to get to the equality constraint object that can be used to constrain the joint to a specific value (
MJScalarJoint::getConstrainedEquality).Add methods
setSolrefandsetSolimptoMJEqualityto enable control of the solver parameters that control how the equalities are enforced in MuJoCo.Add PID controller models for
MJScene. Currently implementedJointPIDController, which can read the state of a joint and output a torque to act on said joint to achieve a desired angle and angular velocity.