Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lime-app blank and unresponsive main screen on OpenWrt 22.03 when no mesh neighbors are connected #378

Closed
der-nele opened this issue Apr 17, 2023 · 16 comments

Comments

@der-nele
Copy link

ich have some routers i wont to disabel list modes 'ieee80211s' on wifi but if i doo this the lime app do not do anything

@der-nele
Copy link
Author

Bildschirmfoto vom 2023-04-17 14-28-28
Bildschirmfoto vom 2023-04-17 14-29-21

@ilario
Copy link
Member

ilario commented Apr 17, 2023

Can you make sure that it is because of ieee80211s? Can you try to add it back and check if it works? For me it does not work anyway.

@der-nele
Copy link
Author

yes it is instant after lime-config && lime-apply and backwards.

@ilario
Copy link
Member

ilario commented Apr 18, 2023

I don't understand, does the issue happen after you add ieee80211s, run lime-config and reboot?
Or it does happen only when ieee80211s is missing?

@der-nele
Copy link
Author

just if it is missing

@der-nele
Copy link
Author

it looks like if it do not load Radio {radioNumber} Radio {radioNumber} it do not load the rest from menu

@selankon
Copy link
Collaborator

This could be a problem related to lime packages that doesn't send the info properly?

@ilario
Copy link
Member

ilario commented Apr 24, 2023

@der-nele can you open a browser tab, press F12, load the broken page (the one with just the menu) and copy and paste here the error?
Your screenshot is identical to what I see and reported in #383, but on my router it happens even with the default untouched configuration.

@der-nele
Copy link
Author

der-nele commented Apr 26, 2023

@ilario since we currently have major problems in the mesh, I have left the Lime app out of the image for the time being. That's why I can't look it up right now. But I remember the same behavior of the Lime app. that disappeared for me when the router had a neighbor to mesh. Like a dependency to have a neighbor. And since the Lime App I doesn't show the cable connections in our case, the neighbors disappear when "List modes 'IEEE80211S'" is turned off on the WiFi. #379 I hope my description helps. And thank you for your support

@der-nele
Copy link
Author

der-nele commented May 8, 2023

I18nProvider did not render. A call to i18n.activate still needs to happen or forceRenderOnLocaleChange must be set to false. bundle.d2584.js:2:54799
Uncaught (in promise) TypeError: t.most_active.iface is undefined
_a http://kh-wald-b/app/bundle.d2584.js:2
x http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
S http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
S http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
h http://kh-wald-b/app/bundle.d2584.js:2
h http://kh-wald-b/app/bundle.d2584.js:2
promise callbackd http://kh-wald-b/app/bundle.d2584.js:2
setState http://kh-wald-b/app/bundle.d2584.js:2
__ http://kh-wald-b/app/bundle.d2584.js:2
n http://kh-wald-b/app/bundle.d2584.js:2
handleChangeWrapper http://kh-wald-b/app/bundle.d2584.js:2
notify http://kh-wald-b/app/bundle.d2584.js:2
N http://kh-wald-b/app/bundle.d2584.js:2
notify http://kh-wald-b/app/bundle.d2584.js:2
notifyNestedSubs http://kh-wald-b/app/bundle.d2584.js:2
handleChangeWrapper http://kh-wald-b/app/bundle.d2584.js:2
c http://kh-wald-b/app/bundle.d2584.js:2
Yf http://kh-wald-b/app/bundle.d2584.js:2
default http://kh-wald-b/app/bundle.d2584.js:2
dispatch http://kh-wald-b/app/bundle.d2584.js:2
__tryOrUnsub http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
notifyNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
observe http://kh-wald-b/app/bundle.d2584.js:2
dispatch http://kh-wald-b/app/bundle.d2584.js:2
_execute http://kh-wald-b/app/bundle.d2584.js:2
execute http://kh-wald-b/app/bundle.d2584.js:2
flush http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
scheduleMessage http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
notifyNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
notifyNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
pr http://kh-wald-b/app/bundle.d2584.js:2
promise callback
QfWi/pr/< http://kh-wald-b/app/bundle.d2584.js:2
_trySubscribe http://kh-wald-b/app/bundle.d2584.js:2
subscribe http://kh-wald-b/app/bundle.d2584.js:2
F http://kh-wald-b/app/bundle.d2584.js:2
_innerSub http://kh-wald-b/app/bundle.d2584.js:2
_tryNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
observe http://kh-wald-b/app/bundle.d2584.js:2
dispatch http://kh-wald-b/app/bundle.d2584.js:2
_execute http://kh-wald-b/app/bundle.d2584.js:2
execute http://kh-wald-b/app/bundle.d2584.js:2
flush http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
scheduleMessage http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
Yf http://kh-wald-b/app/bundle.d2584.js:2
default http://kh-wald-b/app/bundle.d2584.js:2
d http://kh-wald-b/app/bundle.d2584.js:2
page http://kh-wald-b/app/bundle.d2584.js:2
v http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
setTimeout handler*n http://kh-wald-b/app/bundle.d2584.js:2
diffed http://kh-wald-b/app/bundle.d2584.js:2
diffed http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
S http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
h http://kh-wald-b/app/bundle.d2584.js:2
h http://kh-wald-b/app/bundle.d2584.js:2
bundle.d2584.js:2:185905
__e http://kh-wald-b/app/bundle.d2584.js:2
__e http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
h http://kh-wald-b/app/bundle.d2584.js:2
some self-hosted:137
h http://kh-wald-b/app/bundle.d2584.js:2
(Async: promise callback)
d http://kh-wald-b/app/bundle.d2584.js:2
setState http://kh-wald-b/app/bundle.d2584.js:2
__ http://kh-wald-b/app/bundle.d2584.js:2
n http://kh-wald-b/app/bundle.d2584.js:2
handleChangeWrapper http://kh-wald-b/app/bundle.d2584.js:2
notify http://kh-wald-b/app/bundle.d2584.js:2
N http://kh-wald-b/app/bundle.d2584.js:2
notify http://kh-wald-b/app/bundle.d2584.js:2
notifyNestedSubs http://kh-wald-b/app/bundle.d2584.js:2
handleChangeWrapper http://kh-wald-b/app/bundle.d2584.js:2
c http://kh-wald-b/app/bundle.d2584.js:2
Yf http://kh-wald-b/app/bundle.d2584.js:2
default http://kh-wald-b/app/bundle.d2584.js:2
dispatch http://kh-wald-b/app/bundle.d2584.js:2
__tryOrUnsub http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
notifyNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
observe http://kh-wald-b/app/bundle.d2584.js:2
dispatch http://kh-wald-b/app/bundle.d2584.js:2
_execute http://kh-wald-b/app/bundle.d2584.js:2
execute http://kh-wald-b/app/bundle.d2584.js:2
flush http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
scheduleMessage http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
notifyNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
notifyNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
pr http://kh-wald-b/app/bundle.d2584.js:2
(Async: promise callback)
pr http://kh-wald-b/app/bundle.d2584.js:2
_trySubscribe http://kh-wald-b/app/bundle.d2584.js:2
subscribe http://kh-wald-b/app/bundle.d2584.js:2
F http://kh-wald-b/app/bundle.d2584.js:2
_innerSub http://kh-wald-b/app/bundle.d2584.js:2
_tryNext http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
observe http://kh-wald-b/app/bundle.d2584.js:2
dispatch http://kh-wald-b/app/bundle.d2584.js:2
_execute http://kh-wald-b/app/bundle.d2584.js:2
execute http://kh-wald-b/app/bundle.d2584.js:2
flush http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
schedule http://kh-wald-b/app/bundle.d2584.js:2
scheduleMessage http://kh-wald-b/app/bundle.d2584.js:2
_next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
next http://kh-wald-b/app/bundle.d2584.js:2
Yf http://kh-wald-b/app/bundle.d2584.js:2
default http://kh-wald-b/app/bundle.d2584.js:2
d http://kh-wald-b/app/bundle.d2584.js:2
page http://kh-wald-b/app/bundle.d2584.js:2
v http://kh-wald-b/app/bundle.d2584.js:2
forEach self-hosted:203
b http://kh-wald-b/app/bundle.d2584.js:2
forEach self-hosted:203
b http://kh-wald-b/app/bundle.d2584.js:2
(Async: setTimeout handler)
n http://kh-wald-b/app/bundle.d2584.js:2
(Async: FrameRequestCallback)
diffed http://kh-wald-b/app/bundle.d2584.js:2
diffed http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
S http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
b http://kh-wald-b/app/bundle.d2584.js:2
_ http://kh-wald-b/app/bundle.d2584.js:2
h http://kh-wald-b/app/bundle.d2584.js:2
some self-hosted:137
h http://kh-wald-b/app/bundle.d2584.js:2
Uncaught
Object { jsonrpc: "2.0", id: 16, result: (1) […] }
bundle.d2584.js:2:74607
Source-Map-Fehler: Error: request failed with status 404
Ressourcen-Adresse: http://kh-wald-b/app/bundle.d2584.js
Source-Map-Adresse: bundle.d2584.js.map

@der-nele
Copy link
Author

der-nele commented May 9, 2023

@ilario by the way
if i go direct to http://thisnode.info/app/#/notes it works and also the rest from menue works. just this http://thisnode.info/app/#/rx make the error and from there you can't load the menue by butten

@ilario
Copy link
Member

ilario commented May 11, 2023

@ilario by the way if i go direct to http://thisnode.info/app/#/notes it works and also the rest from menue works. just this http://thisnode.info/app/#/rx make the error and from there you can't load the menue by butten

Interesting!

Are you using LibreMesh on top of OpenWrt 19.07 or 22.03?

@der-nele
Copy link
Author

OpenWrt 22.03.4

@ilario
Copy link
Member

ilario commented May 11, 2023

Ok, so it is exactly the same that I see. On 19.07 seems working fine.

@selankon
Copy link
Collaborator

Hi,

I'm looking to fix it: using the developer tools on firefox (f12) and looking the network tab, I found that some responses are broken. Concretely for this calls:

{
	"id": 20,
	"jsonrpc": "2.0",
	"method": "call",
	"params": [
		"7d2d37f0ab1c27c0e1475bc2e51293ea",
		"lime-metrics",
		"get_station_traffic",
		{}
	]
}

{
	"id": 18,
	"jsonrpc": "2.0",
	"method": "call",
	"params": [
		"7d2d37f0ab1c27c0e1475bc2e51293ea",
		"iwinfo",
		"assoclist",
		{}
	]
}

So, I am going to assume that the lua scripts related to this calls are broken (they just print something that is not a JSON format string, su ubus just get broken and send random stuff..)

Going to the router we can debug using following commands:

ubus call lime-metrics get_station_traffic '{}'
ubus call iwinfo assoclist '{}'

This commands will fail because are the same as the http call is doing. So lets call the lua script directly

echo '{}' | /usr/libexec/rpcd/lime-metrics call get_station_traffic

And here we can see a stackstrace error..:

stack traceback:
	/usr/lib/lua/lime-metrics.lua:113: in function 'get_station_traffic'
	/usr/libexec/rpcd/lime-metrics:45: in function 'get_station_traffic'
	/usr/libexec/rpcd/lime-metrics:71: in main chunk
	[C]: ?

And for the other command, iwinfo assoclist, i cannot find where and how is exactly exposed and how it works but I found pieces on the code like this one:

iwinfo.nl80211.assoclist

@ilario do you know what is this nl80211 and if is different on new openwrt versions?

@selankon
Copy link
Collaborator

selankon commented May 15, 2023

Ok, going deeper I found that the problem is not on te lua code, here we can see that the function get_station_traffic want two parameters that are not send from the frontend. If we see, on branch master, how actually the call looks like:

        return api.call(sid, 'lime-metrics', 'get_station_traffic', { station_mac: node.station_mac, iface: node.iface })

AFAIK this is called here and the origin of the info (mac and iface) are obtained from this call:

{
	"id": 12,
	"jsonrpc": "2.0",
	"method": "call",
	"params": [
		"7d2d37f0ab1c27c0e1475bc2e51293ea",
		"lime-utils",
		"get_node_status",
		{}
	]
}

Where on the response the most active iface is empty:

{
	"jsonrpc": "2.0",
	"id": 12,
	"result": [
		0,
		{
			"ips": [
				{
					"version": "4",
					"address": "10.13.127.100/16"
				},
				{
					"version": "6",
					"address": "fd0d:fe46:8ce8::eb:7f64/64"
				},
				{
					"version": "6",
					"address": "fe80::d65f:25ff:feeb:7f64/64"
				}
			],
			"hostname": "LiMe-eb7f64",
			"switch_status": [],
			"status": "ok",
			"uptime": "186.6",
			"most_active": []
		}
	]
}

So probably the problem is over there, simply the frontend should expect an empty most active iface.

But anyway this is not happening anymore on the develop branch. This page was migrated from redux to react-query and unnecessary calls where deleted. You can test it runing the limeapp locally doing something similar to:

NODE_HOST=10.13.0.1 npm run dev

This will point your localhost limeapp to the router so you can see the landing page without the most active iface box.

This issue is fixed on develop so can be closed

@ilario ilario changed the title lime-app does not work without list modes 'ieee80211s' lime-app blank and unresponsive main screen on OpenWrt 22.03 when no mesh neighbors are connected May 20, 2023
selankon added a commit to selankon/lime-app that referenced this issue Mar 11, 2024
selankon added a commit to selankon/lime-app that referenced this issue Mar 11, 2024
selankon added a commit to selankon/lime-app that referenced this issue Mar 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants