Meshtastic

1.2.9 device and python alpha releases

REMINDER: If you are new to meshtastic - you should stay with the 1.1.x device and app releases for now ;-). 1.2 is going well but I think it is about a week before it is ready for new users.

There is a new python tool release that goes with this version. There is no new android release yet, probably not till late next week for that one. Because I’m going out of town most of next week. While out of town I’ll fix the 2-3 bugs ya’ll kindly reported in 1.2.7.

This release contains fixes for the following things:

  • Saved device settings were getting discarded when they should not be. This was bad bad.
  • Preferences are now split into three different types of files, which is necessary for the “rollback if a remote settings change is not confirmed within 10 minutes” rule. (Protects against incorrect sending settings changes to remote nodes that cause those nodes to drop off the mesh.
  • Admin packets are now sent/received only over the “admin” channel, which has a separate (and secret) key
  • Multiple channel support ‘works’, but I’m not ready to encourage its use until more python test harness progress. Also I need to write a beginnings of a ‘user manual’ entry on this topic.
  • A null pointer exception could happen in the storeandforward plugin

I’m also releasing an android app with this change (no important android code changes, but will contain this new firmware)
Third public alpha of this major release chain. I think at this rate within a week it will be ‘definitely better’ than 1.1.x.

Caveats:

  • Unless you truly want to be an ALPHA tester, you should stay with the 1.1.x device and app releases for now
  • firmware builds are now region independent. You must use the android (in the settings tab) or python (with --set region X) tools to set the region for your radio and location. However, we try to preserve old region info, so if you are updating it will try to keep your region correctly. If we don’t know your region we guess and use USA frequencies.
  • The URLs sent by meshtastic 1.2 can only be understood by mesthastic 1.2 or later

Major changes:

  • Settings & channels can now be changed remotely via messages inside the mesh (not yet ready for testing by ya’ll yet - first I want to make a python testharness)
  • We now ‘piggyback’ acks on application layer replies, this substantially reduces airtime consumed
  • Multiple channels are simultaneously supported (not yet ready for testing though - please wait until I write a full wiki on the topic)
  • Lots of internal cleanup which will result in smaller/faster packets

Full list of changes:

5 Likes

App 1.2.7 plus firmware 1.2.9 on two tbeams. Sending a rapid succession of the same msg from either, the first goes through and is received but without confirmation then the device resets. Also, after updating firmware I had to re pair ble, name user and recreate and share the channel. Previously recieved messages were intact.

Correction, sending any message and device resets.

Confirm.
After sending a message tbeam device resets :slight_smile:
(firmware 1.2.9, App 1.2.7)

I’ve been able to send a few without reset, multiples seem to trigger a reset more reliably. The reset is on the sending device and regardless of battery or usb power.

1 Like

oops! wrt crashes! I’ll investigate after breakfast - I think I know the cause.

yeah that was it. sorry - I forgot to run my standard integration test before making this release. It would have caught it (and it did when I tried it)… Fix coming in about an hour after the build completes.

meshtastic --test
INFO:root:Writing serial debugging to log_dev_ttyUSB0
INFO:root:Writing serial debugging to log_dev_ttyUSB1
Connection changed: meshtastic.connection.established
INFO:root:Ports opened, starting test
Connection changed: meshtastic.connection.established
INFO:root:Found devices, starting tests...
INFO:root:Running 50 tests with wantAck=True
INFO:root:Test succeeded 1 successes 0 failures so far
INFO:root:Test succeeded 2 successes 0 failures so far
INFO:root:Test succeeded 3 successes 0 failures so far
INFO:root:Test succeeded 4 successes 0 failures so far
INFO:root:Test succeeded 5 successes 0 failures so far
INFO:root:Test succeeded 6 successes 0 failures so far
INFO:root:Test succeeded 7 successes 0 failures so far
INFO:root:Test succeeded 8 successes 0 failures so far
INFO:root:Test succeeded 9 successes 0 failures so far
INFO:root:Test succeeded 10 successes 0 failures so far
INFO:root:Test succeeded 11 successes 0 failures so far
INFO:root:Test succeeded 12 successes 0 failures so far
INFO:root:Test succeeded 13 successes 0 failures so far
INFO:root:Test succeeded 14 successes 0 failures so far
INFO:root:Test succeeded 15 successes 0 failures so far
INFO:root:Test succeeded 16 successes 0 failures so far
INFO:root:Test succeeded 17 successes 0 failures so far
INFO:root:Test succeeded 18 successes 0 failures so far
INFO:root:Test succeeded 19 successes 0 failures so far
INFO:root:Test succeeded 20 successes 0 failures so far
INFO:root:Test succeeded 21 successes 0 failures so far
INFO:root:Test succeeded 22 successes 0 failures so far
INFO:root:Test succeeded 23 successes 0 failures so far
INFO:root:Test succeeded 24 successes 0 failures so far
INFO:root:Test succeeded 25 successes 0 failures so far
INFO:root:Test succeeded 26 successes 0 failures so far
INFO:root:Test succeeded 27 successes 0 failures so far
INFO:root:Test succeeded 28 successes 0 failures so far
INFO:root:Test succeeded 29 successes 0 failures so far
INFO:root:Test succeeded 30 successes 0 failures so far
INFO:root:Test succeeded 31 successes 0 failures so far
INFO:root:Test succeeded 32 successes 0 failures so far
INFO:root:Test succeeded 33 successes 0 failures so far
INFO:root:Test succeeded 34 successes 0 failures so far
INFO:root:Test succeeded 35 successes 0 failures so far
INFO:root:Test succeeded 36 successes 0 failures so far
INFO:root:Test succeeded 37 successes 0 failures so far
INFO:root:Test succeeded 38 successes 0 failures so far
INFO:root:Test succeeded 39 successes 0 failures so far
INFO:root:Test succeeded 40 successes 0 failures so far
INFO:root:Test succeeded 41 successes 0 failures so far
INFO:root:Test succeeded 42 successes 0 failures so far
INFO:root:Test succeeded 43 successes 0 failures so far
...