[Question] MeshCore Support #136

Closed
opened 2026-10-04 23:01:51 +02:00 by adam · 17 comments
Owner

Is there a tool like PotatoMesh which can be used with MeshCore nodes or do you plan to support the MeshCore protocol in PotatoMesh?

Is there a tool like PotatoMesh which can be used with MeshCore nodes or do you plan to support the MeshCore protocol in PotatoMesh? <!-- github-sync-id:3853635439 -->
adam closed this issue 2026-10-04 23:01:51 +02:00
Author
Owner

Yes. I absolutely plan to.

I'm still figureing out - shall we do a separate tool or do we want to have both in one?

What do you think?

Yes. I absolutely plan to. I'm still figureing out - shall we do a separate tool or do we want to have both in one? What do you think? <!-- github-comment-id:3810448133 -->
Author
Owner

I think it depends how much is meshtastic specific or meshcore specific. If it is a seperate tool, how much could be reused?

Maybe im wrong, but i dont realisticly see the case to show meshtastic and meshcore nodes in one ui. Would there be a switch or a configuration option to change the mode, if you chose the both-in-one solution?
Naively, I would expect that only the ingestor would need to be remade and everything else could be reused. But it's certainly not that simple.

Personally, I would be fine with either option. It would depend more on development or support aspects.

I think it depends how much is meshtastic specific or meshcore specific. If it is a seperate tool, how much could be reused? Maybe im wrong, but i dont realisticly see the case to show meshtastic and meshcore nodes in one ui. Would there be a switch or a configuration option to change the mode, if you chose the both-in-one solution? Naively, I would expect that only the ingestor would need to be remade and everything else could be reused. But it's certainly not that simple. Personally, I would be fine with either option. It would depend more on development or support aspects. <!-- github-comment-id:3811878300 -->
Author
Owner

i would personally like to have that added, im running the Tallinn dashboard and we have both meshtastic and meshcore quite active here.

i would personally like to have that added, im running the Tallinn dashboard and we have both meshtastic and meshcore quite active here. <!-- github-comment-id:4084399593 -->
Author
Owner

Yeah, we have much more Meshcore in Berlin than Meshtastic, so I also want that but the problem is, how much time do I have to integrate that properly, it's quite a mammoth task.

Yeah, we have much more Meshcore in Berlin than Meshtastic, so I also want that but the problem is, how much time do I have to integrate that properly, it's quite a mammoth task. <!-- github-comment-id:4089536325 -->
Author
Owner

@l5yth I might be able to help with this. What do you think it would take to create a universal 'node' (MT/MC/Reticulum/???) with common properties, and then have protocol-specific ingesters that report the node data?

@l5yth I might be able to help with this. What do you think it would take to create a universal 'node' (MT/MC/Reticulum/???) with common properties, and then have protocol-specific ingesters that report the node data? <!-- github-comment-id:4132055716 -->
Author
Owner

@benallfree Thank you, this is much appreciated. The proposed ingestor refactoring into providers is the right way to do so and I support that, I'll review and consider it for inclusion (#651).

My main hesitation with this integration is, and I really want to have Meshcore support, how do we reflect that in the web app and especially in the front end?

  • How do we distinguish between 'tastic and 'core nodes and metadata?
  • How do we organize chat panels between the protocols?

I'm mainly unsure if we should have everyting in one (which is challenging but also kind of cool) or if we should have more of a separation of protocols (easier but also a bit lame).

Please, share your ideas and let's discuss this before starting to work on this.

@benallfree Thank you, this is much appreciated. The proposed ingestor refactoring into providers is the right way to do so and I support that, I'll review and consider it for inclusion (#651). My main hesitation with this integration is, and I really want to have Meshcore support, how do we reflect that in the web app and especially in the front end? - How do we distinguish between 'tastic and 'core nodes and metadata? - How do we organize chat panels between the protocols? I'm mainly unsure if we should have everyting in one (which is challenging but also kind of cool) or if we should have more of a separation of protocols (easier but also a bit lame). Please, share your ideas and let's discuss this before starting to work on this. <!-- github-comment-id:4137992483 -->
Author
Owner

I'm thinking the UI shouldn't particularly care where the node came from. We would need a Node Type discriminator somewhere so we could apply filters on the frontend. (Show me only Meshtastic nodes, show me only MeshCore nodes, or show me everything.)

Showing everything at once seems a little confusing on the surface, since the meshes don't currently interoperate, but it does yield valuable information about the overall size and capacity of installed nodes in an area. And, MC/MT interop is something a lot of people are exploring so it might actually be more useful soon.

I'm actually so new to Potato Mesh that I didn't even realize it was logging public channel chats. That should definitely be threaded by Node Type and Channel Name. It could have similar filters and if someone wanted to they could view all meshes / all channels, but that would be a pretty confusing looking log.

