WeatherFlow PiConsole - Archive

I’ve found by changing the format it displays 12H format …

2032	# self.Screen['Clock'] = datetime.now(pytz.utc).astimezone(Tz).strftime('%a, %d %b %Y\n%H:%M:%S')
2033	self.Screen['Clock'] = datetime.now(pytz.utc).astimezone(Tz).strftime('%a, %b %d, %Y\n%I:%M:%S %p')

peter;

getting this log when launching on BOTH of my piconsoles…

pi@pyconsole:~/wfpiconsole $ python3 main.py
[INFO   ] [Logger      ] Record log in /home/pi/.kivy/logs/kivy_18-12-31_4.txt
[INFO   ] [Kivy        ] v1.11.0.dev0, git-3d12fc0, 20181006
[INFO   ] [Python      ] v3.5.3 (default, Sep 27 2018, 17:25:39) 
[GCC 6.3.0 20170516]
[INFO   ] [Factory     ] 195 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] Using the "OpenGL ES 2" graphics system
[INFO   ] [GL          ] Backend used <gl>
[INFO   ] [GL          ] OpenGL version <b'OpenGL ES 2.0'>
[INFO   ] [GL          ] OpenGL vendor <b'Broadcom'>
[INFO   ] [GL          ] OpenGL renderer <b'VideoCore IV HW'>
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <b'OpenGL ES GLSL ES 1.00'>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
[INFO   ] [Text        ] Provider: sdl2
2018-12-31 19:29:52-0500 [-] Log opened.
2018-12-31 19:29:55-0500 [-] Starting factory <__main__.WeatherFlowClientFactory object at 0x7341feb0>
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [Base        ] Start application main loop
[INFO   ] [Support     ] Starting twisted reactor
[INFO   ] [Base        ] Leaving application in progress...
[INFO   ] [Support     ] Stopping twisted threads
[INFO   ] [Support     ] Shutting down twisted reactor
2018-12-31 19:29:57-0500 [-] Traceback (most recent call last):
2018-12-31 19:29:57-0500 [-]   File "main.py", line 2110, in <module>
2018-12-31 19:29:57-0500 [-]     WeatherFlowPiConsole().run()
2018-12-31 19:29:57-0500 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/app.py", line 826, in run
2018-12-31 19:29:57-0500 [-]     runTouchApp()
2018-12-31 19:29:57-0500 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/base.py", line 502, in       
runTouchApp
2018-12-31 19:29:57-0500 [-]     EventLoop.window.mainloop()
2018-12-31 19:29:57-0500 [-]   File "/usr/local/lib/python3.5/dist-      
packages/kivy/core/window/window_egl_rpi.py", line 92, in mainloop
2018-12-31 19:29:57-0500 [-]     self._mainloop()
2018-12-31 19:29:57-0500 [-]   File "/usr/local/lib/python3.5/dist-            
packages/kivy/core/window/window_egl_rpi.py", line 87, in _mainloop
2018-12-31 19:29:57-0500 [-]     EventLoop.idle()
2018-12-31 19:29:57-0500 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/base.py", line 337, in idle
2018-12-31 19:29:57-0500 [-]     Clock.tick()
2018-12-31 19:29:57-0500 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/clock.py", line 581, in tick
2018-12-31 19:29:57-0500 [-]     self._process_events()
2018-12-31 19:29:57-0500 [-]   File "kivy/_clock.pyx", line 384, in kivy._clock.CyClockBase._process_events
2018-12-31 19:29:57-0500 [-]   File "kivy/_clock.pyx", line 414, in kivy._clock.CyClockBase._process_events
2018-12-31 19:29:57-0500 [-]   File "kivy/_clock.pyx", line 412, in kivy._clock.CyClockBase._process_events
2018-12-31 19:29:57-0500 [-]   File "kivy/_clock.pyx", line 167, in kivy._clock.ClockEvent.tick
2018-12-31 19:29:57-0500 [-]   File "main.py", line 1819, in SagerForecast
2018-12-31 19:29:58-0500 [-]     Sky['Time'] = [item[0] if item[0] != None else NaN for item in Sky['obs']]
2018-12-31 19:29:58-0500 [-] TypeError: 'NoneType' object is not iterable

It looks like something is up with at least one of your Sky’s. It’s not showing any data

1 Like

Peter;

Thanks … yeah, I found that out… shortly after I posted. Sorry, busy submitting a ticket. My Sky went offline, won’t go back online… Gettting RED led blinking - I believe I have a bad sensor in it.

Hopefully support will respond soon.

Peter

is there a way to setup piconsole without my Sky module? I’ve tried commenting out the entry, and leaving the ID empty in the ini file but I still get errors when launching. SkyName =

 2019-01-01 07:39:17-0500 [-] KeyError: 'SkyID'

I’d like to just use my Air module until I get this sorted out…

(oh yeah - I’ve also deleted the module from the mobile app)

Not really I’m afraid… It’s not a usage case I’ve ever really thought about. I’ll try and look into this for the next version though as I can imagine it happening from time to time.

Ok thanks,

Hopefully support will send me a replacement soon? It’s not even powering up now(Sky module).

If I look at the LED in a dark room I can see a pink flicker from time to time. But that’s about it.

I’ve switched back to my old iPad Mini as a screen, I’m already missing piconsole, and it’s only been a day!

1 Like

When you get time, can you check the voltage on each of the cells from the Sky?

They all (each)measure 1.76 volts.

Peter;

Just got my SKY module replacement. I deleted my old module from the iOS app, and added the NEW one. All went well, everything seems to be working as before. getting realtime readings using the app, and web client;

My WeatherFlow

However when I power up the wfpiconsole - everything is coming in empty - except the Forecast?
image

Here is a log dump

pi@pyconsole:~/wfpiconsole18 $ python3 main.py
[INFO ] [Logger ] Record log in /home/pi/.kivy/logs/kivy_19-01-07_1.txt
[INFO ] [Kivy ] v1.11.0.dev0, git-038acbf, 20180904
[INFO ] [Python ] v3.5.3 (default, Jan 19 2017, 14:11:04)
[GCC 6.3.0 20170124]
[INFO ] [Factory ] 195 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO ] [Window ] Provider: egl_rpi
[INFO ] [GL ] Using the “OpenGL ES 2” graphics system
[INFO ] [GL ] Backend used
[INFO ] [GL ] OpenGL version <b’OpenGL ES 2.0’>
[INFO ] [GL ] OpenGL vendor <b’Broadcom’>
[INFO ] [GL ] OpenGL renderer <b’VideoCore IV HW’>
[INFO ] [GL ] OpenGL parsed version: 2, 0
[INFO ] [GL ] Shading version <b’OpenGL ES GLSL ES 1.00’>
[INFO ] [GL ] Texture max size <2048>
[INFO ] [GL ] Texture max units <8>
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [Text ] Provider: sdl2
2019-01-07 16:48:57-0500 [-] Log opened.
2019-01-07 16:49:37-0500 [-] Starting factory <main.WeatherFlowClientFactory object at 0x70b1e350>
[INFO ] [GL ] NPOT texture support is available
[INFO ] [ProbeSysfs ] device match: /dev/input/event0
[INFO ] [HIDInput ] Read event from </dev/input/event0>
[INFO ] [Base ] Start application main loop
[INFO ] [Support ] Starting twisted reactor
[INFO ] [HIDMotionEvent] using <b’FT5406 memory based driver\x00 '>
[INFO ] [HIDMotionEvent] <b’FT5406 memory based driver\x00 '> range ABS X position is 0 - 800
[INFO ] [HIDMotionEvent] <b’FT5406 memory based driver\x00 '> range ABS Y position is 0 - 480
[INFO ] [HIDMotionEvent] <b’FT5406 memory based driver\x00 '> range position X is 0 - 800
[INFO ] [HIDMotionEvent] <b’FT5406 memory based driver\x00 '> range position Y is 0 - 480
2019-01-07 16:49:41-0500 [WeatherFlowClientProtocol,client] Unhandled Error
Traceback (most recent call last):
File “/usr/local/lib/python3.5/dist-packages/twisted/python/log.py”, line 103, in callWithLogger
return callWithContext({“system”: lp}, func, *args, **kw)
File “/usr/local/lib/python3.5/dist-packages/twisted/python/log.py”, line 86, in callWithContext
return context.call({ILogContext: newCtx}, func, *args, **kw)
File “/usr/local/lib/python3.5/dist-packages/twisted/python/context.py”, line 122, in callWithContext
return self.currentContext().callWithContext(ctx, func, *args, **kw)
File “/usr/local/lib/python3.5/dist-packages/twisted/python/context.py”, line 85, in callWithContext
return func(*args,**kw)
— —
File “/usr/local/lib/python3.5/dist-packages/twisted/internet/_threadedselect.py”, line 276, in _doReadOrWrite
why = getattr(selectable, method)()
File “/usr/local/lib/python3.5/dist-packages/twisted/internet/tcp.py”, line 243, in doRead
return self._dataReceived(data)
File “/usr/local/lib/python3.5/dist-packages/twisted/internet/tcp.py”, line 249, in _dataReceived
rval = self.protocol.dataReceived(data)
File “/usr/local/lib/python3.5/dist-packages/autobahn/twisted/websocket.py”, line 131, in dataReceived
self._dataReceived(data)
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1175, in _dataReceived
self.consumeData()
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1187, in consumeData
while self.processData() and self.state != WebSocketProtocol.STATE_CLOSED:
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1553, in processData
fr = self.onFrameEnd()
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1675, in onFrameEnd
self._onMessageEnd()
File “/usr/local/lib/python3.5/dist-packages/autobahn/twisted/websocket.py”, line 159, in _onMessageEnd
self.onMessageEnd()
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 627, in onMessageEnd
self._onMessage(payload, self.message_is_binary)
File “/usr/local/lib/python3.5/dist-packages/autobahn/twisted/websocket.py”, line 162, in _onMessage
self.onMessage(payload, isBinary)
File “main.py”, line 50, in onMessage
self.factory._app.WebsocketDecodeMessage(Message)
File “main.py”, line 350, in WebsocketDecodeMessage
self.WebsocketObsSky(Msg)
File “main.py”, line 395, in WebsocketObsSky
TodayRain,YesterdayRain,MonthRain,YearRain = self.RainAccumulation(Rain)
File “main.py”, line 920, in RainAccumulation
Rain = [[item[3],‘mm’] if item[3] != None else NaN for item in Data]
builtins.TypeError: ‘NoneType’ object is not iterable

