Commit Graph

67 Commits

Author SHA1 Message Date
Tim Wilkinson 976c3ec1e1
Improve initial node setup (#1590)
* Improve the initial nrvam setup

* More fallbacks

* Rebuild the initial setup and upgrade of a node.
This is mostly about removing duplicated effort and data, which should
make it easier to add things in the future.

* Re-setup and repair the node on each reboot.
By running this every time we reboot, we have a chance to repair problems in the configuration
automatically. We can detect changes and force a reboot only when necessary.

* Improve startup and upgrade

* Remove debug delays

* Move after telnet (for emergency access)

* Ignore ubootenv file when diffing
2024-10-08 21:08:01 -07:00
Tim Wilkinson 1505d61871
Add user agents (containing firmware version info) to package and firmware updates (#1593)
* Add user-agent to opkg

* Firmware update user agent
2024-10-02 22:10:47 -07:00
Tim Wilkinson 052f0320a6
Remove race condition when counting base packages (#1493) 2024-09-12 09:37:33 -07:00
Tim Wilkinson 1b6a5ae1ed
Fix themes and resource caching (#1443)
* Fix themes

* Meshpage resource namechange
2024-09-01 21:25:31 -07:00
Tim Wilkinson c7d942af6d
Dont remove the old firmware path (yet) (#1375) 2024-08-22 22:01:14 -07:00
Tim Wilkinson c06642949a
Support 24 hour clock display (#1275) 2024-08-16 15:59:13 -07:00
Tim Wilkinson 0432bf3165
New UI (#1263)
* New UI

* Fix gzip filename race condition

* Fix scrolling on first use page
2024-08-15 20:28:45 -07:00
Tim Wilkinson 299645583c
Fetch routes from kernel rather than OLSR (#1235)
* Fetch routes from kernel rather than OLSR
Fix xlink detection

* Fix commit
2024-06-01 17:32:38 -07:00
Tim Wilkinson 4717ab051c
Drop default quality (#1227)
We calculate quality differently (ie. correctly) so drop the default
minimum to avoid too many nasty suprises.
2024-05-29 16:44:00 -07:00
Tim Wilkinson e486a61cc8
Wireguard support - take 2. (#1056) 2024-01-07 16:17:52 -08:00
Tim Wilkinson 4b29cd252d
Remove fixed tunnel limits (#1014)
* Remove need to predefine max number of tunnels

* Improve wireguard device creation
2023-12-13 13:59:54 -08:00
Tim Wilkinson 4120914a60
Improve node setup (#996)
* Reworking the node-setup system - less reboots when changing configuration

* Add restart-services to advnet
2023-12-12 20:01:23 -08:00
Tim Wilkinson 42e3c95ffb
Fix all x86 mac addresses (#1001)
* For x86 devices, give unique macs to each bridge

* Typo
2023-12-07 17:56:51 -08:00
Tim Wilkinson 44f7f43abb
More map fixes (#982)
* Migrate map (again)

* Improve map navigation
2023-12-06 12:17:39 -08:00
Tim Wilkinson bf3aa67f78
Wireguard tunnel support (#968)
* Wireguard tunnel support

* Fix wireguard firewall rules

* Add Wireguard tunnels to LQM

* Filter vlans on main bridge

* If you paste a tunnel config into any field, it will auto-populate all fields correctly

* Fix bad password keyword

* Fix bad feeds change

* Fix bad merge
2023-12-06 11:39:23 -08:00
Tim Wilkinson 475f371bb8
Initial OpenWRT 23.05.0 merge (#963)
* Initial OpenWRT 23.05.0 merge

* Fix get_rfchannels for new iwinfo format

* Fix initial wlan name

* Move patches to 5.15 from 5.10

* Fix flash write problem on Ubiquiti devices

* Use new ssl patch

* Reduce binary sizes

* Have to have hostapd installed now, even on tiny builds

* Simplify device support

* Revert Mikrotik NAND sysupgrade system.
OpenWRT doesnt really support Mikrotik NAND devices after 2019 and the
new support appeared broken. So reverted to the 2022 mechanism which does
work and avoid upgrade problems.

* Fixes for tiny builds

* More tiny shrinking

* Fix newly added firewall rules

* Update permanent packages

* Update permanent packages

* Support for Nanobeam 2AC (2.4GHz) device. 20MHz channels only.

* Update support

* Add GL.iNet B1300

* Add to radios.json

* Update supported devices

* Dont force the LAN DHCP to run

* Revert CURL SSL test

* Fix radio count when there are no radios

* Switch the lan ports on the gl-b1300

* Add support for GL.iNET Beryl MT1300

* Fix visual lat/lon setting bug

* Make the setup "Save Changes" button also save the location data

* Fix location/map system with geo location fallback

* Recolor

* Fix default bandwidth selection

* Support multi-band radios

* Generic mechanism to set compat version to 1.1

* Switch ethernet ports

* 20 MHz channels only

* Update docs

* Add ham channels to Mediatek chips (20MHz only)

* Automatically update the permpkg list when we upgrade

* Fix 10MHz mode for Ubiquiti AC devices

* Fix tiny builds

* Bump the watch timeout for restarting olsrd
olsrd is reliable these days, and very occasionally this
was restarting it unnecessarily
2023-12-06 10:12:11 -08:00
Tim Wilkinson 272d53bab5
Set tunnel weight to 1 and provide UI to change it. (#937) 2023-09-19 20:04:54 -07:00
Tim Wilkinson 62a19a239e
Support for Mikrotik LDF 5AC (#841) 2023-05-17 20:52:51 -07:00
Tim Wilkinson 571dbf6251
Disable RTS by default in ath10k devices 02/11/2023 (#706) 2023-02-11 13:44:10 -06:00
Tim Wilkinson 4894f42efd Make sure we look for packages with the correct architecture 2023-01-24 23:29:06 -08:00
Tim Wilkinson 78b8578a06
Automatically enable RTS when hidden nodes detected (#659) 2023-01-19 13:11:30 -06:00
Tim Wilkinson 3366f9baa6
Mikrotik boot loader change to avoid boot lockup problem (#654)
See: https://forum.openwrt.org/t/openwrt-installed-mikrotik-rb750gr3-wont-boot-when-wan-cable-plugged/146330/7
2023-01-16 13:57:19 -06:00
Tim Wilkinson fdeda7d0cc
New network configuration code (#650)
* Migrate wired network building into node-setup
* Rework network setup
* Fixes for various alt wireless modes
* Commit to new vlan model
2023-01-14 23:07:22 -08:00
Tim Wilkinson 72cc6c8a06
Hidden node detection (and optional mitigation) (#635)
* Enable RTS/CTS when we detect hidden nodes
* Only change rts setting when we need to
* RTS advanced config option
* Include neighbors blocked neighbors (they still transmit)
* Bump default RTS threashold
* Report list of hidden node rather than yes/no
* Canonical hostnames
* When we enable RTS, enable it for all traffic by default
* Show hidden neighbors in display
* Default RTS threshold to -1 (always off)
2023-01-12 10:31:28 -08:00
Tim Wilkinson 6950479bf1
Update AREDN to OpenWRT 22.3.2 (Major Upgrade) (#574)
* Update to Openwrt 21.02 and add support for the CPE710 v1
Update scripts to change references to ifname to device due to a change in Openwrt naming
reverse-wpad-basic-wolfssl and disable SSL on Curl

NOTE: The compile host must have python3-distutils installed for gpsd to build

* aredn: initial working upgrade to openwrt 21.02.1

* aredn: update 1 to working upgrade to openwrt 21.02.1

* aredn: add cpe710v1 to build config

* Andrew's patches

* Remove duplicates + display perl

* Temp disable wifi extension patch

* ifname/ports support

* Add spectrum patch back in

* Generic function to extra interfaces

* New api to get wifi ifname

* Disables jails

* Style link

* aredn: partial upgrade to openwrt 22.0.3.0

added AC device images and partial migration to 22.0.3.0
firewall upgrade pending

* aredn:  update mesh-release and revert config.mk

* Unused

* NFT firewall rewrite

* Common-isze configs

* Fix network layout for hap2

* Use local packages dev (new firewall rules)

* Add HAP2

* Add pause after network restart to let bridge reinitialize

* Various lua fixes for new lua version

* Tweak config

* Re-fix networking (lost patch change)

* Add new radio names

* Tolerate missing wifi

* Fix hap-lite switch setup

* More devices

* New radio id

* Build Rocket 5AC lite

* Remove need for luci.sys

* Remove need for luci.sys

* Explicitly name wlan interfaces

* Handle different compatibility verisoning

* Update networking for switches

* ipref version bump

* Extra flag for curl

* Better compat_version fix

* Remove wolfssl

* Fix dns server

* Fix device name

* Unused

* Remove things we dont need

* Remove unused packages

* Generic macaddr overrides

* Fix uci commit

* Fix luci.template.parser to avoid luci.http loading the real thing

* Rocket-M build

* Add search-domain dhcp option

* Turn of ipv6

* No IPV6 in dnsmasq

* Override mac addresses if devices all  the same

* Working from master (for now)

* Put back hostap

* Disable old ethmac fixup

* Tweak configs

* Move back to v22.03.2
Leave ipq4019 builds to master

* Need IPV6 to compile nft firewall

* Rocket-M fixes

* Before we start

* WIP

* Working snapshot

* Cleaned patches

* Merged patch

* Single patch to support HAP2

* Fix typo

* Add nanostation-m

* 5/10Mhz patch

* 5+10MHz patch for ath10k-ct driver

* Extend 2Ghz channel check to include -4 to -1

* Add chanbw setup for ath10k (like ath9k)

* Added TP-Link CPE710 v1

* Override firmwares

* Missing patch

* Dropbear config like 3.22.8.0

* Add Ubiquiti Rocket 5AC Lite

* Fix c6

* Update

* Need more scan channels

* Remove IPV6

* Improve mac fixups

* Put back missing nft app

* IPv6 removed so dont have to disable it

* Fix rocket-m flash bug

* Fix nanostation-m

* Nanobridge is tiny

* Fix wifi order for ar750

* Rocket M5 XW support

* New rates

* Fix firewall4 so we don't need IPv6

* Allow channel width to be restricted

* Move channel list into library

* Fix naming

* Mechanism to block specific channels on specific radios

* Refresh buttons

* routerboard-sxt-5nd

* CPE605 v1.0

* Improve rocket m xw

* tpink

* Update patch

* Update to remove disable

* Remove BW restrictions on cpe710

* Restrict to what has been tested

* Remove test BW restrictions

* sxtsq-5-ac

* Update

* Update

* powerbeam-m5-300 support

* Fix

* Fix hap2

* Tidy unused patches

* Remove limit

* Add ubnt_bullet-m-ar7241

* Added ubnt_nanobeam-ac-gen2

* Fix typo

* Tolerate missing dtd ip

* Explicitly gix hap2 mac addresses

* Fix some broken patches

* Hap2 wont work at 5MHz

* Ubiquiti LiteBeam 5AC Gen2

* Fix compat_version for sxt 5ac

* Update patch

* Unused

* Fix lan configuration for some devices

* Rolling average of noise level

* Unused

* Split out the ath10k rssi monitor (its very simple at the moment)

* Ignore .DS_Store

* Reboot if ethernet doesnt come up (but only once!)

* reboot returns - add exit

* Add some logging info

* Fix ]

* Check all possibly ethernet bridges

* Improve mac fixing

* Remove HostAP on small memory devices

* Reduce dropbear footprint

* Add setsid

* Kill hostap when upgrading to save memory

* Different way to detect hostapd unavailable

* New build steps

* Improve manager logging

* Fix name conflict for the two monitors

* Try to improve test mesh name resolve problem

* Migrate tiny to generic (tiny doesnt work properly)

* Typo

* Another attempt to fix macs for Mikrotik

* Protect against missing trackers

* Fix wpad for ipq40xx

* Remove old tunnel check code

* Enable ZRAM swap to aid low memory devices

* ath10k noise can something be out of range - protect against that

* Updated with current devices and status

* Update firmware which has been tested

* Updated with more builds

* More binary/README

* Fix css error

* Start noise at sensible base level

* Unfix the css so it looks how it use to.

* Save as much memory as we can on lowmem nodes

* Hide some options on low memory devices

* Add "eol" to 32MB devices

* Restart network rather than reboot node if it seems to be broken

* Fixes

* Revert network reset

* Fix ar750 networking

* Continue to trim tiny configs

* More devices

* Dump IW output messages

* Fix Rocket 5AC intermittent ethernet issue

* Ethernet fix for PowerBeam 5AC 500

* More tiny size reduction

* More support data

* Fixed POE and USB power features

* Add Ubiquiti NanoBeam AC (gen1)

* NanoStation (not NanoBeam)

* Add mii-tool package

* Device updates

* Bump update time to 5 minutes

* Fix ethernet negotiation for rocker-5ac and nanobeam

* Fix iplookup

* Config changes based on call feedback

* Radio listing fixes

* Update with more untested builds

* Fallback TxMbps extracted from iw station dump

* Fix tunnel detection for low memory nodes

* Remove unused feed packages

* snapshot build

* Update stability info

* Add powerbeam-5ac-500

* Typo

* Add missing 3.22.1.0

* Add MikroTik LHG 5 AC

* Fix permissions

* Fix permissions

* AirGrid's take Bullet builds

* Mikrotik AC3

* Improve supportdata structure a little to make it easier to find things

* Restore WAN VLAN overrides

* Fix vlan regex for hap2 and hap3

* Support old and new style poe controls

* hap-ac3 is version 1.1

* Handle typo in some openwrt config files

* Fix HAP AC3 install

* Update hap ac3 status

* Support user overrides for network ports (non-swconfig devices)

* LHG 5AC support

* Remove -nand

* Remove non-working platform.sh change

* tunnel weight override

* Omit LinkQualityMult when value is 1

* Add mANTBox 19s and 15s

* Support ath79 mikrotik devices which require ath10k in the initramfs

Co-authored-by: apcameron <apcameron@softhome.net>
Co-authored-by: Joe AE6XE <ae6xe@arrl.net>
Co-authored-by: Joe Ayers <joe@arrl.net>
2022-12-22 14:22:49 -06:00
Tim Wilkinson d581b9952a
Fix migration of wen settings when they've never been modified. (#526)
When wan settings had never been modified, they would be migrated
incorrectly.
2022-10-16 20:31:31 -05:00
Steve 72572034be
add ntp update period to basic setup page (#510)
* add ntp update period to basic setup page

* ensure current value as selected

* include case where reverts to daily after upgrade

* persist ntp_period across upgrades
2022-10-02 18:46:57 -05:00
Tim Wilkinson 8a2b6f968d
A simple way to keep a user swconfig override across upgrades (#481) 2022-08-16 14:03:13 -05:00
Tim Wilkinson e1ddbabb85 Migrate LAN-to-WAN options to advance configuration 2022-08-15 11:16:24 -07:00
Tim Wilkinson 148e9bea13 Off by default on upgrade, on my default on fresh install 2022-06-16 20:34:39 -07:00
Tim Wilkinson c57d384ca6 LQM on by default 2022-06-16 20:34:39 -07:00
Tim Wilkinson a8b7f8a216
LQM improvements (#364) 2022-05-20 08:10:01 -05:00
Tim Wilkinson b23ab5ee8a
Link Quality Management (#360)
* Link Quality Management experiment (built in)

* Protect LQM pages

* Omit "empty" mac addresses

* Integrate LQM v0.2
Includes proposed UI if this were built-in.
When LQM is enabled (advanced settings) the usual distance inputs are
replaced with "min snr' and "max distance" inputs which are the major
ones you might tweak, as well as a link to the LQM status page.
Other controls are now available (so protected) in advanced settings.

* Improve LQM updating

* Use running snr averages

* Merge app changes

* AREDN-ize the UI

* Improve status language

* Improved DtD detection

* Improve quality reporting

* Link Quality category

* Enable by default

* Better intergration

* Link => Neighbor

* Formatting

* Make sure initial page is populated without extra fetch

* Handle empty lqm.info

* Update with latest experiment algorithm changes

* Validate LQM settings before applying them

* Algorithm updates

* Improve quality reporting

* %% -> %

* Default max distance now 50 miles

* Get actual noise if radio will provide it

* low_snr => min_snr

* Dont print node description if we dont have one

* Remove properties duplicated from setup page

* Localize max distance. Miles in GB and US, Kilometers everywhere else.

* Ping link quality testing

* UDP 'ping' for quality check

* Change Active Settings title

* Expand ping test

* Improve messaging

* Add a ping penalty for neighbors which cannot be contacted in a timely manner.

* Remove user_blocks config option. No one needs to use this anymore.

* Localize distances on lqm page

* Improve status reporting

* First run emergency node setup.
When a node first runs LQM, if the default settings fail to connect to
a node we will now adjust them so that at least one node is viable.

* Restore blocking of mac addresses

* LQM now off by default
fixed #47
2022-05-18 12:49:00 -05:00
Tim Wilkinson 321e58bd37
Include tunnels by default (#302)
* Include tunnels by default

* Tunnels are always installed so no longer need this flag
2022-03-17 20:57:48 -05:00
Tim Wilkinson 8947e6f23c
Migrate LeafletJS to new URL (#298) 2022-03-16 21:42:26 -05:00
dman776 488247753c
remove 'trunk' from snapshots path (#194) 2021-12-18 10:42:13 -06:00
Tim Wilkinson ee2791c621
Dmz mode migrate fix (#169)
* Migrate /etc/config/dmz-mode to /etc/dmz-mode

* Migrate dmz_mode into /etc/config/aredn

* Use cmd append

* Changes should be in /etc/config.mesh

* Add commit
2021-11-19 15:48:45 -06:00
dman776 7163819bf2
moved uci actions and file actions under file exists test (#173) 2021-11-12 08:34:31 -06:00
dman776 f0c62fc2a7
enhancement: migrate location info to uci (#168)
* add uci migration script

* removed debug lines

* added newline to end

* include gridsquare values

* migrate lat/lon/gridsquare to uci format

* remove from sysupgrade kept files list
2021-11-09 17:03:20 -06:00
Tim Wilkinson 1fd909b18d
Meshoween: Better way to add new uci meshstatus section (#159) 2021-11-03 21:26:56 -05:00
dman776 cdf8057f65
bugfix: re-submit path reset2 (previously approved) (#75) 2021-03-12 20:02:08 -06:00
dman776 7c6c1e4636
bugfix: reset download paths upon upgrade to default (#69)
* bugfix: reset download paths upon upgrade to default, if standard paths are used.

* correct aredn_base path default
2021-02-23 21:23:06 -06:00
Eric 31492676dc
update: Change the nodes default map tile server URL away from MapBox (#527) 2020-06-20 19:54:12 -05:00
apcameron 80619b73a9
ath79: Migrate the TP-LINK WBS Devices to the ath79 Branch (#525) 2020-05-01 09:30:39 -05:00
apcameron 62adfa9eb8
ath79: Migrate CPE210 v1/v1.1, CPE510v1/v1.1 to the ATH79 Branch (#523)
Installation:

Flash factory image through stock firmware WEB UI
or through TFTP:
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254
2020-04-28 22:29:37 -05:00
apcameron 31c6669c2f ath79: add support for TP-Link CPE220 v2
Specifications:

    * SoC: Qualcomm Atheros AR9344 (560 MHz)
    * RAM: 64MB
    * Storage: 8 MB
    * Wireless: 2.4GHz N based built into SoC 2x2
    * Ethernet: 2x 100/10 Mbps, integrated into SoC, 24V POE IN

Installation:

Flash factory image through stock firmware WEB UI
or through TFTP:
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254
2020-04-20 19:20:57 -07:00
Joe Ayers 9d5f8a3a78 aredn: upgrade to pre-openwrt-19.07.2 2020-02-26 00:04:23 -06:00
Joe AE6XE 123949de9e
aredn: Standardize Ethernet Port vlans for UBNT XM devices (#297)
The secondary port on Ubnt XM devices was non-functional.
Enabled bridge type in network config to utilize both ports.
2018-12-02 17:52:48 -08:00
dman776 dab3f60c9a
bugfix: correct uhttpd page security on sysupgrade (#296) 2018-12-02 17:28:35 -06:00
Joe AE6XE a62fe95b26
aredn: hAP ac lite enable 5GHz LAN Access Point (#287)
* aredn: hAP ac lite enable 5GHz LAN Access Point

enable ability to bridge LAN physical ports with wireless
LAN Access Point capability. On dual band hAP ac lite,
used in parallel with mesh RF on 2GHz.  Enables future
features on single band devices to turn off mesh RF and
repurposed for mesh LAN Access Point.

closes: #215
2018-11-27 21:37:59 -08:00