Overall my big thought is add a Type field to the node schema so we can discriminate on that with UI filters.

I'm thinking the UI shouldn't particularly care where the node came from. We would need a Node Type discriminator somewhere so we could apply filters on the frontend. (Show me only Meshtastic nodes, show me only MeshCore nodes, or show me everything.) Showing everything at once seems a little confusing on the surface, since the meshes don't currently interoperate, but it does yield valuable information about the overall size and capacity of installed nodes in an area. And, MC/MT interop is something a lot of people are exploring so it might actually be more useful soon. I'm actually so new to Potato Mesh that I didn't even realize it was logging public channel chats. That should definitely be threaded by Node Type and Channel Name. It could have similar filters and if someone wanted to they could view all meshes / all channels, but that would be a pretty confusing looking log. Overall my big thought is add a Type field to the node schema so we can discriminate on that with UI filters. <!-- github-comment-id:4138119764 -->
Author
Owner

Ok, I'll work on that next. I'll add a protocol field to ingestor, api, and database schema and potentially make a release so that going forward all existing reports get tagged as meshtastic and then we can start building on top of that for other protocols (without the need to do anything on the frontend yet).

Ok, I'll work on that next. I'll add a `protocol` field to ingestor, api, and database schema and potentially make a release so that going forward all existing reports get tagged as `meshtastic` and then we can start building on top of that for other protocols (without the need to do anything on the frontend yet). <!-- github-comment-id:4148720841 -->
Author
Owner

That sounds right. Let me know if you need help. I’ll get to working on meshcore and reticulum iingesters.

One thing that comes to mind, I don’t think those other protocols push telemetry, so that’ll be interesting

That sounds right. Let me know if you need help. I’ll get to working on meshcore and reticulum iingesters. One thing that comes to mind, I don’t think those other protocols push telemetry, so that’ll be interesting <!-- github-comment-id:4148791183 -->
Author
Owner

@l5yth hey I saw some MC commits, let me know if you need any help! Looks like you're on a roll.

@l5yth hey I saw some MC commits, let me know if you need any help! Looks like you're on a roll. <!-- github-comment-id:4181888641 -->
Author
Owner

@benallfree thanks!

yeah, I'm trying to get an MVP working by next Wednesday for our local mesh meetup in Berlin.

But the timeline is tight. I finished implementing the backend: ingestor -> api -> schema.

If you want, give it a go an run an ingestor with PROVIDER=meshcore environment variable and report bugs!

I think, the logic is sound but I need more time to test.

@benallfree thanks! yeah, I'm trying to get an MVP working by next Wednesday for our local mesh meetup in Berlin. But the timeline is tight. I finished implementing the backend: ingestor -> api -> schema. If you want, give it a go an run an ingestor with PROVIDER=meshcore environment variable and report bugs! I think, the logic is sound but I need more time to test. <!-- github-comment-id:4182041716 -->
Author
Owner

@l5yth I assume we need to be running the latest server as well, yeah?

@l5yth I assume we need to be running the latest server as well, yeah? <!-- github-comment-id:4182140686 -->
Author
Owner

Yes, take a look at data/mesh.sh and web/app.sh as there is no docker image yet.

But I'll also make a release today or tomorrow for testing.

Edit, I just pushed v0.5.12-rc0 if you want images

Yes, take a look at data/mesh.sh and web/app.sh as there is no docker image yet. But I'll also make a release today or tomorrow for testing. Edit, I just pushed v0.5.12-rc0 if you want images <!-- github-comment-id:4183376961 -->
Author
Owner

@l5yth I'll be throwing in a bunch of PRs as I go through testing today. Feel free to take them or leave them, I'll try to keep them clean and separated so you can choose easily :)

@l5yth I'll be throwing in a bunch of PRs as I go through testing today. Feel free to take them or leave them, I'll try to keep them clean and separated so you can choose easily :) <!-- github-comment-id:4184407044 -->
Author
Owner

Done ;-)

Feel free to test v0.6.0-rc0 and report bugs. Run the ingestor with PROTOCOL=meshcore. I'll make sure to update the docs.

Image
Done ;-) Feel free to test `v0.6.0-rc0` and report bugs. Run the ingestor with `PROTOCOL=meshcore`. I'll make sure to update the docs. <img width="2560" height="1440" alt="Image" src="https://github.com/user-attachments/assets/c83c0b76-5568-42f4-bada-e0d6e6da5d05" /> <!-- github-comment-id:4194435880 -->
Author
Owner

And we are live https://potatomesh.net/

And we are live https://potatomesh.net/ <!-- github-comment-id:4205389861 -->
Author
Owner

@l5yth Just in time! Let us know how the demo goes :)

@l5yth Just in time! Let us know how the demo goes :) <!-- github-comment-id:4206628922 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/potato-mesh#136