2019-01-07 16:49:41-0500 [-] Client connection lost … retrying …
2019-01-07 16:49:41-0500 [WeatherFlowClientProtocol,client] <twisted.internet.tcp.Connector object at 0x70b3ff30> will retry in 60 seconds
2019-01-07 16:49:41-0500 [-] Stopping factory <main.WeatherFlowClientFactory object at 0x70b1e350>
2019-01-07 16:50:42-0500 [-] Starting factory <main.WeatherFlowClientFactory object at 0x70b1e350>
2019-01-07 16:50:42-0500 [WeatherFlowClientProtocol,client] Unhandled Error
Traceback (most recent call last):
File “/usr/local/lib/python3.5/dist-packages/twisted/python/log.py”, line 103, in callWithLogger
return callWithContext({“system”: lp}, func, *args, **kw)
File “/usr/local/lib/python3.5/dist-packages/twisted/python/log.py”, line 86, in callWithContext
return context.call({ILogContext: newCtx}, func, *args, **kw)
File “/usr/local/lib/python3.5/dist-packages/twisted/python/context.py”, line 122, in callWithContext
return self.currentContext().callWithContext(ctx, func, *args, **kw)
File “/usr/local/lib/python3.5/dist-packages/twisted/python/context.py”, line 85, in callWithContext
return func(*args,**kw)
— —
File “/usr/local/lib/python3.5/dist-packages/twisted/internet/_threadedselect.py”, line 276, in _doReadOrWrite
why = getattr(selectable, method)()
File “/usr/local/lib/python3.5/dist-packages/twisted/internet/tcp.py”, line 243, in doRead
return self._dataReceived(data)
File “/usr/local/lib/python3.5/dist-packages/twisted/internet/tcp.py”, line 249, in _dataReceived
rval = self.protocol.dataReceived(data)
File “/usr/local/lib/python3.5/dist-packages/autobahn/twisted/websocket.py”, line 131, in dataReceived
self._dataReceived(data)
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1175, in _dataReceived
self.consumeData()
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1187, in consumeData
while self.processData() and self.state != WebSocketProtocol.STATE_CLOSED:
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1553, in processData
fr = self.onFrameEnd()
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 1675, in onFrameEnd
self._onMessageEnd()
File “/usr/local/lib/python3.5/dist-packages/autobahn/twisted/websocket.py”, line 159, in _onMessageEnd
self.onMessageEnd()
File “/usr/local/lib/python3.5/dist-packages/autobahn/websocket/protocol.py”, line 627, in onMessageEnd
self._onMessage(payload, self.message_is_binary)
File “/usr/local/lib/python3.5/dist-packages/autobahn/twisted/websocket.py”, line 162, in _onMessage
self.onMessage(payload, isBinary)
File “main.py”, line 50, in onMessage
self.factory._app.WebsocketDecodeMessage(Message)
File “main.py”, line 350, in WebsocketDecodeMessage
self.WebsocketObsSky(Msg)
File “main.py”, line 395, in WebsocketObsSky
TodayRain,YesterdayRain,MonthRain,YearRain = self.RainAccumulation(Rain)
File “main.py”, line 920, in RainAccumulation
Rain = [[item[3],‘mm’] if item[3] != None else NaN for item in Data]
builtins.TypeError: ‘NoneType’ object is not iterable

