iNavFlight / inav

INAV: Navigation-enabled flight control software
https://inavflight.github.io
GNU General Public License v3.0
3.18k stars 1.49k forks source link

New Target Request; FLYWOOF745 #6522

Closed JyriT closed 3 years ago

JyriT commented 3 years ago

Current Behavior

No fitting target found in inav

Desired Behavior

Please add a target for the board https://flywoo.net/collections/goku-16x16-stack/products/goku-hex-f745-fc-16mm-x-16mm-w-4pcs-ws2812-led

I think this board has good potential for inav since it has many useful features, for example: 7 full UARTs A Barometric pressure sensor 8 Mb blackbox flash 16x16 size, excellent for micro long-range builds

Suggested Solution

the resource assignments can be found in here:

https://raw.githubusercontent.com/betaflight/unified-targets/master/configs/default/FLWO-FLYWOOF745.config

Who does this impact? Who is this for?

likely big part of the hobby since sub 250g is more and more important, this board is light (2.9g) and also packs good features.

Additional context

This target enables easy and small implementation of GPS+Compass builds with full Crossfire + Mavlink functionality.

HerpDerpula commented 3 years ago

Are you willing to test a hex file?

JyriT commented 3 years ago

Naturally. Table tests are possible at moment, I'm waiting for rx to arrive any moment, then flight tests are also doable.

HerpDerpula commented 3 years ago

FLYWOOF745.zip I didn't produce this, I take no credit for it. It's entirely an alpha/beta and not endorsed by the dev team.

drdbuck commented 3 years ago

I also need this. Thanks.

thezolon commented 3 years ago

Got another tester here if/when this is done. :) I have the FC in hand and will be swapping it on my hexplorer this weekend. iNAV is one reason I got it.

jdweed commented 3 years ago

The Flywoo.net web page has a target inav_2.5.2 for this board. I am currently using it with their Goku F745 2-6S 16x16 Stack/Combo ( F745 FC / 35A 4in1 ESC ) and it works fine.

thezolon commented 3 years ago

Awesome. Will give it a try. Just wish it was in the companion. I get a little twitchy about using firmware that isn't. (I am still a newb and have never used inav yet.)

BenWThomas commented 3 years ago

Using iNav 2.6.1, flashed HerpDerpula's nav_2.6.0_FlywooF745.hex on new Flywoo F745 Nano, the sweet little 16x16 with builtin programmable LEDs on each corner. Flashed successfully, selected the smallest prop default (3-5"? 3-7"?), Quad mixer.

After first flash, I reconnected easily without pulling the USB.

Aside, probably spurious: the first time I disconnected USB, when I re-connected, the board didn't boot; the green status LED looked weak and was pulsing slowly. I pulled USB again, counted off a few seconds, and... it reconnected fine, and everything looks as it should.

I did not experience the USB reconnect problem again.

The 7 UARTs, MPU6000, and Baro as BMP280 are recognized.

Baro, gyros, accelerometer signals in sensors look pretty normal.

Naturally, first test I tried was the LED Strip feature, since the Nano has 4 built-in. After a false start or two in which I forgot to enable the feature in Configuration... the on-board LEDs work fine.

Seems to run hotter than my other one with FW's Nano 2.5.2 build. (I will compare this same board against Flywoo's 2.5.2. later, and will check inav_2.7.0_FlywooF745.hex, too, using 20210308 iNav alpha soon.)

SUMMARY: Your hex build is looking good at first bench test.

THANKS, HerpDerpula!

jdweed commented 3 years ago

I believe the Flywoo F745 Nano has is own hex file - and is not compatible with the FlywooF754.hex.

It appears that the Flywoo F745Nano is using two (2) separate I2C busses. One seems to be internal to the FC - maybe the barometer - the other is broken out on FC board pads labeled as SDA2 and SCL2.

Flywoo's BNF model Explorer LR 4 V2 HD Micro Long Range uses the F745Nano stack. If you review their CLI download for this model it shows the following:

resource I2C_SCL 1 B06 resource I2C_SDA 1 B07 resource I2C_SCL 2 B10 resource I2C_SDA 2 B11

The Betaflight unified target file for the FlywooF745 FC show resources for only one I2C buss.

BenWThomas commented 3 years ago

@HerpDerpula: Thanks again VERY much for the binaries. They seem to behave alike. What's their lineage?

@JyriT: Thanks for writing the bug; my #6675 got duped to yours. VERY happy it's the Nano that gets your attention. It is so very complete and elegant!

@drdbuck: We will all be interested in how it flies, and what peripherals may have attached, and how they behave.

@thezolon: Yes, I totally relate. I have the Flywoo-posted 2.5.2 on which to fall back, and can assure you that if you download that file, and use iNav "Load from File" and then just flash (don't use popup menus to select board or build, because by loading the file, you've done that ... it will work. You can always re-flash from the official BetaFlight release, but... I am not a fan, and really, really admire the engineering in the F745Nano and its matching ESCs. So, it's time to play, and if a little fiddling and feedback can lead to official iNav releases, I will be totally good with that.

@JDWeed: Thanks very much for your observations about resources... comments/questions follow these INav outputs:

Startup log: Board self-identifies as FWF7:

2021-03-11 @ 22:28:22 -- Serial port successfully opened with ID: 1 2021-03-11 @ 22:28:22 -- MultiWii API version received - 2.4.0 2021-03-11 @ 22:28:22 -- Flight controller info, identifier: INAV, version: 2.6.0 2021-03-11 @ 22:28:22 -- Running firmware released on: Feb 2 2021 19:30:26 2021-03-11 @ 22:28:22 -- Board: FWF7, version: 0

Here's command output: I2C1 for 2.6.0 is allocated as you show from Flywoo Explorer Betaflight. Question about I2C2 on B10 and B11 (and a couple others) are below listings.

Resource:

A00: FREE A01: FREE A02: LED1 OUT A03: FREE A04: FLASH CS A05: SPI1 SCK A06: SPI1 MISO A07: SPI1 MOSI A08: FREE A09: FREE A10: SERIAL1 UART RX A11: USB IN A12: USB OUT A13: FREE A14: FREE A15: FREE B00: MOTOR1 OUT B01: MOTOR2 OUT B02: FREE B03: FREE B04: FREE B05: FREE B06: I2C1 SCL B07: I2C1 SDA B08: FREE B09: FREE B10: FREE B11: FREE B12: OSD CS B13: SPI2 SCK B14: SPI2 MISO B15: SPI2 MOSI C00: FREE C01: FREE C02: FREE C03: ADC CH2 C04: FREE C05: FREE C06: FREE C07: FREE C08: FREE C09: FREE C10: FREE C11: FREE C12: FREE C13: FREE C14: FREE C15: FREE D00: FREE D01: FREE D02: FREE D03: FREE D04: FREE D05: FREE D06: FREE D07: FREE D08: FREE D09: FREE D10: FREE D11: FREE D12: LED STRIP OUT D13: FREE D14: FREE D15: BEEPER OUT E00: FREE E01: MPU EXTI E02: SPI4 SCK E03: FREE E04: MPU CS E05: SPI4 MISO E06: SPI4 MOSI E07: FREE E08: FREE E09: MOTOR3 OUT E10: FREE E11: MOTOR4 OUT E12: FREE E13: FREE E14: FREE E15: FREE

=> It will be interesting (once I have chosen peripherals) to see if there's no I2C at all with this firmware. I may just use one of the itty bitty I2C compass modules I have in my parts box, for now, just to see what works. (I shouldn't have been surprised that the onboard LEDs work, as they use the same signal as any off-board ones. They are currently doing nice work as Port and Starboard colors in Larsen scanner mode: very flashy!) Stacked and mounted on the matched 20A 4-in-1, the FCU doesn't seem any warmer than it should. Just running USB so far.

=> But I am in unfamiliar territory with declaring resources, although CLI is not scary. (And I can always re-flash!) Not keen, though, to go through the learning curve of compiling...

=> Can I just apply declare (or both) pair(s) of resource commands to this Nano FWF7, and anticipate that I2C-1 and/or I2C-2 might then be accessible?

=> Peripherals will include:

Bluetooth Flywoo BT Nano: so small it's almost negative mass, runs at 115000 by default, not my first use of these.

ESC Definitely the slick 4-in-1 direct-connect Flywoo. No ribbon, plus 4 more programmable LEDs, and build quality visibly as slick as the FCU. Not all stacks look as made-for-each-other as these.

