You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The hardware list (targets.json file) is always loaded from S3, even if the local repository is used.
Thus, it's not possible to build a firmware with for custom device or e.g. customized hardware options using ExpressLRS Configurator.
Steps to reproduce:
Have a local copy of ExpressLRS source code with customized targets.json. For reproducing an issue, I'd suggest just removing some entries, e.g. anyleaf since it's at the top of the list.
Run the ExpressLRS Configurator.
Select Local at Firmware version selector.
Input local repository path.
Wait for the models data to load.
Select Device category.
Expected Behavior
The anyleaf entry removed from targets.json is not present in models list.
Current Behavior
The anyleafe entry removed from targets.json is still seen in models list.
Steps to Reproduce
Follow the steps above (sorry to break the issue template but it's way more obvious this way).
Possible Solution (Not obligatory)
In DeviceDescriptionsLoader.loadTargetsData, replace:
if(gitRepository.hardwareArtifactUrl){
with:
if (
args.source !== FirmwareSource.Local &&
gitRepository.hardwareArtifactUrl
) {
This way, the artifacts download logic won't apply for local repositories.
I doubt if that's the correct fix though as e.g. pull requests may also include changes to targets.json which should be accounted. I guess the correct fix would be unsetting hardwareArtifactUrl property from gitRepository but I'm not really sure where it comes from (and I just wanted to be able to build my custom firmware locally so didn't investigate any further).
Context
N/A
Your Environment
Operating System and version: Ubuntu 23.10, ExpressLRS and ExpressLRS Configurator from master.
TX hardware: N/A
RX hardware: N/A
The text was updated successfully, but these errors were encountered:
The hardware list (
targets.json
file) is always loaded from S3, even if the local repository is used.Thus, it's not possible to build a firmware with for custom device or e.g. customized hardware options using ExpressLRS Configurator.
Steps to reproduce:
targets.json
. For reproducing an issue, I'd suggest just removing some entries, e.g.anyleaf
since it's at the top of the list.Local
at Firmware version selector.Expected Behavior
The
anyleaf
entry removed fromtargets.json
is not present in models list.Current Behavior
The
anyleafe
entry removed fromtargets.json
is still seen in models list.Steps to Reproduce
Follow the steps above (sorry to break the issue template but it's way more obvious this way).
Possible Solution (Not obligatory)
In
DeviceDescriptionsLoader.loadTargetsData
, replace:with:
This way, the artifacts download logic won't apply for local repositories.
I doubt if that's the correct fix though as e.g. pull requests may also include changes to
targets.json
which should be accounted. I guess the correct fix would be unsettinghardwareArtifactUrl
property fromgitRepository
but I'm not really sure where it comes from (and I just wanted to be able to build my custom firmware locally so didn't investigate any further).Context
N/A
Your Environment
master
.The text was updated successfully, but these errors were encountered: