Skip to content

AP_OpticalFlow:Add upflow Tx(T1,T1plus,T2 .e.g) optical flow laser two-in-one modules and lc30x(302-8b,306) modules support. #29729

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

uavfly
Copy link

@uavfly uavfly commented Apr 9, 2025

Add upflow Tx(T1,T1plus,T2 .e.g) optical flow laser two-in-one module support,fix upflow lc30x(302-3c,302-8b,306 .e.g)can't init bugs.

… support,fix upflow lc30x(302-3c,302-8b,306 .e.g)can't init bugs.
@uavfly
Copy link
Author

uavfly commented Apr 9, 2025

截图 2025-04-09 13-32-40
截图 2025-04-09 13-33-40
The optical flow and laser data of the module are transmitted back through MavLink on the QGC ground station.

@uavfly uavfly changed the title Add upflow Tx(T1,T1plus,T2 .e.g) optical flow laser two-in-one module… Add upflow Tx(T1,T1plus,T2 .e.g) optical flow laser two-in-one module support,fix upflow lc30x(302-3c,302-8b,306 .e.g)can't init bugs. Apr 9, 2025
@uavfly
Copy link
Author

uavfly commented Apr 9, 2025

The system I use is ubuntu22.04, and the flight control board I use is pixhawk6c. After modification, I can use optical flow modules such as upflow T1 T1plus T2 LC302-3c LC302-8B LC306 LC307.

@uavfly
Copy link
Author

uavfly commented Apr 9, 2025

The data sheet and usage documentation of the module are in the repository organized by our company: https://github.com/Upixels-China/Upixels_Optical_flow.git

@Hwurzburg Hwurzburg added WIP WikiNeeded needs wiki update labels Apr 9, 2025
@rmackay9
Copy link
Contributor

Hi @uavfly,

Thanks for the PR!

Here's a few items that should be corrected in order to get it merged to master:

  1. Rebase on master to remove the "Merge branch" commits
  2. Squash the "fix bugs" commit into the preceding commit
  3. Update the commit titles to be prefixed with "AP_OpticalFlow: ". If you peek at our list of commits you'll see that we always prefix our commits with the subsystem or directory affected because this makes backporting easier
  4. If possible remove calls to hal.scheduler->delay()
  5. check if the big CRC table can be replaced with one of our existing crc methods in AP_Math

Thanks!

@uavfly
Copy link
Author

uavfly commented Apr 10, 2025

Hi @uavfly,

Thanks for the PR!

Here's a few items that should be corrected in order to get it merged to master:

  1. Rebase on master to remove the "Merge branch" commits
  2. Squash the "fix bugs" commit into the preceding commit
  3. Update the commit titles to be prefixed with "AP_OpticalFlow: ". If you peek at our list of commits you'll see that we always prefix our commits with the subsystem or directory affected because this makes backporting easier
  4. If possible remove calls to hal.scheduler->delay()
  5. check if the big CRC table can be replaced with one of our existing crc methods in AP_Math

Thanks!

Thank you very much for your help. I will optimize my code and correct it. But I need to clarify that the long array upflow_Sensor.cfg in the AP_SpticalFlow-UPFLOW-LC30x.cpp file is not crc, but the data that the module must send for initialization.

@uavfly
Copy link
Author

uavfly commented Apr 10, 2025

Hi @uavfly,
Thanks for the PR!
Here's a few items that should be corrected in order to get it merged to master:

  1. Rebase on master to remove the "Merge branch" commits
  2. Squash the "fix bugs" commit into the preceding commit
  3. Update the commit titles to be prefixed with "AP_OpticalFlow: ". If you peek at our list of commits you'll see that we always prefix our commits with the subsystem or directory affected because this makes backporting easier
  4. If possible remove calls to hal.scheduler->delay()
  5. check if the big CRC table can be replaced with one of our existing crc methods in AP_Math

Thanks!

Thank you very much for your help. I will optimize my code and correct it. But I need to clarify that the long array upflow_Sensor.cfg in the AP_SpticalFlow-UPFLOW-LC30x.cpp file is not crc, but the data that the module must send for initialization.

And I will write, upload, and update wiki documentation to help more people use this type of optical flow module.

@uavfly uavfly changed the title Add upflow Tx(T1,T1plus,T2 .e.g) optical flow laser two-in-one module support,fix upflow lc30x(302-3c,302-8b,306 .e.g)can't init bugs. AP_OpticalFlow:Add upflow Tx(T1,T1plus,T2 .e.g) optical flow laser two-in-one modules and lc30x(302-8b,306) modules support. Apr 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WikiNeeded needs wiki update WIP
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants