[Feature Request]: Simple send and receive platformIO sketch for the esp32s3 #6251
Replies: 4 comments 22 replies
-
@thebentern, @caveman99, @GUVWAF, @fifieldt link anyone else you think might be interested. I teach high school robotics and am connected with Harvard through the TinyML4D admin team. Our goal is to bring machine learning on microcontrollers to developing countries. LoRa is a great fit for machine learning since it takes complex sensory input (think: vision) and reduces it to a simple response (think: I see three sheep). I want to like LoRaWAN, but it’s just such a mess. TTN is terrible in North America, and Helium could be good but has sacrificed simplicity for multiple reasons. Meshtastic is the best solution, but there are other (IMHO not as good) options, such as Reticulum Network Stack, Briar, and Yggdrasil. The only issue with Meshtastic, is that I can't make a machine learning model on an ESP32 and send the result over the Meshtastic network without requiring two MCUs. That’s crazy, and I prefer to stay away from crazy. There also doesn’t seem to be a simple way for a microcontroller to receive a command from the Meshtastic network—for example, a basic "open the gate" command that an MCU can execute doesn’t seem easy to implement. Am I missing something? Can these capabilities be achieved? If Meshtastic is to grow into a truly useful network—taught by thousands of educators worldwide and valuable in disaster situations—then I think these issues need to be addressed. Any opinions? Obviously, the Meshtastic business model has been to not encourage Arduino integration. I understand that, because it kept the network clean and controlled, but now that Meshtastic has gained a bit of a following, is it time to re-evaluate arduino connectivity? |
Beta Was this translation helpful? Give feedback.
-
Before trying the @GUVWAF can you do a quick check if this folder is supposed to be called I guess the definition for the run command could also be the problem. I see lots of variants labelled both ways. Any suggestions? On the good side So glad someone made the Gitpod link. Gitpod is a godsend to education. On that note when using the esp web flasher tool typically you describe the addresses that the web flasher addresses. Anyone got that information for the Mestastic code. |
Beta Was this translation helpful? Give feedback.
-
The issue is that there can only be one client app connected at a time, since the API is not designed to be multiplexed. Instructing it to send from two clients will work, but only one of them can receive packets at a time. It would require a redesign of the API to support multiple connections, which I expect to be a lot of work.
Don't think that really fits for RadioLib. Maybe better to discuss with the folks that were talking about using Meshtastic as a library today here: #5739 |
Beta Was this translation helpful? Give feedback.
-
@GUVWAF Got it working. Thank you so much for making this example. I will see what I can do with it from the machine learning point of view. The issue was, your example correctly loaded Meshtastic main channel with encryption. both my meshtastic nodes had zero encryption. Not sure if I set it that way or not but I think they were default flashed. Anyway the client helped debug the problem. I guess everyone should be encouraged to use the client, which was an easy install. You can close this if you want. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Platform
ESP32
Description
A new very affordable $9.90 USD esp32s3 with sx1262 LoRa module is out.
https://wiki.seeedstudio.com/wio_sx1262_with_xiao_esp32s3_kit/
This kit comes with Meshtastic pre-installed but could also be very useful for education. I have a working LoRa P2P on it, https://forum.seeedstudio.com/t/xiao-esp32s3-wio-sx1262-arduino-ide-lora-error/284419/15 but really feel that an Arduino IDE maintained sketch would really increase the number of Meshtastic users. The sketch(s) would just need send and receive.
The present concept of connecting two Arduinos, one for Meshtastic and one for sensor/actuator is just not feasible and it is a bit sketchy that no-one has looked into the Arduino-IDE for Meshtastic. (Historically other startups keep things locked up so that they can eventually charge a monthly fee once the user-base is large enough "I have had my education code deprecated this way several times over the last 35 years").
I have got the platformio firmware installing on my esp32s3-sx1262 kit but it frankly is too complex. I don't need all the WiFi and BlE capabilities. To develop teachable machine learning with Meshtastic all I need is a receive code and a send code preferably in two separate sketches.
I guess a good starting point would be a PlatformIO send and a PlatformIO receive sketch instead of an Arduino-IDE sketch. Is that a sensible feature request? I am surprised someone hasn't hacked a solution yet, It is just AES-CTR 256 encryption where the channel name is the key. I think it would be much better if Meshtastic supported simple send receive. This new board would be a really good starting point, as it is well made, powerful and inexpensive.
https://www.seeedstudio.com/Wio-SX1262-with-XIAO-ESP32S3-p-5982.html
I have a robotics, IoT, Machine Learning High School (undergrad) curriculum and would like to include a usable connection with Meshtastic.
https://github.com/hpssjellis/maker100-eco
Jeremy Ellis
Beta Was this translation helpful? Give feedback.
All reactions