Skip to content

feat: switch to multithreaded SPLAT!#48

Open
Jellyfrog wants to merge 1 commit intomeshtastic:mainfrom
Jellyfrog:feat/hoche-splat
Open

feat: switch to multithreaded SPLAT!#48
Jellyfrog wants to merge 1 commit intomeshtastic:mainfrom
Jellyfrog:feat/hoche-splat

Conversation

@Jellyfrog
Copy link
Copy Markdown

@Jellyfrog Jellyfrog commented Dec 16, 2025

Features:

  • Uses multithreaded SPLAT! fork
  • Builds assets on the fly
  • Fixes bug where "Height AGL (m)" is actually in feet
  • Multistage Docker image, Size reduction 1.75GB > 596MB

Fixes #15

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Dec 16, 2025

CLA assistant check
All committers have signed the CLA.

@Jellyfrog Jellyfrog marked this pull request as draft December 16, 2025 17:45
@Jellyfrog Jellyfrog force-pushed the feat/hoche-splat branch 2 times, most recently from 4ae1df0 to 1c5db19 Compare December 16, 2025 19:26
@Jellyfrog Jellyfrog marked this pull request as ready for review December 16, 2025 19:30
@fifieldt
Copy link
Copy Markdown
Member

Thank you so much!

@mrpatrick1991 mrpatrick1991 self-assigned this Dec 30, 2025
@mrpatrick1991
Copy link
Copy Markdown
Collaborator

mrpatrick1991 commented Dec 30, 2025

Getting the following when building on mac OS:

6.994   │ exit code: 1
6.994   ╰─> [2 lines of output]
6.994       WARNING:root:Failed to get options via gdal-config: [Errno 2] No such file or directory: 'gdal-config'
6.994       ERROR: A GDAL API version must be specified. Provide a path to gdal-config using a GDAL_CONFIG environment variable or use a GDAL_VERSION environment variable.
6.994       [end of output]```

We need to add the GDAL dependencies back for this to build. 

@Jellyfrog
Copy link
Copy Markdown
Author

Getting the following when building on mac OS:

6.994   │ exit code: 1
6.994   ╰─> [2 lines of output]
6.994       WARNING:root:Failed to get options via gdal-config: [Errno 2] No such file or directory: 'gdal-config'
6.994       ERROR: A GDAL API version must be specified. Provide a path to gdal-config using a GDAL_CONFIG environment variable or use a GDAL_VERSION environment variable.
6.994       [end of output]```

We need to add the GDAL dependencies back for this to build. 

Yes I removed gdal libs since I didn’t see it being used anywhere? Are you building with docker?

@mrpatrick1991
Copy link
Copy Markdown
Collaborator

Getting the following when building on mac OS:

6.994   │ exit code: 1
6.994   ╰─> [2 lines of output]
6.994       WARNING:root:Failed to get options via gdal-config: [Errno 2] No such file or directory: 'gdal-config'
6.994       ERROR: A GDAL API version must be specified. Provide a path to gdal-config using a GDAL_CONFIG environment variable or use a GDAL_VERSION environment variable.
6.994       [end of output]```

We need to add the GDAL dependencies back for this to build. 

Yes I removed gdal libs since I didn’t see it being used anywhere? Are you building with docker?

Yes, I'm building with docker. GDAL libs are implicit dependencies for the geotiff image processing by the python backend.

I'm happy to merge this once the docker image builds, since multithreaded splat will be more performant.

@Jellyfrog
Copy link
Copy Markdown
Author

Jellyfrog commented Dec 31, 2025

Are you sure you checked out the correct git submodule, since it changed?
This code is currently running on https://planner.meshtastic.jellyfrog.se/ And it’s working fine :)

I’m not home at the moment so can’t investigate

@Jellyfrog
Copy link
Copy Markdown
Author

$ git clone git@github.com:Jellyfrog/meshtastic-site-planner.git -b feat/hoche-splat --recurse-submodules
$ cd meshtastic-site-planner/
$ docker build --no-cache .
...
 => exporting to image                                                                                                                                                                                                                                                                                                                                                               
 => => exporting layers                                                                                                                                                                                                                                                                                                                                                              
 => => writing image sha256:5319a3688818b37e376684023033c75401c49e1254ca585708789fd2bbbd56df 
$

@mrpatrick1991
Copy link
Copy Markdown
Collaborator

docker build --no-cache .
6.854   │ exit code: 1
6.854   ╰─> [2 lines of output]
6.854       WARNING:root:Failed to get options via gdal-config: [Errno 2] No such file or directory: 'gdal-config'
6.854       ERROR: A GDAL API version must be specified. Provide a path to gdal-config using a GDAL_CONFIG environment variable or use a GDAL_VERSION environment variable.
6.854       [end of output]
6.854
6.854   note: This error originates from a subprocess, and is likely not a problem with pip.
6.906
6.906 [notice] A new release of pip is available: 25.0.1 -> 25.3
6.906 [notice] To update, run: pip install --upgrade pip
6.907 error: subprocess-exited-with-error
6.907
6.907 × Getting requirements to build wheel did not run successfully.
6.907 │ exit code: 1
6.907 ╰─> See above for output.
6.907
6.907 note: This error originates from a subprocess, and is likely not a problem with pip.
------
Dockerfile:41
--------------------
  39 |
  40 |     # Install Python dependencies
  41 | >>> RUN pip install --no-cache-dir -r requirements.txt
  42 |
  43 |     # Copy the rest of the application files
--------------------
ERROR: failed to build: failed to solve: process "/bin/sh -c pip install --no-cache-dir -r requirements.txt" did not complete successfully: exit code: 1```

Thanks for getting back to me. Looks like we need something to do with GDAL (at least that's what I'm seeing while building locally). I want to get this merged, but need to figure out why this is happening on my end first. 

JamesonRGrieve added a commit to ZephyrexDev/lora-map that referenced this pull request Mar 15, 2026
Transmitter is conditionally rendered (v-if="store.isAdmin"),
so visitors never got a map. Map init belongs in the always-
mounted App.vue.

Fixes meshtastic#48.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

more faster = more better

4 participants