Releases: meshtastic/firmware
Meshtastic Firmware 2.4.2.5b45303 Beta
Enhancements
- Add the UF2 conversion script to the p.io task menu by @Nestpebble in #4337
- Promicro_diy variants: RF95 SX1268 support by @mrekin in #4338
- Enable STM32 build by @thebentern in #4339
- Adds a userPrefs.h file, default blank, used for default settings for custom builds by @jp-bennett in #4325
- Macro to trace log all MeshPackets as JSON by @thebentern in #4336
- Event mode: Enforce reliable hop limit and disallow default public MQTT by @thebentern in #4343
- Make LogRecord protobuf serial logging over Phone API opt-in instead by @thebentern in #4358
- PA FAN Disable by @gjelsoe in #4355
- Add support for ATGM332D series GPS by @fifieldt in #4351
- Add trackerd to build. by @alexander-smyslov in #4347
- Event mode: Block problematic portnums of traffic by @thebentern in #4362
- Generalize SWD debugging stuff so it works on all nrf52 targets. by @geeksville in #4377
- Initial Support for Heltec VM-T190 by @HarukiToreda in #4391
- "Scan and Select" input for Canned Messages by @todd-herbert in #4365
- Add more exclude options to save program ram/flash by @jp-bennett in #4408
- Add Minewsemi LR1110+nRF52840-ME25LS01 [both 4.2inch e-ink and non e-ink varaint] by @markbirss in #4387
- Make SPI frequency configurable on Native by @jp-bennett in #4369
- Initial support for HT-VME290, sleep fixes for HT-VME213 by @todd-herbert in #4334
Bug fixes
- Remove unused define in NRF52 architecture by @fifieldt in #4350
- Add #define USE_SSD1306 to avoid automatic detection causing pixel sh⦠by @Oliver0804 in #4356
- Cleanup for Air530z GPS by @fifieldt in #4344
- Cleanup - remove unused defines. by @fifieldt in #4353
- Adding support for Chatter keypad by @Gnu-Bricoleur in #4022
- Changed a RADIOMASTER_900_BANDIT_NANO to DISPLAY_FLIP_SCREEN by @gjelsoe in #4366
- Remove empty file, StatusHandler.h by @fifieldt in #4372
- Remove OSTimer by @fifieldt in #4373
- Fix build to not use incorrect OneButton version by @geeksville in #4374
- Automatically generate .uf2 files anytime we generate a .hex file for nrf52 by @geeksville in #4370
- Fix #4367 make USB power detection work correctly on seeed trackers by @geeksville in #4376
- Actually set the rand() seed for Portduino by @jp-bennett in #4380
- Configure pin modes of selected pins before attempting to write to them in Remote Hardware module by @Kealper in #4385
- Output more useful log message when the NodeDB is full by @jp-bennett in #4389
- Remove LED_INVERTED, see below for why ;-) by @geeksville in #4382
- Make lora radio reset reliable on wio-tracker-1100 and lower lr11x0 power consumption in sleep by @geeksville in #4383
- Fix UC6580 ifdefs by @fifieldt in #4393
- Fix python call in UF2 generation. by @fifieldt in #4392
- Fix minor type comparison warning that I saw in the build by @geeksville in #4398
- Make UF2 build command windows-friendly by @fifieldt in #4399
- Use sys.executable to refer to python. by @fifieldt in #4402
- Finish powermon/powerstress by @geeksville in #4230
- Fix #4184: loss of config files due to filesystem full on nrf52 by @geeksville in #4397
- Add more exclude options to save program ram/flash by @jp-bennett in #4408
- Updted protobuf url in X-Protobuf-Schema header by @KomelT in #4411
- Remove outdated comments by @fifieldt in #4417
New Contributors
- @Nestpebble made their first contribution in #4337
- @Oliver0804 made their first contribution in #4356
- @alexander-smyslov made their first contribution in #4347
- @Gnu-Bricoleur made their first contribution in #4022
- @Kealper made their first contribution in #4385
- @KomelT made their first contribution in #4411
Full Changelog: v2.4.1.394e0e1...v2.4.2.5b45303
Meshtastic Firmware 2.4.1.394e0e1 Beta
Important
This version removes the status (/stat) MQTT topic support from the firmware. Stay tuned for some exciting features ahead for MQTT.
Enhancements
- Update SD_FLASH_SIZE to 0x27000 by @fifieldt in #4232
- Sync Wio lr1110 refresh with master by @fifieldt in #4251
- Remove status topic by @thebentern in #4305
- Serial Mode for Ecowitt WS85 weather station. by @tavdog in #4296
- Moar LR1110 Targets by @caveman99 in #4148
- Cleanup GPS, add UC6580 autodetect by @fifieldt in #4319
- Support Seeed Tracker-T1000-E by @Dylanliacc in #4303
- Make STM compile again and update toolchain. by @caveman99 in #2960
- JSON serialization refactor by @thebentern in #4331
- Fix typo by @thebentern in #4323
- Set PIN_3V3_EN to HIGH (nrf52_promicro_diy variants) by @mrekin in #4321
- Just a bit of security hygiene. by @jp-bennett in #4313
- Ignore invalid service envelopes by @thebentern in #4326
Bug fixes
- Wait for I2C power to stabilize on Heltec VME213; tidy variant folder by @todd-herbert in #4308
- Remove duplicate code and fix error: #if with no expression by @Mictronics in #4307
- Fix T1000-E GPS - some changes went missing from #4303? by @markbirss in #4328
- Fix de/compression buffer overflows in TAK packets by @thebentern in #4317
- Fix a typo in src/mesh/MeshService.h by @r41d in #4314
New Contributors
- @Dylanliacc made their first contribution in #4303
Full Changelog: v2.4.0.46d7b82...v2.4.1.394e0e1
Meshtastic Firmware 2.4.0.46d7b82 Beta
Important
Version 2.4 along with the last 2.3.X update brings some default traffic management practices to increase the resilience of larger meshes and allow more airtime for messaging. Some of the important changes which help accomplish this:
- Deprecation of
ROUTER_CLIENT
role (2.3.15) - Move up all telemetry default intervals to every 30 minutes (instead of 15 minutes)
- Don't send node info interrogation for unknown nodes when Ch. utilization is >25%
- Scale configured / default intervals back based on online mesh size > 40 nodes
- Requesting history from a Store & Forward Server over LoRa is not available on the channel with default key. As a new feature, when connecting to it with a client app, the history will be retrieved automatically.
Enhancements
- Add wio-sdk-wm1110 to build. by @fifieldt in #4258
- Add Heltec new boards. by @Heltec-Aaron-Lee in #4226
- GPS Power State tidy-up by @todd-herbert in #4161
- Optimize the shutdown current of RAK10701 to around 25uA by @DanielCao0 in #4260
- INA3221 sensor: use for bus voltage & environment metrics by @warrenguy in #4215
- WM1110 SDK kit enter serial DFU and add deployment packages by @thebentern in #4266
- Show specific frame when updating screen by @todd-herbert in #4264
- Move up telemetry defaults to every 30 minutes by @thebentern in #4274
- Don't send node info interrogation when ch. util is >25% by @thebentern in #4273
- Scale default intervals for online mesh size past 40 nodes by @thebentern in #4277
- Add Seeed Wio WM1110 to Github issue template by @fifieldt in #4283
- Let StoreForward server send history to phoneAPI by @GUVWAF in #4282
- Initial work for Heltec Vision Master 213 by @HarukiToreda, @todd-herbert in #4286
Bug fixes
- Fix that Dockerfile would not run with podman by @r41d in #4262
- Fix python warning in uf2conf by @geeksville in #4235
- Remove softdevice folder from wio-sdk-wm1110 by @fifieldt in #4295
- Migrate to new module config interval defaults by @thebentern in #4294
New Contributors
Full Changelog: v2.3.15.deb7c27...v2.4.0.46d7b82
Meshtastic Firmware 2.3.15.deb7c27 Beta
Important
Regarding deprecation of ROUTER_CLIENT
role:
This role was deprecated because it's frequent misuse in non-strategically placed roles, leading to increased rebroadcast packet collisions as well as premature hop consumption decreasing the effective range of a mesh. In some larger public meshes, it has been reported that almost half of the nodes were configured as ROUTER_CLIENT
and ROUTER
. Going forward, the mixed ROUTER_CLIENT
role will be retired and simply behave as the CLIENT
role.
Alternatively, users can decide to use the ROUTER
role if their node does indeed fall into the strategically placed criteria, such as on top of a mountain, skyscraper, or any other location with a significant line of sight viewshed advantage. Examples of non-strategically placed nodes would be any mobile node, a car node, a home node on a mast, or really any node without significant elevation difference providing advantage to the mesh's reach. Nodes under those placement conditions should not be configured as ROUTER
or REPEATER
role.
Enhancements
- Add semihosting support for nrf52 devices by @geeksville in #4137
- Display alerts by @jp-bennett in #4170
- Send file system manifest up on want_config by @thebentern in #4176
- Tell vscode, if formatting, use whatever our trunk formatter wants by @geeksville in #4186
- Show owner.short_name on boot (and E-Ink sleep screen) by @Dorn8010 in #4134
- Force a compile time failure if FromRadio or ToRadio get larger than by @geeksville in #4190
- Make the logs Colorful! by @jp-bennett in #4199
- Squash needlessly static functions by @jp-bennett in #4183
- Deprecate Router Client role (and make it Client) by @thebentern in #4201
- When talking via serial, encapsulate log messages in protobufs if necessary by @geeksville in #4187
- New new BLE logging characteristic with LogRecord protos by @thebentern in #4220
- Minor cleanup proposal by @geeksville in #4169
- Add PowerMon support by @geeksville in #4155
Bug fixes
- Nrf52 soft device will watchdog if you use ICE while BT on... by @geeksville in #4189
- Correct xiao_ble build preventing sx1262 init by @quimnut in #4191
- Fix exclude macros by @mverch67 in #4233
- Fix typo in build-nrf52.sh by @fifieldt in #4231
- Typo fix in logs - mhz - MHz by @fifieldt in #4225
- Move waypoint by @jp-bennett in #4202
- Fix flakey phone api transition from file manifest to complete by @thebentern in #4209
- Color fix platformio by @mverch67 in #4217
- Fix SHT41 support by @fifieldt in #4222
- Clear vector after complete config state by @thebentern in #4194
- Fix exclude macros by @mverch67 in #4233
- Fix typo in build-nrf52.sh by @fifieldt in #4231
- Tidy Wireless Paper variant files by @todd-herbert in #4238
- Updated raspbian CI to update apt repository ahead of libbluetooth. by @blu006 in #4243
- Fix BLE logging on nrf52 by @geeksville in #4244
- Fix build when HAS_NETWORKING is false on nrf52 by @geeksville in #4237
- Notify client to empty
toPhoneQueue
if it's full by @GUVWAF in #4246 - Update to SoftDevice 7.3.0 for wio-sdk-wm1110 and wio-tracker-wm1110 by @markbirss in #4248
- Cleanup NRF s140 Softdevice variants by @fifieldt in #4252
New Contributors
Full Changelog: v2.3.14.64531fa...v2.3.15.deb7c27
Meshtastic Firmware 2.3.14.64531fa Alpha
Enhancements
- Speed up OLED Display by transferring bigger chunks by @caveman99 in #4138
- Add support for Heltec HRU-3601 by @ndoo in #4129
- Add REGULATORY_GAIN configuration to remain within regulatory ERP limit by @ndoo in #3836
- Make serial port on wio-sdk-wm1110 board work by @geeksville in #4149
- Use
upload_protocol = esptool
as with the other heltec devices... by @mkgin in #4151 - Standardize lat/lon position logs by @thebentern in #4156
- Pause BLE logging during want_config flow by @thebentern in #4162
- BLE based logging by @thebentern in #4146
- Show compass on waypoint frame; clear when waypoint deleted by @todd-herbert in #4116
- Update NimBLE to 1.4.2 by @thebentern in #4163
- Implement replies for all telemetry types based on variant tag by @GUVWAF in #4164
Bug fixes
- Fix for MESHTASTIC_EXCLUDE_INPUTBROKER by @mverch67 in #4130
- Boot issue fix of Cardkb on ESP32 by @HarukiToreda in #3933
- Mask the I2C rescan for portduino by @caveman99 in #4143
- Fix protobuf structs handling by @mskvortsov in #4140
- Fix INA3221 sensor by @warrenguy in #4168
New Contributors
- @mkgin made their first contribution in #4151
- @warrenguy made their first contribution in #4168
Full Changelog: v2.3.13.83f5ba0...v2.3.14.64531fa
Meshtastic Firmware 2.3.13.83f5ba0 Beta
Enhancements
- Rak10701: support touchscreen by @DanielCao0 in #4104
- New Device, Radiomaster Bandit Micro by @gjelsoe in #4077
- Add support for BMX160/RAK12034 compass module by @jp-bennett in #4021
- Add wind speed and direction to mqtt json output by @tavdog in #4080
- Workaround to disable bluetooth on NRF52 by @todd-herbert in #4055
- Add Heltec Capsule Sensor V3 to the Meshtastic source code by @Heltec-Aaron-Lee in #4086
- Feature-mqtt: add hop_start and hop_limit to MQTT uplink by @ab0oo in #4088
- Update nrf52 platform to 10.5.0 by @thebentern in #4113
- E-Ink screensaver validates short name by @todd-herbert in #4115
- Add NAU7802 based scale controller. by @caveman99 in #4092
- Add RAKwireless WisMesh Hub (RAK2560/RAK9154) by @beegee-tokyo in #4117
- Add rak4631_dap variant for debugging with NanoDAP debug probe device. by @geeksville in #4123
Bug fixes
- Fix uBlox M10 GPS doesn't sleep if device is switched off by @craft4tnt in #4062
- Fix compiler warnings by @thebentern in #4112
- GPS: short update intervals, lock-time prediction by @todd-herbert in #4070
- Ensure data directory ownership is with mesh user by @wnagele in #4097
- Relax changes from #4001 to allow GPS and NTP as trusted sources by @wnagele in #4068
- Update OLED ref by @todd-herbert in #4125
New Contributors
- @craft4tnt made their first contribution in #4062
- @ab0oo made their first contribution in #4088
- @DanielCao0 made their first contribution in #4104
- @beegee-tokyo made their first contribution in #4117
Full Changelog: v2.3.12.24458a7...v2.3.13.83f5ba0
Meshtastic Firmware 2.3.12.24458a7 Beta
Enhancements
- Add TSL2591 lux sensor support by @thebentern in #4014
- TI OPT3001 light sensor support by @thebentern in #4015
- MLX90632 IR temperature sensor support by @thebentern in #4019
- Update Radiolib to 6.6.0 by @caveman99 in #4023
- LR1110 support by @caveman99 in #3013
- DFRobot Lark weather station support by @thebentern in #4032
- Add missing excludes to environmental sensors by @thebentern in #4033
- Radio Master 900 Bandit Nano Power output interpolation by @gjelsoe in #4057
- Add missing hops in traceroute as "unknown" nodes by @GUVWAF in #4056
Bug fixes
- Tryfix random telemetry values by @caveman99 in #4034
- Tryfix bme some more by @caveman99 in #4025
- Minimized build fixes by @Talie5in in #4049
- Avoid assert on receiving undecryptable packet by @GUVWAF in #4059
- Use correct hardware tag for tracker and sdk by @caveman99 in #4036
- Typo: 'our our' to 'of our' by @jcyrio in #4037
- Fix: two button presses sometimes required to wake screen by @todd-herbert in #4052
- Compile without toolchain patching by @caveman99 in #4053
- Fix dead link in EU_868 documentation by @Jorropo in #4048
- Triple-press not disabling GPS by @todd-herbert in #4041
- Fix crash during reset nodedb by @mverch67 in #4017
New Contributors
Full Changelog: v2.3.11.2740a56...v2.3.12.24458a7
Meshtastic Firmware 2.3.11.2740a56 Beta
Enhancements
- Update platformio/espressif32 to the latest 6.7.0 by @mskvortsov in #3899
- Add canned message free text via touch keyboard and watch face frames to T-Watch S3 by @andrew-moroz in #3941
- Portduino: Catch the keyboard power button and initiate poweroff by @jp-bennett in #3953
- Oled screen emojis by @868meshbot in #3940
- Screen changes from time deltas to timestamps after 15 minutes by @todd-herbert in #3935
- Don't alloc NodeInfo replies when channel utilization is > 40% by @thebentern in #3991
- Added "Hops away" on display by @capslockapocalypse in #3934
- Add support for to_callsign on GeoChats for ATAK by @thebentern in #3996
- User experience improvement - app battery icon by @neilhao in #3979
- Send own node-info earlier and move others to the end of want-config flow by @thebentern in #3949
- Add support for RadioMaster Bandit Nano by @thebentern in #4005
- Added AHTx0 sensor by @fzellini in #3977
- Dragino trackerd by @fzellini in #4002
Bug fixes
- Prevent spontaneous screen-on while charging by @todd-herbert in #3939
- T-Watch-fix: Fully insulate T-Watch free text updates from other hardware platforms by @andrew-moroz in #3966
- Bump portduino to pick up improvements to reboot() by @jp-bennett in #3975
- Fix memory leak when there's no display by @mskvortsov in #3972
- Fix time updates from client device and potentially incorrect UI frame receiving 'toggle watch face' button tap by @andrew-moroz in #3974
- Fix original esp32 boot init panic by @mskvortsov in #3985
- Don't send potentially bogus timestamps with fixed location by @jp-bennett in #4001
- Run tzset() and localtime() in getTZOffset() to ensure proper timezone offset by @jp-bennett in #3999
- Update the Heltec board battery level read accuracy. by @Heltec-Aaron-Lee in #3955
- Tracker v1.1 - fix pin 3 description in variant.h by @jonagnew in #3990
- Tryfix: init change for BME680 by @caveman99 in #3965
New Contributors
- @868meshbot made their first contribution in #3940
- @capslockapocalypse made their first contribution in #3934
- @Heltec-Aaron-Lee made their first contribution in #3955
- @jonagnew made their first contribution in #3990
- @fzellini made their first contribution in #3977
Full Changelog: v2.3.10.d19607b...v2.3.11.2740a56
Meshtastic Firmware 2.3.10.d19607b Beta
Important
If you are seeing sporadic artifacts in environmental telemetry data, we suggest upgrading to 2.3.11 or above.
Enhancements
- Implementation of the sensor VEML7700 by @Dr-Gandalf in #3893
- Add optional define DEBUG_MUTE by @caveman99 in #3859
- Enhanced t-echo file system integrity check by @lewisxhe in #3818
- Unphone has a display, don't default BLE PIN to 123456 by @caveman99 in #3865
- Add bobricius tracksenger variants by @caveman99 in #3866
- Implement "Flip screen" setting for E-Ink displays by @todd-herbert in #3871
- RP2040: Add
getFreeHeap()
andgetHeapSize()
support by @GUVWAF in #3890 - Change SHT4X sensors library from Sensirion to Adafruit by @pr000t in #3891
- GPS Chechsum failures by @GPSFan in #3900
- Don't reboot for certain config prefs and make accelerometer thread re-entrant by @thebentern in #3889
- Update sensor libs by @caveman99 in #3904
- Move the power rail init earlier in the startup process on 4630 by @caveman99 in #3925
Bug fixes
- Fix static ip assignment on wifi for rp2040 by @The3rdPlace in #3896
- Remove has screen = 0 from wsl variant by @rcarteraz in #3917
- Lib pax counts threshold #3885 by @caveman99 in #3915
- Adjust refresh for Heltec Wireless Paper V1.1 by @todd-herbert in #3913
- Fix immediate wake from deep-sleep for some devices by @todd-herbert in #3884
- Add psram flag on RAK11200 board definition by @caveman99 in #3887
- Debconf expects absolute paths. by @jp-bennett in #3924
- Remove screen pinning for pico targets by @caveman99 in #3930
- Lock Portduino to MAGIC_USB_BATTERY_LEVEL for now by @jp-bennett in #3894
- Remove logging of actual payload strings (and compressed) for TAK packets by @thebentern in #3922
- Put T-Beam supreme back to the future by @thebentern in #3944
- Add final debug call for Portduino reboot by @jp-bennett in #3945
- Fix native compilation for linux PCs by @mverch67 in #3895
New Contributors
- @Dr-Gandalf made their first contribution in #3893
- @The3rdPlace made their first contribution in #3896
Full Changelog: v2.3.9.f06c56a...v2.3.10.d19607b
Meshtastic Firmware 2.3.9.f06c56a Alpha
Enhancements
Important
If you have a T-Beam Supreme (S3 Core) device, this release has known issues with using the CLI over USB connection, which is fixed in the next release.
- Increase button responsiveness by @todd-herbert in #3801
- T-Echo screen and button performance by @todd-herbert in #3840
- Enable telemetry and power telemetry on the native target by @jp-bennett in #3844
- Default to new vendor ntp pool by @thebentern in #3819
- New variants PROMICRO_DIY by @mrekin in #3788
- Add Sensirion SHT4X sensors by @pr000t in #3792
- Added modifier key combination to allow keyboard shortcuts on t-deck by @nbaddorf in
- Check if packet is not released before CC to phone by @GUVWAF in #3787
- Add MESHTASTIC_EXCLUDE_ENVIRONMENTAL_SENSOR exclusion to RCWL9620 by @oseiler2 in #3800
- Support radar sensor RCWL-9620 on i2c by @caveman99 in #3678
- Wiphone by @caveman99 in #3793
Bug fixes
- Fix #MESHTASTIC_EXCLUDE_ENVIRONMENTAL_SENSOR by @oseiler2 in #3776
- Fix the infinite restart caused by unformatted t-echo fs file system by @lewisxhe in #3775
- Enable compiling with gccnoneeabi 12.3.1 for nRF52 targets, additional small fixes by @tuxphone in #3778
- Fix for EnvironmentTelemetry Screen by @HarukiToreda in #3785
- Send fixed position to mesh after setting it by @thebentern in #3803
- Revert "Fix T-Beam S3 USB CLI #3736" by @thebentern in #3809
- Eliminate non-text output for Portduino by @jp-bennett in #3817
#3668 - First stab at fixing ch341 by @jp-bennett in #3847
New Contributors
- @tuxphone made their first contribution in #3778
- @mrekin made their first contribution in #3788
- @pr000t made their first contribution in #3792
Full Changelog: v2.3.8.d490a33...v2.3.9.f06c56a