Skip to content
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

Support for GEPRCF745BTHD #27491

Merged
merged 4 commits into from
Aug 5, 2024
Merged

Support for GEPRCF745BTHD #27491

merged 4 commits into from
Aug 5, 2024

Conversation

YI-BOYANG
Copy link
Contributor

@YI-BOYANG YI-BOYANG commented Jul 8, 2024

This will be the GEPRC brand's first TAKER F745 BT FC with Ardupilot support. It already supports Betaflight and INAV, and the target name in BF is GEPRCF745_BT_HD.
image

Now we have completed the Ardupilot test and officially submitted the PR.

Since this is the first time to support Ardupilot, we may need some assistance, please contact me, thank you.
Email: [email protected]
discord id: yi_bo_yang
https://geprc.com/

Copy link
Collaborator

@andyp1per andyp1per left a comment

Choose a reason for hiding this comment

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

Need to squash the commits and some other things need fixing

@Hwurzburg Hwurzburg self-requested a review July 8, 2024 11:26
@Hwurzburg Hwurzburg added the WikiNeeded needs wiki update label Jul 8, 2024
@andyp1per
Copy link
Collaborator

I've cleaned this up a bit. The pictures do not have an SD card - does it have an sdcard? If not what SPI bus is the flash chip on?

@YI-BOYANG
Copy link
Contributor Author

I've cleaned this up a bit. The pictures do not have an SD card - does it have an sdcard? If not what SPI bus is the flash chip on?

Thanks to your work, it has no SD card slot, but a 512MB SD card chip on the FC, model number is CSNP4GCR01-AMW.

@andyp1per
Copy link
Collaborator

CSNP4GCR01

This is the same chip iFlight were asking about - there is no driver for this in ArduPilot at the moment. Last time I checked there was no driver in betaflight either - did this change? It's unfortunately likely to be quite a lot of work to support a completely new flash chip which I don't have time for right now.

@YI-BOYANG
Copy link
Contributor Author

CSNP4GCR01

This is the same chip iFlight were asking about - there is no driver for this in ArduPilot at the moment. Last time I checked there was no driver in betaflight either - did this change? It's unfortunately likely to be quite a lot of work to support a completely new flash chip which I don't have time for right now.

It is an SD card chip, and it is no different from an ordinary SD card in the program, but it can not be plugged in and out, and no additional drivers are required.

@andyp1per
Copy link
Collaborator

CSNP4GCR01

This is the same chip iFlight were asking about - there is no driver for this in ArduPilot at the moment. Last time I checked there was no driver in betaflight either - did this change? It's unfortunately likely to be quite a lot of work to support a completely new flash chip which I don't have time for right now.

It is an SD card chip, and it is no different from an ordinary SD card in the program, but it can not be plugged in and out, and no additional drivers are required.

Ok, did it seem to be working with this firmware?

@YI-BOYANG
Copy link
Contributor Author

CSNP4GCR01

This is the same chip iFlight were asking about - there is no driver for this in ArduPilot at the moment. Last time I checked there was no driver in betaflight either - did this change? It's unfortunately likely to be quite a lot of work to support a completely new flash chip which I don't have time for right now.

It is an SD card chip, and it is no different from an ordinary SD card in the program, but it can not be plugged in and out, and no additional drivers are required.

Ok, did it seem to be working with this firmware?

Yes, it can be recognized as an SD card in Ardupilot, Betafight, INAV.

@andyp1per
Copy link
Collaborator

Ok, I have had another go at the DMA allocation on this - its extremely hard because its an F7 - and thus very inflexible - but also because you are using 4 SPI buses which takes up a lot of DMA channels. Are you able to test what I have here to see how well it works? I'm particularly interested in the bi-directional dshot allocation

libraries/AP_HAL_ChibiOS/hwdef/GEPRCF745BTHD/defaults.parm Outdated Show resolved Hide resolved
libraries/AP_HAL_ChibiOS/hwdef/GEPRCF745BTHD/hwdef.dat Outdated Show resolved Hide resolved
libraries/AP_HAL_ChibiOS/hwdef/GEPRCF745BTHD/hwdef.dat Outdated Show resolved Hide resolved
libraries/AP_HAL_ChibiOS/hwdef/GEPRCF745BTHD/README.md Outdated Show resolved Hide resolved
libraries/AP_HAL_ChibiOS/hwdef/GEPRCF745BTHD/README.md Outdated Show resolved Hide resolved
libraries/AP_HAL_ChibiOS/hwdef/GEPRCF745BTHD/README.md Outdated Show resolved Hide resolved
@andyp1per andyp1per force-pushed the master branch 3 times, most recently from d873a7e to 934449d Compare July 20, 2024 14:45
@andyp1per
Copy link
Collaborator

@YI-BOYANG can you answer the question about RSSI and let me know the results of your testing on the updated firmware?

@YI-BOYANG
Copy link
Contributor Author

@YI-BOYANG can you answer the question about RSSI and let me know the results of your testing on the updated firmware?

RSSI_ADC does not lead out on the board, you can delete it. I am testing your updated firmware, please wait for my test result.

@YI-BOYANG
Copy link
Contributor Author

@andyp1per @Hwurzburg @peterbarker After initial testing, the modified code can run. However, after modifying the LED code, it will become a steady state after passing the self-test, and it will be in a blinking state after completing the self-test before modification.