GPS-5883 TBD; probably HolyBro Nano just acquired, altho I've not used these before. I do want a compass!

Ranging Maybe not first priority, but if I2C will work, have generic VL53L0X modules, and an uncommitted Matek Optical Flow on hand. So far, have VL53L0X has been pretty limited; have to be within 1m or less over grass in shade before it seems to be reliable.

Comment: very glad to see FCUs with Baro on board re-appearing. Wish onboard compass would re-emerge; my best compass implementations to date are Sparky (original) and SPRacingF3Mini, which defy logic by appearing to work better than external GPS/Mag, for compass function.

=> Actual soldering may not begin for a couple weeks -- daughter just today delivered her first baby/our first grandchild a few hours' drive away. Strange territory; new life component installed...

jcink commented 3 years ago

I would also like to express interest in an official iNav target for this board. Flywoo ships these with their V2 digital setup and with an official target it would pave the path to use iNav with it. :)

surfek commented 3 years ago

Also looking for the INAV target for this FC (got this with Flywoo Explorer V2). Would be great top use INAV :) Betaflight target is called: FLYWOO F745 NANO.

Is there any test INAV target I can use?

BenWThomas commented 3 years ago

See HerpDerpula's comment, Feb 4. Hex file is for F745 not F745Nano. As it is, it works except for I2C, which is broken out (as I understand it) on the F745 Nano as I2C2, rather than I2C1. Not sure if this can be fiddled with CLI resource-feature-whatever or not...

BenWThomas commented 3 years ago

And... if iNav 2.5.2 will do for you, Flywoo has iNav 2.5.2 hex file posted on their Support/ Downloads page. This seems to work fine.

Herpdula's F745 not-Nano files are 2.6 and 2.7 - not sure if there's anything apart from I2C that isn't compatible, but it burns and runs. F745 and F745 hardware are similar, but not identical.

BenWThomas commented 3 years ago

Flywoo iNav 2.5.2 is last item on the list, here: https://flywoo.net/pages/manual

surfek commented 3 years ago

Thanks. will use 2.5.2, hope Goku F745 Nano will be included into INAV target lists. It is default on Flywoo Explorer, and believe it makes sense to use INAV instead of Betaflight there...

thivi87 commented 3 years ago

@HerpDerpula - is this hex for the F745, or the F745nano specifically? I am trying to run a GOKU GN 745 40A AIO with GPS and mag and would rather run iNAV on this one.

Bibbleq commented 3 years ago

Flashed the 2.6.0 version from above ZIP successfully on the GOKU HD F745 AIO target, not got motors and things to test with but gyro and baro reporting in okay at the moment

HerpDerpula commented 3 years ago

@HerpDerpula - is this hex for the F745, or the F745nano specifically? I am trying to run a GOKU GN 745 40A AIO with GPS and mag and would rather run iNAV on this one.

F745 I believe. I did not create this hex file. It was compiled by a dev who wanted to help out the community. It's entirely up to them if they want to speak up and offer more information. I'm just a messenger - no need to thank me. Just someone who appreciates the time the community puts into moving the ball forward for the little guys like me who enjoy flying.

stronnag commented 3 years ago

@HerpDerpula - is this hex for the F745, or the F745nano specifically? I am trying to run a GOKU GN 745 40A AIO with GPS and mag and would rather run iNAV on this one.

F745 I believe. I did not create this hex file. It was compiled by a dev who wanted to help out the community. It's entirely up to them if they want to speak up and offer more information. I'm just a messenger - no need to thank me. Just someone who appreciates the time the community puts into moving the ball forward for the little guys like me who enjoy flying.

Specifically, the target files came from the manufacturer via a RCG user. They are attached below. flywoof745.tar.gz

BenWThomas commented 3 years ago

@stronnag. Although I haven't flown with the F745 2.6/2.7 hex files, and have F745Nano stacks, I've done a good bit on the bench. As has been pointed out, on Nano it's I2C2 that's pinned out on the Nano hardware, and this hex file for 'regular' F745 expects peripherals on I2C1 (did I get that right, fellas?). Serial ports (7 on the Nano!) seem to work for the several configs I've built up. Soooo... the question may be I2C on your board. You should be able to figure out which it uses by burning released BetaFlight, and collecting status (and a DIFF to look at). Status will show which I2C bus is enabled on your board.

