i recently bought an App board 3.1 together with a BME690 shuttle board and iam super heavily disappointed about the Development Desktop Software.
On a state of the art high end performant PC with lots of water cooling inside, this application is somewhat bad optimized and even pumps an AMD Ryzen 9 7950X3D with 64GB RAM over 80°C which is a bad thing to do with the current setup.
The application has very bad response times of user inputs from mouse clicking etc., is not checking vor valid inputs (e.g. trying to start a forced measurement and activating "active gas scan" freezes out).
The application does not start if no sensor is connected to USB, only if Sensor is there, application starts. This is a bad design decision. The user cannot start and configure stuff, whatever.
If the Board is connected, initially the application ran a firmware update very fast and it was not determinable, if it anyhow has worked before or not. After the update, at least, the board seems to represent different stati via the Status LED. I dont need to mention, that the user guide of the app board stops with its "initial steps" after just plugging USB... and then what? staring to the sky, hoping that a lightning shows up?
The user guide just does not guide, as even the status LEDs are NOT explained what and how they do!
After the firmware update the status LED was in a blinking red state. the Application was for some moments very busy at startup to show some empty graphs and configuration widget in standard mode. one could do stuff, but just nothing happened. The application completely misses board diagnostics to anyhow give a the use a hint about what is actually going on on the app board and shuttle board, just no information. even no option or functionality to do so. This is a bad design descision.
One could, after some web searching find out, what configuration might bring up some values, but again just nothing happens. buttons like "measurement" or "start streaming" are not described what they do, maybe because they just dont do something and are disabled for clicking. and remember, the further the app runs, the harder it hits the PC with system occupation.
After a restart of the desktop application, for some, not user intended reason, the application wants to bring up the frontend with other widgets which seemed to be bound to BSEC mode with IAQ panel etc. but then, the application crashes brutally away with different .NET issues.
one is:
"System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
bei BME6xy.BME6xy.BME680_Shown(Object sender, EventArgs e)
bei System.Windows.Forms.Form.OnShown(EventArgs e)
bei System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
bei System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
bei System.Windows.Forms.Control.InvokeMarshaledCallbacks()
"
Next is:
System.InvalidOperationException: Die Sammlung wurde geändert. Der Enumerationsvorgang kann möglicherweise nicht ausgeführt werden.
bei System.Collections.ArrayList.ArrayListEnumeratorSimple.MoveNext()
bei System.Windows.Forms.Application.ExitInternal()
bei System.Windows.Forms.Application.ThreadContext.OnThreadException(Exception t)
bei System.Windows.Forms.Control.InvokeMarshaledCallbacks()
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.Form.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
After PC restart, it somehow, magically worked again, but after several trys it crashed out again.
so, i ask myself, did i just bought >200EUR electronic and virtual trash? (have another one with BMV080 but why trying this out if the first one fails that hard and documentation is even worse)