I have ported @scummvm@manitu.social to LilyGo t-deck ( esp32s3) And I have no cardreader to put a game to test it right now. Have to wait couple of days. 😭😭#scummvm
circfruit
mastodon 4.7.3
🇧🇬 🇪🇺 I’m Lawyer, interested in electronics, Python and Apple ][ hardware. Emacs user.
Whoa success! I managed to send audible voice msg from t-deck #reticulum to MeshChat. Three days struggle 😭 The culprit was the tight loop of screen refreshing, keyboard poll, LoRa poll and i2s mic capture. It turns out esp32 core was skipping bytes from the mic which caused the codec to encode partial voice, causing inaudible msg. I gave preference to i2s bus and now the msgs are good enough and go over LoRa to meshchat successfully. Now i have voice and image transport on t-deck!
Going beyond the home lab, today i put up 2 more #reticulum transport nodes with modified #microreticulum firmwares (responding with battery % on msg). I managed to get messages through from about 7km away with 3 hops over LoRa and 1 TCP interface. Obviously the ultimate goal is to send an image at that distance, I but need to fix some bugs on the t-deck firmware because it failed me.
I’m walking in the dusky foggy field like a freak, testing #reticulum transport node. 😂 It defo worked, as I was able to remotely switch on the led of another node at home which has minuscule antenna.
I’ve added jpeg view on the #reticulum t-deck #micropython chat app. Looks so cool 😁 I have to make a video about this. Basically when t-deck sends “image” keyword to the camera node, the former gets back a camera capture and can show it on the screen. I do some centering and resizing to fit it on 320x240 on the deck’s screen. Again, for the sake of speedy jpeg decoding, I compiled a C module with micropython bindings.
Second try with solar #reticulum transport node - this time a bit higher on the chimney. Current path: laptop TCP -> RPI with Rnode and TCP (transport enabled) -> solar transport node (modified microreticulum firmware). Good passthrough for announces to a 1km away second solar node, but can’t get msg past that first solar node. The first solar node itself replies with battery status. I guess i need to refresh the second solar node with the last modifications/fixes.
I’m hitting the same problem with micro #reticulum firmware as with the #meshtastic one. Solar node’s battery can die if we have a week of cloudy skies. With microreticulum, the whole eprom data is written in a single LittleFS file. If the controller browns-out while writing on the EEPROM, it corrupts it and when the battery is charged back, the firmware fails with “eeprom not provisioned”. This makes putting a transport node in the wild pointless. I’ll see if I can make this more resilient.
Right. The #micropython #reticulum port is getting actually quite usable. With addinng direct link messaging and file transfers, we can actually:
1. Put a stand alone #nomadnet page on an esp32s3 microcontroller,
2. Connect some sensors to it and put it into a solar powered enclosure
3. Fire up the LoRa radio chip
4. Put it up somewhere on a high tree
and you can serve information pages with files (even camera pictures or sound recordings) and live sensor data over LoRa purely off grid!
I spent all day yesterday (I shouldn’t have): 1. Trying to resolve microreticulum transport issue. I can’t test/fix properly unless I reduce the dbm of tree nodes and simulate network and not going up and down the roof all the time; 2. Tried to implement voice msg in t-deck #reticulum micropython firmware. I got the receiving part ok on codec2 3200, but can’t make it send proper voice. There’s some weird math going on which I can’t fix right now. I suspect the mic capture quality is bad.
I’ve uploaded to GitHub my RNSD #reticulum MacOS menubar app. It’s a python app, so source code is easy to read. It’s basically a GUI wrapper of rnsd and its sister commands. You can put it in your startup apps on the MacOS to have a reticulum daemon running all the time. For the ones who don’t want to bundle it themselves, i’ve included a bundled executable in the Releases section, so you can just unzip and put it in your /Applications folder (app is not signed 😄) https://github.com/varna9000/rnsd-menubar
Damn, I got kicked in the balls by #reticulum’s Mark Qvist himself 😂 I was playing with MeshChatX and it never occurred to me that images send by reticulum chat apps are in Webp format. This means I have to implement decoder for this format for micropython (or C) and to be small enough not to choke the microcontroller. Esp32s3-cam has native jpeg and I already decode this on t-deck ok. So Mark says JPEGs are obsolete and chat app should’t support it (at least for sending)
I've implemented imperfect rns:// scheme into MacOS rendering #reticulum #nomadnet pages through rnsd-menubar app. It basically converts micron to html, so it can be shown on the browser. Unfortunately I can’t open rns:// in the same tab I type the address - it has to be a new window - but it’s still Safari. This essentially can enable putting rns:// links in regular html pages tags and if you click it will open the nomad page in new window.
I got this ridiculous unresolved problem with #meshtastic Randomly solar nodes stop working and microcontroller doesnt work unless reset. Battery is fine and being charged ok so might be firmware issue. There’s issue on github but it’s unresolved. So i’m thinking of hooking ds3231 rtc module and program an allarm to trigger reset of meshtastic micro. It’s a hack but should work.
When I’ve put up #reticulum nodes out in the wild and the (LoRa part) network grows, some problems start to surface, mainly due to hardware constrains. It turns out nrf52840 based nodes are good for battery efficiency, but the insufficient flash, is kind of bummer. The problem was
1. routing is saved on the flash - 1 file per heard node. However LittleFS works with 4kb per block, which means we are wasting precious space as most of the block is empty. So the free 76kb is exhausted really fast
I'm going to try something as workaround for (still) lack of iOS app for #reticulum messaging app. I’m porting the existing Micropython port to WebAssembly. The plan is to make it work as progressive app on your iPhone e.g load from a website, create your id hash, save it locally and connect to a TCP interface, then “make it app” as icon on your home screen. Theoretically it should work.
I need volunteers for a test. I’m hosting #nomadnet #reticulum page on my experimental micropython esp32s3 node. Could you connect with nomadnet capable browser (MeshChat would do fine) with a tcp interface to rn.varnatransport.com:4243 and see if you can load the page? On the page there’s a link with mp3 - easter egg message (2kb) 😁 The page is hosted on the esp32s3 itself (below). I’ll leave the node online for few hours to see if it’s stable with more than one link (me).
New updates of the rnsd-menubar #reticulum #macos app. Searchable, clickable #nomadnet lists which open the pages. I think I’ll leave this app like this. No need to re-invent MeshChat. Chnages are uploaded to GitHub: https://github.com/varna9000/rnsd-menubar
There’s some #reticulum discussion streaming right now https://www.youtube.com/watch?v=tnpsdDnUbXM
meh Hipster coffee €3.6, nice pork stew in modest diner where construction workers have lunch €3.6. I’m questioning my life choices.
oh FFS! All three solar transport #reticulum nodes which I put up yesterday have a bug - something is causing file system corruption, triggering new identification generation. The node list has now duplicate node names but different identities. The meshtastic curse is following rnodes!