DIY-Multiprotocol-TX-Module icon indicating copy to clipboard operation
DIY-Multiprotocol-TX-Module copied to clipboard

Adds ExpressLRS Support

Open AlessandroAU opened this issue 3 years ago • 22 comments

First attempt at ELRS support for review/comments. Tested and working on bench. Should work with JP5in1 etc, although note that this was prototyped on a DIY board consisting of a iRangex4in1 + rfm95w module.

Supports 200hz, 100hz, 50hz, no telemetry implemented yet. Binding also not implemented yet, will connected to a ExpressLRS RX using the default bind phrase. (Conventional binding not yet merged into ExpressLRS quite yet anyway).

Sadly, it overflows flash with all other protos enabled. (122172 bytes)

AlessandroAU avatar Jul 27 '20 16:07 AlessandroAU

Is this PR still in-progress? Recent posts regarding ExpressLRS have highlighted this project and I'm wondering if this might work on the Jumper T18.

howels avatar Oct 25 '20 19:10 howels

Yeah, main problem is that I don't have a T18 for testing and this currently overflows the flash size, so other protos would have to be removed to fit.

AlessandroAU avatar Oct 26 '20 18:10 AlessandroAU

Yeah, main problem is that I don't have a T18 for testing and this currently overflows the flash size, so other protos would have to be removed to fit.

It won't be long and any new protocol will overflow the flash on all STM32 modules, but the 5in1 is particularly tight. We've bought some time by eliminating USB support, but it's a temporary stay at best.

So don't worry about that happening, because it's inevitable anyway :-)

benlye avatar Oct 26 '20 18:10 benlye

Ok, I think I will simplify the proto numbers and use LUA instead to set different modes, but after that it should be ready for testing 👍

AlessandroAU avatar Oct 28 '20 16:10 AlessandroAU

@AlessandroAU me has as uruav mpm with the wrong mcu 😝 therefore i do compile binaries of this which are just a few kilobytes.. will not fix the emulated eeprom, though. long story short i have a module to mess with cause it can't get worse - looking forward to test. btw, did you get any chance to check on possible compatbility of the tbs mpm module just released?

gretel avatar Oct 28 '20 16:10 gretel

Well IMHO rather have ExpressLRS on the cost of some crappy CN obscure protocols removal, have some hardware to donate for testing

OpenUAS avatar Nov 05 '20 20:11 OpenUAS

Thanks for all the input guys, I realise this PR is a bit out of date now. I will try to spend some time on this.

AlessandroAU avatar Nov 10 '20 13:11 AlessandroAU

Thanks for all the input guys, I realise this PR is a bit out of date now. I will try to spend some time on this.

cool :)

gretel avatar Nov 10 '20 13:11 gretel

The basic code from this pr was added into current, as of yesterday, MPM code by me and compiled and flashed with a lot of obscure protocols commented, onto an actual T18 radio. Bench test with a flashed r9mx proved bind and failsafe work. Please continue with the pr.

chaotixtech avatar Nov 10 '20 21:11 chaotixtech

@pascallanger other than obvious things like merge conflicts, what needs to be done for this to be acceptable?

harryjph avatar Jan 18 '21 21:01 harryjph

@harry1453 this is not a question of acceptable or not. Alessandro told me a long time ago that the PR was not ready and still needed to be modified. So I'll basically waiting. I can merge it tomorrow if you say the code is working. I haven't really checked how things have been done and I'm fine to merge if people are happy with it.

pascallanger avatar Jan 18 '21 21:01 pascallanger

Thanks for all the input guys, I realise this PR is a bit out of date now. I will try to spend some time on this.

howdy @AlessandroAU - this PR got kinda stuck. can you put some time on this? i'd be super for the hobby. thanks a mill!

gretel avatar Jan 28 '21 22:01 gretel

Would be super cool if it works with 2.4GHz ExpressLRS. Btw does anyone is making off the shelf ExpressLRS receiver? If MPM supports this and we can get the receiver easier it'll be super awesome.

joevo2 avatar Jan 29 '21 02:01 joevo2

Anyone know what is the current status for using it with the 5 in 1 module with 2.4 or 900?

hazcoper avatar May 10 '21 09:05 hazcoper

Would be super cool if it works with 2.4GHz ExpressLRS. Btw does anyone is making off the shelf ExpressLRS receiver? If MPM supports this and we can get the receiver easier it'll be super awesome.

There's a bunch made by Happy Model on Banggood. I am super hopeful that I'll be able to add ExpressLRS support to my RadioMaster TX at some point soon.

jimsynz avatar May 26 '21 03:05 jimsynz

when will we get LRS support in 4 in 1 Multi protocol

Talha909 avatar May 29 '21 20:05 Talha909

@hazcoper The current status with 5in1 is that this PR allegedly worked at some point, at some point I'm going to get around to reviving this. You're welcome to give it a go if you know how.

@jimsynz As the radiomaster doesn't have an SX1276 or SX1280 chip onboard, the only way to use ELRS on it without modifying/replacing the internal module is to use an external module

@Talha909 for the 4in1, there will never be support, as the 4in1 does not include a SX1276 (included in the 5in1) or a SX1280 (not included in any production MPMs)

harryjph avatar May 31 '21 12:05 harryjph

Hi, has there been any progress with the PR?

iKonrad avatar Jun 22 '21 20:06 iKonrad

@iKonrad no. I now have enough hardware to possibly start working on this, I'm just waiting on a) a stable v1.0 ELRS release and b) time to do it

harryjph avatar Jun 23 '21 09:06 harryjph

Any news on this one?

yokoboko avatar Jul 15 '21 16:07 yokoboko

Any updates?

jasperchua99 avatar Jan 05 '22 04:01 jasperchua99

No one is currently working on this

AlessandroAU avatar Jan 05 '22 04:01 AlessandroAU

I have updated the code of this PR and now it could be merged with current upstream master Please find my changes here: https://github.com/pascallanger/DIY-Multiprotocol-TX-Module/compare/master...gnuton:DIY-Multiprotocol-TX-Module:jumper-5-in-1-elrs

NOTE: At moment I do not have a jumper t18s in my hands, so the code in my branch even if builds fine it has not been tested.

gnuton avatar Oct 26 '22 23:10 gnuton

@AlessandroAU what help do you need to finish this one ? How do I select integrated ELRS protocol to test ?

I can build FW & run test on my Jumper t-pro (if it's supported)

shafr avatar Jan 09 '23 10:01 shafr

@shafr I have not tested this on the J T-Pro yet. but you are brave enough you can build,flash and you should see ELRS among the protocols in the multiprotocol list. Currently this code needs a major rewrite sine it would work only with an old version of ELRS from June 2020 IIRC..which means you have to flash a RX with such old ELRS firmware to see something working.

@AlessandroAU has already replied here https://github.com/ExpressLRS/ExpressLRS/issues/312

gnuton avatar Jan 09 '23 10:01 gnuton

@gnuton actually I do have an:

  • Jumper t-pro with latest EdgeTx 2.80.
  • BetaFPV Cetus X drone with ELRS 2.* something version. (Waiting for betaflight 4.4 release for ELRS 3.0 SPI)

Can you please provide with compiled firmware to upload ? I was hoping there would be some github action or docker image that I can use to build instead of doing all the manual steps.

shafr avatar Jan 10 '23 05:01 shafr

You'd need something that can run a much earlier version of ELRS - June 2020 puts this before v1.0 of ELRS (Jul 17, 2021). However, the reality is due to limitations in the MPM architecture it won't be possible to fully support all of the ELRS features, so there will be little incentive to pursue this avenue of development when either using a dedicated module or replacing internal RF with an ELRS module results in better end-user experience.

pfeerick avatar Jan 10 '23 06:01 pfeerick

OK, understood, so effort of implementing this feature is not worth it, everyone can just buy another controller / external module. Maybe this can be added to README or pinned to issues stack so this would not be asked every time. Thank you!

shafr avatar Jan 10 '23 07:01 shafr

Close the issue maybe?

OpenUAS avatar Jan 16 '23 22:01 OpenUAS

Not adding this protocol since ELRS have their own module.

pascallanger avatar Jan 19 '23 10:01 pascallanger