BenWThomas commented 3 years ago

Matek has/had a GPS with MSP MN9 GPS/compass -and- has a Baro on board - so you could use it via UART and get your compass and a Baro, too without I2C. Matek discontinued it, stating on website that it was because they couldn't get sufficient volume of a component. It is kinda big, as it has CAN and 2 other connectors. Some may still be available. I have not tested this device, but iNav offers MSP all sensors, so ... with a well-behaved UART, you won't need I2C for a full config, and you'd be getting a lot of mileage out of one UART.

BenWThomas commented 3 years ago

Flywoo.net has just posted iNav 3.0.0.hex for their entire lineup. flywoo.net/support/downloads

jimsynz commented 3 years ago

It'd be nice if their devs would open a PR with their changes.

harryjph commented 3 years ago

They are hosting INAV 3.0 builds here: https://cdn.shopifycdn.net/s/files/1/0010/7410/2324/files/INAV_3_0_0_Firmware.rar?v=1618564404, no clear indication of what "3.0.0" it is, if you run it you could probably find a commit hash in the CLI.

They seem to be hosting files for targets that INAV doesn't have, including FLYWOOF745 and FLYWOOF411HEX. I can't find source code anywhere.

This is an extremely clear GPL violation. Might be worth contacting them to point this out.

jimsynz commented 3 years ago

It no one else has done so already I'm happy to reach out to their support channel and request it.

jdweed commented 3 years ago

The flywoo.net website has the Inav 3.0 hex files listed in their support download section. Looks like these Inav 3.0 hex files referenced are from the manufacturer.

BenWThomas commented 3 years ago

Flywoo.net iNav 3.0.0.hex for F745Nano functions completely as expected on bench, including I2C (I2C2) compass on GPS, which would not work with Flywoo's 2.5.2 F745 Nano firmware. Great news!

Not ready to fly yet, but -everything- I've wired and configured seems to work... except, weirdly, Flywoo's own BTNano. Tiny 192kbps BT board sets works great, until you remove and reapply power. F745N powers up and drops to DFU. Have repeated on 2 F745 Nano stacks on various serial ports, at 3.3v and 5v. Generic JDY-18 (9600 bps) works fine. The FW BT Nano works fine at default 192k with iNav 2.6.1 or 3.0.0 pre-release on another mfg's FCU, altho I forget which one I tested...

Anybody flown F745 Nano with this Flywoo 3.0.0 firmware yet?

JyriT commented 3 years ago

Started testing the Flywoo inav3.0 hex file with F745 fc. Seems that compass connected to SDA2/SCL2 doesn't turn green. GPS & Baro is working fine.

version

INAV/FLYWOOF745 3.0.0 Apr 15 2021 / 21:10:19 (7b50b059)

GCC-9.3.1 20200408 (release)

status

System Uptime: 55 seconds Current Time: 2041-06-28T02:04:00.000+01:00 Voltage: 12.24V (3S battery - OK) CPU Clock=216MHz, GYRO=MPU6000, ACC=MPU6000, BARO=BMP280 STM32 system clocks: SYSCLK = 216 MHz HCLK = 216 MHz PCLK1 = 54 MHz PCLK2 = 108 MHz Sensor status: GYRO=OK, ACC=OK, MAG=UNAVAILABLE, BARO=OK, RANGEFINDER=NONE, OPFLOW=NONE, GPS=OK Stack size: 6144, Stack address: 0x20010000, Heap available: 1820 I2C Errors: 60, config size: 7059, max available config: 32768 ADC channel usage: BATTERY : configured = ADC 2, used = ADC 2 RSSI : configured = ADC 3, used = none CURRENT : configured = ADC 1, used = none AIRSPEED : configured = none, used = none System load: 3, cycle time: 539, PID rate: 1855, RX rate: 49, System rate: 9 Arming disabled flags: ACC HWFAIL RX CLI VTX: not detected

JyriT commented 3 years ago

Update. Changed Mag to auto. Now it's detected.

kingasa47 commented 3 years ago

Just got my flywoo f745 will the 3.0 flywoo firmware work on inav 2.6.1? sorry I'm new to this thanks and bear with me

harryjph commented 3 years ago

