Skip to content

Feature add new hardware - #52

Merged
jackbogatz merged 241 commits into
devfrom
feature-AddNewHardware
May 9, 2026
Merged

Feature add new hardware#52
jackbogatz merged 241 commits into
devfrom
feature-AddNewHardware

Conversation

@jackbogatz

Copy link
Copy Markdown
Contributor

No description provided.

gabekole and others added 30 commits October 16, 2024 13:23
* Added Barometer class

* Added Barometer driver

* Add class and function declarations for IMU

* Added hardware testing class

* Add imu class

* add acceleration function definition

* add default constructor

* removed unneeded controller files

* add example main file

* write tvc header file

* add tvc source file

* Merge state management and virtual hardware into dev (#10)

* Create igniter class

* 🚧 prototype state header file

* Prototype state class

* Add namespace references to state classes

* Add return to state changes

* 😄 preliminary test working for state switchs

* Add hardware parameter passing to state update method

* Fix typo in tvc handler

* Add todo comments

* Write Controller class

* Fixed build errors

* update readme

* Layout Navigation class (#12)

* Add empty

* Add eigen library

* Update temporary function

* Add boilerplate for navigation code

* Add todo coments

* Update navigation class and moding (#13)

* Start integration

* Modify controller and nagivation to store references

* track delta time in state changes

* Rename state class pass variables to update launch

* Write lanuch update

* Add private variable

* add additional phases

* updated naming and boiler plate functions

* General clean up and TODO comment additions

* Fix namespace typo

* Port telemetry testing module. (#15)

* update cmake, telem

* write to file

* flush buffer immediately

* update main with prints

* remove phase return temp

* add ignition types

* Nav class (#14)

* Coded everything but still need to comment and understand the moving average bit

* State Estimation completed

* Changed the static variables state and d_theta_queue_reckon to be private variables instead and added a reset function which we call when we need start another test to reset stateMat, count, and d_theta_queue_reckon

* Made the code for Update_Navigation cleaner by add
ing helper methods

* Fixed rolling average summing error

* fixed a summing error in computeAngularRollingAverage

* Fixed Matrix-Vector multiplication

* Added Ground and Start Launch functionality (#18)

* initial commit

* Added telemetry

* Added telemetry command

* Worked on UpdateIdle and UpdateStartLaunch

* Added comments

* Added comments

* update function name and description comment.

* Use singleton telemetry. Add SendCommand method.

* Initialize vectors to fix segmentation fault.

* Fix telemetry timing

---------

Co-authored-by: Gabe Koleszar <72774655+gabekole@users.noreply.github.com>

* Abort handling (#19)

* added comments

* initial commit

* added comments

* small updates

* added placeholder variables

* if statement for mag comparison to check terminate

* added more variables,made the if else condition.

* added freefall mode

* Made Getheight()  and finished abort case.

* further cleanup

* spacing stuff

* added start land

---------

Co-authored-by: AbhiG7 <43866181+AbhiG7@users.noreply.github.com>
Co-authored-by: AbhiG7 <abhigunti@yahoo.com>

* Update launch temp (#21)

* started update_Launch

* Added comments to Controller class methods

* Added HandledAbort to Controller class

* fixed log text file

---------

Co-authored-by: AbhiG7 <43866181+AbhiG7@users.noreply.github.com>

* Added hardware interfaces for sensors, ignition, tvc, and radio (#22)

* Removed logs

* Fixed mode errors

* Builds in debug

* Fixed barometer reading

* All sensor classes implemented

* Add pigpio

* Added ignition hardware support

* Implemented servos in tvc class

* Added startup.sh

* Added hardware telemetry

* Update telem, move hardware includes

---------

Co-authored-by: Caleb Heydon <caleb@caleb.engineer>
Co-authored-by: Gabe Koleszar <72774655+gabekole@users.noreply.github.com>

* Update Telemetry.cpp

* Update Telemetry.cpp

* Add tvc test mode

* Remove files

* fix tvc writing angle

* Update Mode transitions (#23)

* Added calibration phase to Mode

* added updatesafe
timer for rocket to transition into safe mode

* Added import method in calibration so
controller_gain _times and controller_gains have values. Also
added a time paramater in update_controller so that caluclateK works
properly. Also changed the starting mode enum in Main to Calibration
instead of Idle

---------

Co-authored-by: jackbogatz <114309871+jackbogatz@users.noreply.github.com>
Co-authored-by: gabekole <gabriel.koleszar@uconn.edu>

* Mission constants feature (#24)

* added mission constants file

* udated nav constants

* Trim code

* Modify calibration mode to separate centering and start of navigation

* add file writing

* add comment

* add paths to mission constants

* Added k_matrix.csv to sr\

* added kmatrix.csv ro src

* Updated K Matrix code

* Put files ipaths nto variables

* Update

* Update loop time

* Fix constant use

* add state prints

* add full state printign

* Readd logs, center tvc on update launch

* constants

* Fixed math errors in Navigation

* updated ci file

* added eigen lib to cicd install

* Updateland and UpdateLaunch Finished (#26)

* finish update land method in the controller class

* updated mode::updatesafemode to immediately go to terminate and exit the loop

* Updated for stability test (#28)

* Added ignite code in Mode in updateLaunch and update freeFall. Also added code to detect when to switch to Safe mode

* Added Ignition class in hardwareTest

* Added some changes to navigation class and mode

* Finished integrating commands for mode

* Added comments to mode changes

* Forgot to build, All good now

---------

Co-authored-by: Gabe Koleszar <72774655+gabekole@users.noreply.github.com>

* Fix build errors / typos

* Update hardware variables

* Updated tvc gpio pins in Main.cpp

* Update to code used in last test (#29)

* update RF

* Updated for stability test (#28)

* Added ignite code in Mode in updateLaunch and update freeFall. Also added code to detect when to switch to Safe mode

* Added Ignition class in hardwareTest

* Added some changes to navigation class and mode

* Finished integrating commands for mode

* Added comments to mode changes

* Forgot to build, All good now

---------

Co-authored-by: Gabe Koleszar <72774655+gabekole@users.noreply.github.com>

* Update rf

* Fix build errors / typos

* Update hardware variables

* Update run telem calls

* Update telemetry

* Add polling commands functionality

* Add testing sequence for tvc

* Fix test sequence

* Use tvc math func for test

* Remove comment

* Update test version

* Center tvc after test

* a

* Delete old k matrix

---------

Co-authored-by: jackbogatz <114309871+jackbogatz@users.noreply.github.com>

* Fixes

* Added line in Telemetry to output current k matrix

* Added K matrix to telemtry output

* Fixed flush

* Update README.md

* Update README.md

* Update README.md

* Command reading

* Update README.md

* Update README.md

* Update device file locations

* Update README.md

* Update README.md

* Use real rf

* Use rf for commands

* Bug

* Update README.md

* Update mode

* Add debug print

* Update reads

* Bug

* Fix rf frame send

* Update README.md

* Update README.md

* Update README.md

* Configure port, command, new moding

* Fix prints

* Update reading

* Flush input buffer t oget rid of leading zeros

* Add Simulation mode to flight software (#32)

* Prototype

* Simplify

* Reorder variables

* Update

* Remove accdient files

* Update README.md

* Update gtest.yml

* Update gtest.yml

* Update README.md

* Update README.md

* Update README.md

* Sil implementation (#33)

* Prototype

* Simplify

* Reorder variables

* Update

* Remove accdient files

* Add more prints to udpclient sim

* Update README.md

* Name change

* Remove tvc hardware from controller

* Refactor

* Add print

* Add calibration mode

* Fix center angle tvc set

* pins

* Update pin

* Changed variable and function names (#34)

* Fix names

* Fix prints

* Typo

* Fix typo

* Update timing code

* Centralize command parsing

* Fix rf bug

* Add prints

* Fix timing

* Fixed Landing Calculations

* Fix k iteration

* Fixed Controller Iterations

---------

Co-authored-by: Caleb Heydon <caleb.heydon@gmail.com>
Co-authored-by: nlenny5 <145295179+nlenny5@users.noreply.github.com>
Co-authored-by: bweber0 <145295087+bweber0@users.noreply.github.com>
Co-authored-by: AbhiG7 <abhigunti@yahoo.com>
Co-authored-by: AbhiG7 <43866181+AbhiG7@users.noreply.github.com>
Co-authored-by: jackbogatz <114309871+jackbogatz@users.noreply.github.com>
Co-authored-by: ausam08 <145295086+ausam08@users.noreply.github.com>
Co-authored-by: Caleb Heydon <caleb@caleb.engineer>
Co-authored-by: UCONN AIAA Desktop <aiaauconn@gmail.com>
Co-authored-by: HLPRED <Harrisonperone@gmail.com>
…opulsion support; incorporated documentation links to the relevant doc files
…objects instead of pointers, and moved lquid telemetry into already defined telemtry method
Navigation builds and runs without errors. However, FSW is not getting sensor data from the simulation.
@jackbogatz
jackbogatz merged commit fce6f20 into dev May 9, 2026
2 checks passed
@jackbogatz
jackbogatz deleted the feature-AddNewHardware branch May 9, 2026 01:37
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.

5 participants