2019-01-07 16:50:42-0500 [-] Client connection lost … retrying …
2019-01-07 16:50:42-0500 [WeatherFlowClientProtocol,client] <twisted.internet.tcp.Connector object at 0x70b3ff30> will retry in 60 seconds
2019-01-07 16:50:42-0500 [-] Stopping factory <main.WeatherFlowClientFactory object at 0x70b1e350>

any idea what’s going on?

1 Like

Hi @tcichowicz, glad to hear your new Sky has arrived. I’ve just tried your station this morning and it looks like it is working now. I think the problem was that your new Sky hadn’t been online long enough for data to be populated in all the different lengths of data archive bucket (Data archive buckets explained). Therefore when the console was trying to download/calculate the rainfall total from the last month using data in the 1 day buckets, it was falling over because it wasn’t getting any data.

I’ll make a note to get a fix for this in place. Let me know how you get on, and I’ll look into it more if you’re still having problems.

Hey @peter

Thanks so much for following up, I powered up both of my piconsoles - and EVERYTHING - is working as it should.

So if I understand your explanation… this would happen whenever I would ‘delete all data’ - within the iOS app?
Because I plan on doing that each time I do a battery change. ? Just making a note for the next time, hopefully that won’t be for a year or so.

1 Like

Great! Glad to hear it is working :smiley:

As the code currently stands, yes this will also happen if you ‘delete all data’ and then try and immediately start the console again. However, the fix for this is very simple. Deep in the error log you posted is this line:

File “main.py”, line 920, in RainAccumulation
Rain = [[item[3],‘mm’] if item[3] != None else NaN for item in Data]
builtins.TypeError: ‘NoneType’ object is not iterable

which is basically saying that the variable Data (which comes from the API request) is equal to None - in other words it contains no data. All I need to do is add a check to the code that says if Data is equal to None, then the monthly (or yearly) rainfall total is zero.

1 Like

Quick question: Does this listen for UDP broadcasts (and must be on the same subnet as the WeatherFlow) or does it talk to the cloud servers (and can be anywhere on the Internet)?

I’ve got some UDP code on another Linux box that I’d like to port to the WeatherPi, but not if it’s already capturing the UDP broadcasts…

Got this working today, and it’s wonderful, many thanks!

Hi @wpns, glad to hear you’ve got the console up and running :smile:. The console only talks to the cloud servers so it can be on whatever network you want (as long as it has internet). Hope this helps!

Morning @Peter

As you mentioned earlier here, when the API has no data your script doesn’t know what to do. I think I had the case this morning where it stopped somewhere last night. Guess it is related to this API update glitch

For the todo list, make all variables fail proof when no data is received. No hurry. Just a reminder in case.

edit : weird enough it can’t get it to launch

manual lauch gives this error