@YI-BOYANG YI-BOYANG closed this Jul 26, 2024
@YI-BOYANG YI-BOYANG reopened this Jul 26, 2024
@andyp1per
Copy link
Collaborator

@andyp1per @Hwurzburg @peterbarker After initial testing, the modified code can run. However, after modifying the LED code, it will become a steady state after passing the self-test, and it will be in a blinking state after completing the self-test before modification.

So are you able to connect to the board? If so I am pretty sure I know what the LED issue is

@YI-BOYANG
Copy link
Contributor Author

@andyp1per @Hwurzburg @peterbarker After initial testing, the modified code can run. However, after modifying the LED code, it will become a steady state after passing the self-test, and it will be in a blinking state after completing the self-test before modification.

So are you able to connect to the board? If so I am pretty sure I know what the LED issue is

It can be connected to a computer, and we've done some flight tests.

@andyp1per
Copy link
Collaborator

It can be connected to a computer, and we've done some flight tests.

Ok I have pushed a fix - please can you try it?

Note that the board id has changed because the one you were using has now been taken, so you will need to reflash the bootloader

@YI-BOYANG
Copy link
Contributor Author

It can be connected to a computer, and we've done some flight tests.

Ok I have pushed a fix - please can you try it?

Note that the board id has changed because the one you were using has now been taken, so you will need to reflash the bootloader
Okay, I'll get back to you after I retest it.

@andyp1per
Copy link
Collaborator

@YI-BOYANG which exact baro does this board have?

@YI-BOYANG
Copy link
Contributor Author

@YI-BOYANG which exact baro does this board have?

The board carries a BMP280. We have some GPS products with integrated DPS310 or MS5611 barometers. The FC can also be tested using an integrated barometer in GPS.
https://geprc.com/product/gep-m1025-series-gps-module/

@andyp1per
Copy link
Collaborator

The board carries a BMP280. We have some GPS products with integrated DPS310 or MS5611 barometers. The FC can also be tested using an integrated barometer in GPS.
https://geprc.com/product/gep-m1025-series-gps-module/

We generally do not advise to use external Baro - good GPS placement is usually bad Baro placement. I would advise that you only enable the driver for the BMP280 if you agree

@YI-BOYANG
Copy link
Contributor Author

The board carries a BMP280. We have some GPS products with integrated DPS310 or MS5611 barometers. The FC can also be tested using an integrated barometer in GPS.
https://geprc.com/product/gep-m1025-series-gps-module/

We generally do not advise to use external Baro - good GPS placement is usually bad Baro placement. I would advise that you only enable the driver for the BMP280 if you agree

Some changes have been made to the barometer on our GPS to make it stable and have more options from the user's point of view, so keep the MS5611 and DPS310 drivers if you can.

@andyp1per
Copy link
Collaborator

Some changes have been made to the barometer on our GPS to make it stable and have more options from the user's point of view, so keep the MS5611 and DPS310 drivers if you can.

Ok I will leave it - it's your baord

@andyp1per
Copy link
Collaborator

Ok I have fixed the baro issue - your external baros would not have worked before

@YI-BOYANG
Copy link
Contributor Author

@andyp1per The modified firmware has been tested and it works fine.

@andyp1per
Copy link
Collaborator

Great! Will mark for the devcall

@tridge tridge merged commit 6279f67 into ArduPilot:master Aug 5, 2024
47 checks passed
@Hwurzburg
Copy link
Collaborator

Hwurzburg commented Aug 15, 2024

@YI-BOYANG what is the pin with chinese?
image

cant add to wiki until we know

@YI-BOYANG
Copy link
Contributor Author

@YI-BOYANG what is the pin with chinese?中文的PIN是什么? image

cant add to wiki until we know在我们知道之前不能添加到 wiki

QQ_1723702870457
Adjustable voltage. By switching a 0 ohm resistance, it can be made to output 12V or battery voltage.

@Hwurzburg
Copy link
Collaborator

then what is VSW pad?
also is that voltage switched by a cpu pin on and off? its not in the current hwdef if it is.

@YI-BOYANG
Copy link
Contributor Author

then what is VSW pad? also is that voltage switched by a cpu pin on and off? its not in the current hwdef if it is.

VSW: In Betaflight and INAV, the 12V output is controlled on or off by pinio. I'm not sure if this feature is also available in Ardupilot, so there is no definition of VSW in hwdef.

Adjustable voltage (+) : Output 12V or battery voltage can only be selected with 0 ohm resistance.

@Hwurzburg
Copy link
Collaborator

yes ArduPilot can control the cpu pin that controls the switch for VSW(does this also control the supply pin on the VTX and DJI connector?)....its important for HD VTX users to be able to shut off the supply when on the ground to prevent overheating

it would be best if you sent either me or Andy a schematic of the circuit controlling these pins via discord PM and he or I can update the hwdef

@YI-BOYANG
Copy link
Contributor Author

yes ArduPilot can control the cpu pin that controls the switch for VSW(does this also control the supply pin on the VTX and DJI connector?)....its important for HD VTX users to be able to shut off the supply when on the ground to prevent overheating

it would be best if you sent either me or Andy a schematic of the circuit controlling these pins via discord PM and he or I can update the hwdef

Ok, I don't have your contact info in discord, I'll send the schematic to Andy Piper.

@Hwurzburg
Copy link
Collaborator

[email protected] fyi

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants