inav icon indicating copy to clipboard operation
inav copied to clipboard

H750/H730 CPU support

Open hydra opened this issue 4 years ago • 11 comments

H750 CPU support is required to support the SPRacingH7EXTREME, SPRacingH7NANO and SPRacingH7ZERO flight controllers.

http://seriouslypro.com/spracingh7extreme http://seriouslypro.com/spracingh7zero http://seriouslypro.com/spracingh7nano

The H750 CPU requires an external flash chip and is significantly cheaper than the H743 even when factoring in the external flash chip.

H730 CPU support is required to support the SPRacingH7RF and SPRacingH7EF flight controllers.

The following modes of operation are possible with the H750/H730 designs:

  1. Copy firmware from SD card or external flash into RAM and run from RAM (fastest, easy to store config and supports logging).
  2. Use a flash chip that supports memory mapped mode and run it from external flash (slower, more complicated to save config on the same chip, can't log at the same time to flash, can log to SD card).
  3. Use two flash chips, one for code execution (small but fast), one for logging & config (large and/or cheap)

Note that the H730 CPU used in the H7RF (which also has an ExpressLRS capable RF chip connected via SPI) has the same requirements as the H750 and uses Option 2 from the above list. The H7EF (unreleased, but BF source available on the SPRacing BF repo) uses option 3 from the above list.

The main tasks are as follows:

  • Add H750/H730 CPU support to build system.
  • Update build system to support generating EXST bootloader binaries
  • Update H7 startup code (only minor changes to init code so that reboot reason handing is supported).
  • Update MSP to allow rebooting to bootloader.
  • External flash partitioning support.
  • Add QSPI support for QSPI flash chip.
  • Allow saving config to external flash.

Once that is done there are only minor changes between the H743 and H750 code. H730 requires a little more work again because it uses OctoSPI instead of QuadSPI.

See also: H7 CPU support for iNav - https://github.com/iNavFlight/inav/issues/6371#issuecomment-964117039 H730 CPU support for BF - https://github.com/betaflight/betaflight/pull/10695 ExpressLRS via SPI for BF - https://github.com/betaflight/betaflight/pull/10788

hydra avatar Nov 09 '21 12:11 hydra

Awesome @hydra I would love to see your contribution to the project by making those changes and thus enabling pilots to use your hardware

DzikuVx avatar Nov 10 '21 08:11 DzikuVx

@DzikuVx I'm somewhat time-poor these days due to a new job - mainly posting the info above so that any interested party can tackle it.

If anyone wants to pick up this work I can provide hardware and technical assistance. Those interested should familiarize themselves with the support for the H7EXTREME in BF before tackling this job and contact me on the SP Racing discord server - https://discord.gg/99amK5K8ye

hydra avatar Nov 13 '21 16:11 hydra

so is there any progress on the iNav target for the spracing H7 extreme?

DanO83 avatar Jan 07 '22 16:01 DanO83

@DzikuVx It would be nice if there was a comment regarding the status of the ticket when closing it. Such as 'no developer interest right now, reference in a new ticket if work is started', 'never'. I'm guessing the former is applicable right?

hydra avatar May 09 '22 11:05 hydra

Well, @hydra truth to be told, you have to answer this question. As we are happy to accept H750 support, you are probably the only one that has an interest in doing so. IIRC you are the only provider of H750 FC and it's up to you to do something about it.

As there is no movement in the topic, I have to assume you won't work on the topic, am I correct?

DzikuVx avatar May 09 '22 20:05 DzikuVx

@DzikuVx Someone contacted me today regarding getting started on this. I'm following up with them now and will help them get this done. I don't have time to do it all myself or to 'own the code' as it were, but have time to assist technically as appropriate.

hydra avatar May 09 '22 20:05 hydra

@DzikuVx Can you re-open this, two developers have been shipped development boards today.

I've created an iNAV/SPRacing developers channel on the SP Racing discord server too, anyone wishing to help out is free to join the channel.

https://discord.gg/vP2sUGEhav

hydra avatar May 17 '22 10:05 hydra

Re-opening, Hardware has been shipped to me and @erstec Further assistance is provided by @hydra via discord, but lets try to track progress here so its transparent

bkleiner avatar May 17 '22 10:05 bkleiner

Cool!

wt., 17 maj 2022, 12:57 użytkownik Benedikt Kleiner < @.***> napisał:

Reopened #7583 https://github.com/iNavFlight/inav/issues/7583.

— Reply to this email directly, view it on GitHub https://github.com/iNavFlight/inav/issues/7583#event-6623434797, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHMBG2TJIAEYMFINEQR3KTVKN3RFANCNFSM5HVHH4HQ . You are receiving this because you were mentioned.Message ID: @.***>

DzikuVx avatar May 17 '22 11:05 DzikuVx

MSAA! : make spracing ambivalent again! would love some h750 love spread into the world; Can a basically incompetent person such as myself help for h750 implementation? if not, I would still love to see some H7 extreme targets appear in INAV, and make those FC even more powerful.

Tenns avatar Sep 06 '22 22:09 Tenns

There have been some (rather large) delays, but hardware has been received and i still fully intend to come back to this.

bkleiner avatar Sep 06 '22 22:09 bkleiner

With the release of inav 6 I was hoping for support for the spracing h7 extreme, but unfortunately no activity from @hydra or other developers. should I give up hope and ditch the fc?

DanO83 avatar Mar 26 '23 12:03 DanO83

@DanO83 Yes, it's a bit disappointing that the two developers that were sent hardware have not contributed. Perhaps give the guys in the SPRacing discord #inav-dev channel a prod? @hanfer and @ernis were the devs on the discord server.

hydra avatar Mar 27 '23 23:03 hydra

Hi guys. Another year passed and I would like to know if H750 support is something plausible of going to happen in the near future? If yes, then fantastic, I'm eager to have this rolled out in the next major release. If not, I'd like to close this issue because it's open for 2,5 years already and I seen no progress. Plus, it still seems like this FC family is the only one on the market that utilizes H750. Thanks

DzikuVx avatar Mar 23 '24 11:03 DzikuVx

@DzikuVx Just close it, re-open if work happens by the devs that were sent boards.

I in related news ST released the awesome 600Mhz H7R3/7S3 and H7R7/7S7 MCUs which are what they call 'bootflash' MCUs which take a similar approach to using external memory for running code from like the H730.

hydra avatar Apr 09 '24 15:04 hydra