pi@WF_console:~/wfpiconsole $ python3 main.py
[INFO   ] [Logger      ] Record log in /home/pi/.kivy/logs/kivy_19-01-12_1.txt
[INFO   ] [Kivy        ] v1.11.0.dev0, git-038acbf, 20180915
[INFO   ] [Python      ] v3.5.3 (default, Sep 27 2018, 17:25:39) 
[GCC 6.3.0 20170516]
[INFO   ] [Factory     ] 195 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] Using the "OpenGL ES 2" graphics system
[INFO   ] [GL          ] Backend used <gl>
[INFO   ] [GL          ] OpenGL version <b'OpenGL ES 2.0'>
[INFO   ] [GL          ] OpenGL vendor <b'Broadcom'>
[INFO   ] [GL          ] OpenGL renderer <b'VideoCore IV HW'>
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <b'OpenGL ES GLSL ES 1.00'>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
[INFO   ] [Text        ] Provider: sdl2
2019-01-12 10:13:50+0100 [-] Log opened.
2019-01-12 10:13:53+0100 [-] Starting factory <__main__.WeatherFlowClientFactory object at 0x7193b8f0>
[INFO   ] [GL          ] NPOT texture support is available
Unable to connect to X server
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event0
[INFO   ] [MTD         ] Read event from </dev/input/event0>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event0
[INFO   ] [HIDInput    ] Read event from </dev/input/event0>
[INFO   ] [Base        ] Start application main loop
[INFO   ] [MTD         ] </dev/input/event0> range position X is 0 - 800
[INFO   ] [Support     ] Starting twisted reactor
[INFO   ] [HIDMotionEvent] using <b'FT5406 memory based driver\x00                                                                                                                                                                                                                                     '>
[INFO   ] [MTD         ] </dev/input/event0> range position Y is 0 - 480
[INFO   ] [HIDMotionEvent] <b'FT5406 memory based driver\x00                                                                                                                                                                                                                                     '> range ABS X position is 0 - 800
[INFO   ] [MTD         ] </dev/input/event0> range touch major is 0 - 0
[INFO   ] [HIDMotionEvent] <b'FT5406 memory based driver\x00                                                                                                                                                                                                                                     '> range ABS Y position is 0 - 480
[INFO   ] [MTD         ] </dev/input/event0> range touch minor is 0 - 0
[INFO   ] [HIDMotionEvent] <b'FT5406 memory based driver\x00                                                                                                                                                                                                                                     '> range position X is 0 - 800
[INFO   ] [MTD         ] </dev/input/event0> range pressure is 0 - 255
[INFO   ] [HIDMotionEvent] <b'FT5406 memory based driver\x00                                                                                                                                                                                                                                     '> range position Y is 0 - 480
[INFO   ] [MTD         ] </dev/input/event0> axes invertion: X is 0, Y is 0
[INFO   ] [MTD         ] </dev/input/event0> rotation set to 0
[INFO   ] [Base        ] Leaving application in progress...
[INFO   ] [Support     ] Stopping twisted threads
[INFO   ] [Support     ] Shutting down twisted reactor
2019-01-12 10:13:54+0100 [-] Traceback (most recent call last):
2019-01-12 10:13:54+0100 [-]   File "main.py", line 2109, in <module>
2019-01-12 10:13:54+0100 [-]     WeatherFlowPiConsole().run()
2019-01-12 10:13:54+0100 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/app.py", line 826, in run
2019-01-12 10:13:54+0100 [-]     runTouchApp()
2019-01-12 10:13:54+0100 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/base.py", line 502, in runTouchApp
2019-01-12 10:13:54+0100 [-]     EventLoop.window.mainloop()
2019-01-12 10:13:54+0100 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/core/window/window_egl_rpi.py", line 92, in mainloop
2019-01-12 10:13:54+0100 [-]     self._mainloop()
2019-01-12 10:13:54+0100 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/core/window/window_egl_rpi.py", line 87, in _mainloop
2019-01-12 10:13:54+0100 [-]     EventLoop.idle()
2019-01-12 10:13:54+0100 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/base.py", line 337, in idle
2019-01-12 10:13:54+0100 [-]     Clock.tick()
2019-01-12 10:13:54+0100 [-]   File "/usr/local/lib/python3.5/dist-packages/kivy/clock.py", line 581, in tick
2019-01-12 10:13:54+0100 [-]     self._process_events()
2019-01-12 10:13:54+0100 [-]   File "kivy/_clock.pyx", line 384, in kivy._clock.CyClockBase._process_events
2019-01-12 10:13:54+0100 [-]   File "kivy/_clock.pyx", line 414, in kivy._clock.CyClockBase._process_events
2019-01-12 10:13:54+0100 [-]   File "kivy/_clock.pyx", line 412, in kivy._clock.CyClockBase._process_events
2019-01-12 10:13:54+0100 [-]   File "kivy/_clock.pyx", line 167, in kivy._clock.ClockEvent.tick
2019-01-12 10:13:54+0100 [-]   File "main.py", line 1819, in SagerForecast
2019-01-12 10:13:54+0100 [-]     Sky['Time'] = [item[0] if item[0] != None else NaN for item in Sky['obs']]
2019-01-12 10:13:54+0100 [-] TypeError: 'NoneType' object is not iterable
``

Hi @eric, good call, this is now firmly on the to-do list. I saw the same case this morning on my console, so it has probably affected everybody.

As to why you can’t restart, I think there might still be some gremlins in the API. It seems like any call that uses time_start and time_end is returning no observations…

@peter ;

I can confirm that both of my displays have both stopped working with the same errors displayed …

EDIT: I also can’t re-start. just fails…

Yep, sorry about this. The console is struggling with this bug: https://community.tempest.earth/t/api-call-failing-with-day-offset-time-start-or-time-end/2969. On the upside, the bug has given me the opportunity to rewrite the console to deal with empty/failed API calls, so hopefully the next version will be more stable :smiley: .

I’m afraid it is not clear when this bug is going to be fixed by WF, so you might have to wait until Monday to get your console running again.

bug or rewrite the api to be more logical in it’s structure ???

2 Likes