@kingasa47 The 3.0 flywoo firmware is "INAV 3.0" (in quotes because INAV 3.0 isn't actually released yet so it's actually just a development build), so it won't be 2.6.1 at all. No idea if it'll work, others say it does.

kingasa47 commented 3 years ago

Ready to flash the firmware confused as to which one to flash for my flywoo explorer lr v1on INAV 3.0 FLYWOO745.hex FLYWOO745.HD.hex or FYWOO745.NANO.hex thanks for the help!

harryjph commented 3 years ago

Unfortunately it's hard to know, as Flywoo haven't released details of which target does what. What FC do you have? Do you have a link to the Flywoo store for that FC?

Also, didn't the explorer v1 have an F411 and the v2 upgraded to F745?

jimsynz commented 3 years ago

FYI I reached out to Flywoo support asking for them to honour the GPL license, but have not yet heard anything back.

harryjph commented 3 years ago

@jimsynz Thanks, hopefully they do something about it...

jimsynz commented 3 years ago

So I heard back from Flywoo. They have opened a PR with the code, which is awesome. Looks like there are some hoops to jump through to get official support, but at least now we have a branch with it in, so that we can build it ourselves if needed.

https://github.com/iNavFlight/inav/pull/6985

BenWThomas commented 3 years ago

@kingasa47. -- If your Flywoo Explorer has a 16x16 FCU, it is the Nano. (I am in process of building up a 4" Explorer LR - beautifully engineered frame!). Flywoo has a link to an iNav 3.0.0 Configurator on their Support page, and if you use iNav app to run iNav Configurator, you will see that pre-releases now include official 3.0.0-rc1, which is newer than Flywoo's posted version.

Also ordered several of Flywoo's tiny new I2C compass-baro modules, for use with certain FCUs that don't have either.

kingasa47 commented 3 years ago

@kingasa47. -- If your Flywoo Explorer has a 16x16 FCU, it is the Nano. (I am in process of building up a 4" Explorer LR - beautifully engineered frame!). Flywoo has a link to an iNav 3.0.0 Configurator on their Support page, and if you use iNav app to run iNav Configurator, you will see that pre-releases now include official 3.0.0-rc1, which is newer than Flywoo's posted version.

Also ordered several of Flywoo's tiny new I2C compass-baro modules, for use with certain FCUs that don't have either. Where do I download 3.0.0-rc1?

BenWThomas commented 3 years ago

@kingasa47 --

If you use a Mac, the best answer is really cool: https://inavapp.com. iNav.app is a curating front-end for iNav users; it can launch -any- release of iNav from 1.7.3 to 2.6.1 plus prereleases through 3.0.0 rc-1. This is incredibly useful if you have a mix of older and newer FCUs. iNav.app will also launch BLheli, and Black Box Log Viewer. (The same author also has a similar front-end app for BetaFlight.)

iNav.app may be a Mac-only thing; its developer is working with Apple to get it into the App Store.

Also, Flywoo.net lists a link for iNav 3.0.0 Configurator on its Support page. The link points to a server in UK that hosts iNav rc-1 for all platforms. 3.0.0 rc-1 for Mac and Windows are unsigned (unofficial); the Linux 32 and 64-bit downloads here are are signed by the developer.

Flywoo.net's post may (or may not) be identical to the rc-1 available via iNav.app; I haven't checked that. iNav.app always offers the entire range of releases. (I have not checked to see if the Mac rc-1 via iNav.app is signed, or not.)

For Windows or Linux, you can (and may prefer) to download iNav Configurator 3.0.0 RC1 directly from Github: https://github.com/iNavFlight/inav-configurator/releases/tag/3.0.0-RC1. The Mac Configurator usually appears with he other official releases a few weeks later.

BenWThomas commented 3 years ago

Unsupported iNav 3.0.0 F745nano worked very well on maiden flight of build of Explorer LR 4. 3" defaults need some PID tuning, FCU with NIN1404 w/4024 agile and very smooth. iBus Fli14+ Rx, Holybro GPS/compass worked great. JDY-18 BlueTooth connects fine to SpeedyBee app.

1-handed movie of maiden hover here: https://github.com/iNavFlight/inav/issues/6675

d4rken commented 3 years ago

There is no support for the F745HEX right? For the hexplorer? None of the other F745 images seem to work.

harryjph commented 3 years ago

@d4rken Flywoo have added support unofficially, and are working to get official support implemented. Please see above conversation. I'm pretty sure the F745HEX target is in their zip file, but please bear in mind that it's not an official build, nor is it even a release build, it's taken from some point in 3.0's development so won't include any bugfixes that were done between when it was created and when 3.0 was released.

gabrielgradinaru commented 3 years ago

It has been merged boys: https://github.com/iNavFlight/inav/pull/6985 Now available in 3.0.0-RC2: https://github.com/iNavFlight/inav/releases/tag/3.0.0-RC2 I suggest closing this issue now.

d4rken commented 3 years ago

Please see above conversation. I'm pretty sure the F745HEX target is in their zip file, but please bear in mind that it's not an official build, nor is it even a release build, it's taken from some point in 3.0's development so won't include any bugfixes that were done between when it was created and when 3.0 was released.

The zip only contains a F4 HEX variant.

It has been merged boys: #6985 Now available in 3.0.0-RC2: https://github.com/iNavFlight/inav/releases/tag/3.0.0-RC2 I suggest closing this issue now.

No F745HEX :frowning:

adragoset commented 3 years ago

No F411HEX either in RC2. Looks like the soft serial port is not mapped properly on that board to pins PB0 and PB4 in the flywoo provided target. And since there is no resource remapping in inav i cant use one of those pads to control smart audio in my fixed wing plane with gps and compass.

gabrielgradinaru commented 3 years ago

It looks like there is no special target for F745HEX, it is just the regular F745. More info here: https://www.youtube.com/watch?v=6Zy7uyBVkHg&t=2680s

BenWThomas commented 3 years ago

Yes, I checked just now, and the list of supported builds includes these from Flywoo:

inav_3.0.0_FLYWOOF411.hex https://github.com/iNavFlight/inav/releases/download/3.0.0-RC2/inav_3.0.0_FLYWOOF411.hex1.3 MB inav_3.0.0_FLYWOOF411_V2.hex https://github.com/iNavFlight/inav/releases/download/3.0.0-RC2/inav_3.0.0_FLYWOOF411_V2.hex1.3 MB inav_3.0.0_FLYWOOF745.hex https://github.com/iNavFlight/inav/releases/download/3.0.0-RC2/inav_3.0.0_FLYWOOF745.hex1.34 MB inav_3.0.0_FLYWOOF745NANO.hex https://github.com/iNavFlight/inav/releases/download/3.0.0-RC2/inav_3.0.0_FLYWOOF745NANO.hex1.34 MB inav_3.0.0_FLYWOOF7DUAL.hex https://github.com/iNavFlight/inav/releases/download/3.0.0-RC2/inav_3.0.0_FLYWOOF7DUAL.hex1.18 MB

Hooray!

On May 29, 2021, at 1:55 PM, gabrielgradinaru @.***> wrote:

I has been merged boys: #6985 https://github.com/iNavFlight/inav/pull/6985 It is now available in 3.0.0-RC2: https://github.com/iNavFlight/inav/releases/tag/3.0.0-RC2 https://github.com/iNavFlight/inav/releases/tag/3.0.0-RC2 — You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/iNavFlight/inav/issues/6522#issuecomment-850882631, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABFQGSOLU2EV65DXNZAPCILTQE2ALANCNFSM4WK3PV3A.

d4rken commented 3 years ago

It looks like there is no special target for F745HEX, it is just the regular F745. More info here: https://www.youtube.com/watch?v=6Zy7uyBVkHg&t=2680s

Can't connect to the FC after flashing the regular F745 :frowning:

BenWThomas commented 3 years ago

iNav 3.0.0 official release was posted a few days ago, and FlywooF745Nano is now supported.

https://github.com/iNavFlight/inav-configurator/releases/tag/3.0.0

The two F745 Nano stacks I have reflashed are behaving very well with I2C compass, and UART-connected IRC, GPS, BT, and iBus Rx. Very smooth. 2.6.1 backups made with CLI 'diff all' restored on fully-erased FCU behaved as expected in front-yard test flights. Restore included accel and mag calibration. (You will still have to choose a basic model-type and mixer settings before you restore.)

Hooray!