143 small widget create a new category

Progress / Closed on issue #
What it Does
This is part of the way toward creating a small widget that opens the New Category view (shows CategorySheetView). However, I need some help figuring out the deep linking part.
How I Tested

Add the widget in the simulator by searching for "Brain".
Pause to admire the not-too-bad layout.
Wince slightly when it does not open the expected view.

Notes

IrrelevantCuteView.swift was a test view I was hoping to display on the way to debugging why I could not launch CategorySheetView. However, I stalled out earlier because onOpenURL does not seem to be called at all.

Screenshot

Add a screenshot of your new feature! OR show a screen recording of it in action

What's changed:

Moved onOpenURL into CategoryList. This now sets showingCategorySheet to true, displaying the New Category sheet view.
After discussion with @baus8650, who helped with all of this, I ended up keeping the tags to identify the tabs in ContentView. This enables us to correctly return to the CategoryList view even if the app was previously in the Settings view when the widget was tapped.

The widget now works as expected.


build: Migrate pytest configuration to pyproject.toml.

This works locally for me, but not all of the tox suite would run since the .pip files won't reliably install (yet).
However, the pytest suite runs locally on 3.9 just fine, so pushing this to see if it runs the CI test suite OK.

Re the balanced_clumps section more generally, I wasn't sure how to know if the plugin is definitely working and configured, if that's what that section is about. Since I'm unsure if the test system would fail to run, or just not balance cleanly (using xdist?) if this config was not found in setup.cfg, but was present in  pyproject.toml.


⚠ Thumbnails API Endpoint has degraded performance

In 16f2ac8, Thumbnails API Endpoint (https://thumbnails.roblox.com/v1/assets?assetIds=82738847&format=Png&isCircular=false&size=30x30) experienced degraded performance:

HTTP code: 200
Response time: 1947 ms

Resolved: Thumbnails API Endpoint performance has improved in 91bd798 after 9 minutes.


How to generate an animation?

Describe the bug
It took the computer (13900K+4090, WSL) too long to run the sample command of creating a one-second animation. And in scenes_db, it notes either crashed or notdone. (So I stopped it after about 12 hours.)
Steps to Reproduce
python -m tools.manage_datagen_jobs --output_folder outputs/my_videos01 --num_scenes 500  \
    --pipeline_config local_16GB.gin monocular_video cuda_terrain opengl_gt    \
    --cleanup big_files --warmup_sec 30000 --config high_quality_terrain    \
    --pipeline_overrides iterate_scene_tasks.frame_range=[1,25]

What version of the code were you using?

The sample code for creating 1 second video clips with tiny updates:
python -m tools.manage_datagen_jobs --output_folder outputs/my_videos01 --num_scenes 500  \
    --pipeline_config local_16GB.gin monocular_video cuda_terrain opengl_gt    \
    --cleanup big_files --warmup_sec 30000 --config high_quality_terrain    \
    --pipeline_overrides iterate_scene_tasks.frame_range=[1,25]

What are your FULL output logs?
I attached the crash_summaries.txt and scenes_db.csv.
There are too many logs. If the attached are not enough, let me know which one could be helpful. Thank you.
[crash_summaries.txt](https://github.com/princeton-vl/infinigen/files/12710166/crash_summaries.txt)
[scenes_db.csv](https://github.com/princeton-vl/infinigen/files/12710248/scenes_db.csv)

If this is your first time running Infinigen, what are the full output logs of install.sh ?**
Where is the log? (I don't think any error showed when I ran it the first time. And I ran the following commands as well.
sudo apt-get install libglm-dev libglew-dev libglfw3-dev libgles2-mesa-dev zlib1g-dev
sudo apt-get install doxygen
sudo apt-get install libxinerama-dev
sudo apt-get install libxcursor-dev
sudo apt-get install libxi-dev
bash worldgen/tools/install/compile_opengl.sh

All goes well. The output of compile_openg.sh looks as following:
-- Configuring done
-- Generating done
-- Build files have been written to: /mnt/d/Programs/infinigen/process_mesh/build
Consolidate compiler generated dependencies of target cnpy
[  9%] Built target cnpy
Consolidate compiler generated dependencies of target process_mesh
[ 72%] Built target process_mesh
Consolidate compiler generated dependencies of target cnpy-static
[ 81%] Built target cnpy-static
Consolidate compiler generated dependencies of target example1
[ 90%] Built target example1
Consolidate compiler generated dependencies of target fast_obj_lib
[100%] Built target fast_obj_lib
OpenGL/EGL ground truth is working.
/mnt/d/Programs/infinigen

Platform

OS & OS Version: Windows 10 + WSL Ubuntu 22.04

GPU (?) : Geforce RTX 4090

GPU Driver Version (?) :
NVIDIA-SMI 535.103                Driver Version: 537.13       CUDA Version: 12.2

RAM (GB): 32GB

Additional context
Add any other context about the problem here.

I ran the opengl bash file in tmp file, and got the following error:
GLSL 4.40 is not supported.
Could this be a reason?

I also tried to run the following command:
python -m tools.manage_datagen_jobs --specific_seed 3930249d --output_folder outputs/fire01 --num_scenes 1 --pipeline_config local_64GB.gin monocular_video.gin --cleanup none --config plain.gin fast_terrain_assets.gin use_on_the_fly_fire.gin

And here is the crash_summaries I got:
3930249d populate<PHONE_NUMBER>3 None Could not summarize cause, check outputs/fire01/3930249d/logs/populate.err fatal=False 09/25 02:57PM
3930249d backuppopulate<PHONE_NUMBER>5 None Could not summarize cause, check outputs/fire01/3930249d/logs/backuppopulate.err fatal=True 09/25 03:03PM

Here are the log files I got:
crash_summaries.txt
scenes_db.csv
logs.zip


[interop] add a testcase for inserting into std::set from Swift

@swift-ci please smoke test

@plotfi let's see how CI reacts 🙈

I know the feeling; I had a PR for testing out insertion a while ago that was weird on CI even though it “worked” locally

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please test

We actually already have tests for std::set::insert in swift/test/Interop/Cxx/stdlib/use-std-set.swift, I added a few tests in a recent PR: https://github.com/apple/swift/pull/66764

Cool, will close it then.


4.3.0 failed install

Hello. I have problem with installation of last version (4.3.0).
 ELEVATED  jrezab@MST-2418: install-Module -Name MicrosoftTeams
Untrusted repository
You are installing the modules from an untrusted repository. If you trust this repository, change its
InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from
'PSGallery'?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): Y
PackageManagement\Install-Package : The module 'MicrosoftTeams' cannot be installed or updated because the authenticode
 signature of the file 'MicrosoftTeams.psd1' is not valid.
At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\2.2.5\PSModule.psm1:9711 char:34
+ ... talledPackages = PackageManagement\Install-Package @PSBoundParameters
+                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (Microsoft.Power....InstallPackage:InstallPackage) [Install-Package],
   Exception
    + FullyQualifiedErrorId : InvalidAuthenticodeSignature,ValidateAndGet-AuthenticodeSignature,Microsoft.PowerShell.P
   ackageManagement.Cmdlets.InstallPackage

Hi @rezabj,
Could you please share which version of PowerrShellGet are you facing this issue with?
Get-Module -ListAvailable PowerShellGet

Hi @pbafna03 .

Hi @pbafna03 .
Get-Module -ListAvailable PowerShellGet

    Directory: C:\Program Files\WindowsPowerShell\Modules

ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------
Script     2.2.5      PowerShellGet                       {Find-Command, Find-DSCResource, Find-Module, Find-RoleCap...
Script     <IP_ADDRESS>    PowerShellGet                       {Install-Module, Find-Module, Save-Module, Update-Module...}

@rezabj - this does not seem to be reproducing, can you please also share the below to check which particular case this is happening:
(a) $psversiontable output
(b) get-executionpolicy -list
Also in the meanwhile, as a temporary workaround you can try to install with the -SkipPublisherCheck parameter with Install-Module

@pbafna03 Thank you very much for the contribution and sharing this explanation. @rezabj Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

@rezabj - could you please try this with the 4.3.1-preview version just released?

@pbafna03 - yes, 4.3.1-preview installation works fine. Thanks


LED

Description
In dashboard 1 we have node-red-contrib-ui-led - very useful - any chance of adding one of those - changes colours depending input....
Properties

Labelling
Style
Behaviour

Events

on-action: this widget would need to send a message back to Node-RED when it's action is triggered, e.g. button clicked
on-change: this widget would need to send a message back to Node-RED when it's value is changed/updated

Controls

enabled: this widget can be enabled/disabled
visible: this widget can be hidden

Existing Examples
We use Vuetify for a lot of our widgets, is there a Vuetify component that is similar to what you are looking for?
Have you provided an initial effort estimate for this issue?
I can not provide an initial effort estimate

on-action: this widget would need to send a message back to Node-RED when it's action is triggered, e.g. button clicked
on-change: this widget would need to send a message back to Node-RED when it's value is changed/updated

ui-led does not have those features does it?  I thought it was display only.

UI-LED is display only. For example I use it to show the state of a light or other device controlled by a button – but it’s a moot point since the buttons don’t yet seem to allow for custom state-dependent colour and icon – until then I have to stick with dashboard 1.
Regards
Pete
Peter Scargill
https://tech.scargill.net
Calle Ceuta 14
Galera
Granada 18840
Spain
+34 634 326331
From: Colin Law @.>
Sent: Tuesday, February 6, 2024 6:24 PM
To: FlowFuse/node-red-dashboard @.>
Cc: Peter Scargill @.>; Author @.>
Subject: Re: [FlowFuse/node-red-dashboard] LED (Issue #550)

on-action: this widget would need to send a message back to Node-RED when it's action is triggered, e.g. button clicked
on-change: this widget would need to send a message back to Node-RED when it's value is changed/updated

ui-led does not have those features does it? I thought it was display only.
—
Reply to this email directly, view it on GitHub https://github.com/FlowFuse/node-red-dashboard/issues/550#issuecomment-1930416059 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AAONJA4FOD5WH4JUNHS3S43YSJRMFAVCNFSM6AAAAABC3737DSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMZQGQYTMMBVHE .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AAONJA2623CDVFCMS3X4EP3YSJRMFA5CNFSM6AAAAABC3737DSWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTTTB7H3W.gif Message ID: @.*** @.***> >

Closing as duplicate of #423


Rename master/slave->leader/follower

Fixes #127

If I'm not mistaken, I believe there are also some master and slave terminology in the code for the analyzer.

Does this handle loading projects with the old terminology?

Does this handle loading projects with the old terminology?

Are you referencing old config files?

He's asking if old projects will continue to work after this change.

Looks like you forgot to rename "master" to "leader".

I didn't forget, I just didn't do it yet. Are we sure that we want to rename master->leader, as CTRE uses master/follower naming?

I think that should be good.

And is there a reason that existing projects wouldn't work?

We don't know. That's why we're asking you. :)

For now, the only difference is variable naming in the generated code, so I see no reason it wouldn't be backward-compatible. Though I haven't looked too much at the internals, so IDK.

As of now (fa2d0ab), the templates are entirely in leader/follower terminology. Up to here the application is backward-compatible, as all integrations with the python analysis code are through NetworkTableEntry objects that haven't been renamed (nor is there a reason to rename them).
Should I continue to convert the application code itself (a change that might not be backward-compatible) or do you want to merge this first? If you merge this, the issue should be reopened or unlinked.

As of now (fa2d0ab), the templates are entirely in leader/follower terminology. Up to here the application is backward-compatible, as all integrations with the python analysis code are through NetworkTableEntry objects that haven't been renamed (nor is there a reason to rename them).
Should I continue to convert the application code itself (a change that might not be backward-compatible) or do you want to merge this first? If you merge this, the issue should be reopened or unlinked.

I think you should update the analyzer as the primary goal of the issue is to make the naming more familiar to the user. Only changing internal variables doesn't really help with that.

It's a step. However, this application has (at least) three components that should switch terminology, each with their own risk of backward-incompatibility: the generated code (fixed in the current state of this PR), the project generator (that can also be split into frontend and the code itself), and the analyzer (this is the most important backward-compatibility-wise). I am asking the maintainers as to what extent should these changes be decoupled.
I think that the application code is the last that should be converted as it has absolutely no user interaction and most sensitive to changes and backward-compatibility. The templates are the least sensitive and have minimal risk of backward-incompatibility, therefore I converted them first. I'll look over the codebase to see what exactly can be converted with minimal risk, and convert it next (possibly in a separate PR).
I suggest decoupling these changes as they have different levels of risk, needed depth/focus of reviewing, and likeliness of being reverted/problematic.

I suggest decoupling these changes as they have different levels of risk, needed depth/focus of reviewing, and likeliness of being reverted/problematic.

From my experience, the slave/master terms are either internal variables or labels for the UI. As long as you keep the variables consistent, there shouldn't be any risk of backward-incompatibility. Also, you can easily verify this by running a pip install . in the directory and making sure the template generation doesn't fail and that the analyzer can read old jsons.

There's some discussion here on what's backwards compatible and what isn't, and I want to clarify that variable name changes and UI terminology changes are both backwards compatible. The only interface that has any serious compatibility considerations is the JSON format that goes to the analyzer, which is not affected here (it does not use master/slave terminology.)

I'm done with this, feel free to review.

Needs conflicts fixed, but otherwise looks good.

How bad will this conflict with #126? Does it make sense to do one before the other?

How bad will this conflict with #126? Does it make sense to do one before the other?

It shouldn't conflict too badly with #126 as it also makes these changes. From my experience updating #126 locally, the worst that could happen is that all these changes are overwritten/deleted.
As for the second question, I'm not too sure what would be the best course of action.

@sciencewhiz @Piphi5 -  I believe that 126 does too many things that it should be broken into multiple smaller, focused PRs. If wanted I can help with that.

#126 fixed this.


drawPoints not working on web ?

Steps to Reproduce
I am trying to use in a CustomPaint the canvas functions drawPoints and drawRawPoints.
They give an exception both on DartPad and on Chrome web of method not found.
Tried on:

web Chrome: KO
Android: OK

To reproduce paste this simple code in DartPad:
import 'package:flutter/material.dart';
import 'dart:ui';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: CustomPaint(painter: MyCustomPainter()),
        ),
      ),
    );
  }
}

class MyCustomPainter extends CustomPainter {
  @override
  void paint(Canvas canvas, Size size){
    // working
    canvas.drawLine(
      Offset(0,0),
      Offset(300,300),
      Paint()..color = Color(0xffff0000));

    // not working, gives error
    canvas.drawPoints(
      PointMode.lines,
      [Offset(0,0),Offset(300,300)],
      Paint()..color = Color(0xffff0000));
  }
  @override
  bool shouldRepaint(MyCustomPainter arg) => true;
}

Logs
The following PersistedSurfaceException was thrown during a scheduler callback:
PersistedOffset: is in an unexpected state.
Expected one of: PersistedSurfaceState.active, PersistedSurfaceState.released
But was: PersistedSurfaceState.pendingRetention
When the exception was thrown, this was the stack
dart:sdk_internal 4463:11                                      throw_
dart:sdk_internal 166661:15                                    debugAssertSurfaceState
dart:sdk_internal 156922:32                                    addRetained
packages/flutter/src/rendering/layer.dart.lib.js 730:17        [_addToSceneWithRetainedRendering]
packages/flutter/src/rendering/layer.dart.lib.js 1318:50       addChildrenToScene
...
════════════════════════════════════════════════════════════════════════════════

Doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, 1.19.0-4.1.pre, on Mac OS X 10.14.6 18G5033, locale en-IT)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
[✓] Chrome - develop for the web
[!] Android Studio (version 3.5)
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.46.0)
[✓] Connected device (3 available)

Hi @camillo777
I cannot reproduce the issue you are describing
with this code sample
the problem might depend from your implementation.
Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you

I found this issue using the same code on  flutter web  ,not DartPad.

Logs
══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════

The following NoSuchMethodError was thrown during a scheduler callback:

'<Unexpected Null Value>'

method not found

Receiver: null

Arguments: []

When the exception was thrown, this was the stack:

dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 214:49      throw_

dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 56:3        throwNullValueError

dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 486:39  _notNull

lib/_engine/engine/bitmap_canvas.dart 812:65                                      drawPoints

lib/_engine/engine/surface/recording_canvas.dart 1023:11                          apply

lib/_engine/engine/surface/recording_canvas.dart 161:24                           apply

lib/_engine/engine/surface/picture.dart 272:35                                    paintCallback

lib/_engine/engine/surface/surface.dart 48:14                                     commitScene

lib/_engine/engine/surface/scene_builder.dart 546:7                               <fn>

lib/_engine/engine/profiler.dart 36:18                                            timeAction

lib/_engine/engine/surface/scene_builder.dart 540:12                              build

packages/flutter/src/rendering/layer.dart 810:35                                  buildScene

packages/flutter/src/rendering/view.dart 232:36                                   compositeFrame

packages/flutter/src/rendering/binding.dart 408:18                                drawFrame

packages/flutter/src/widgets/binding.dart 867:13                                  drawFrame

packages/flutter/src/rendering/binding.dart 286:5                                 [_handlePersistentFrameCallback]

packages/flutter/src/scheduler/binding.dart 1115:15                               [_invokeFrameCallback]

packages/flutter/src/scheduler/binding.dart 1054:9                                handleDrawFrame

packages/flutter/src/scheduler/binding.dart 863:7                                 <fn>

dart-sdk/lib/_internal/js_dev_runtime/private/isolate_helper.dart 48:19           internalCallback

════════════════════════════════════════════════════════════════════════════════════════════════════

Another exception was thrown: NoSuchMethodError: '<Unexpected Null Value>'

══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════
The following PersistedSurfaceException was thrown during a scheduler callback:
PersistedOffset: is in an unexpected state.
Expected one of: PersistedSurfaceState.active, PersistedSurfaceState.released
But was: PersistedSurfaceState.pendingRetention

When the exception was thrown, this was the stack:
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 214:49  throw_
lib/_engine/engine/surface/surface.dart 175:3                                 debugAssertSurfaceState
lib/_engine/engine/surface/scene_builder.dart 281:14                          addRetained
packages/flutter/src/rendering/layer.dart 442:14                              [_addToSceneWithRetainedRendering]
packages/flutter/src/rendering/layer.dart 1068:14                             addChildrenToScene
packages/flutter/src/rendering/layer.dart 1654:5                              addToScene
packages/flutter/src/rendering/layer.dart 805:5                               buildScene
packages/flutter/src/rendering/view.dart 232:36                               compositeFrame
packages/flutter/src/rendering/binding.dart 408:18                            drawFrame
packages/flutter/src/widgets/binding.dart 867:13                              drawFrame
packages/flutter/src/rendering/binding.dart 286:5                             [_handlePersistentFrameCallback]
packages/flutter/src/scheduler/binding.dart 1115:15                           [_invokeFrameCallback]
packages/flutter/src/scheduler/binding.dart 1054:9                            handleDrawFrame
packages/flutter/src/scheduler/binding.dart 970:5                             [_handleDrawFrame]
lib/_engine/engine/window.dart 739:13                                         _invoke
lib/_engine/engine/window.dart 352:5                                          invokeOnDrawFrame
lib/_engine/engine.dart 214:18                                                <fn>
════════════════════════════════════════════════════════════════════════════════════════════════════

════════ Exception caught by scheduler library ═════════════════════════════════════════════════════
The following PersistedSurfaceException was thrown during a scheduler callback:
PersistedOffset: is in an unexpected state.
Expected one of: PersistedSurfaceState.active, PersistedSurfaceState.released
But was: PersistedSurfaceState.pendingRetention

When the exception was thrown, this was the stack:
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 214:49  throw_
lib/_engine/engine/surface/surface.dart 175:3                                 debugAssertSurfaceState
lib/_engine/engine/surface/scene_builder.dart 281:14                          addRetained
packages/flutter/src/rendering/layer.dart 442:14                              [_addToSceneWithRetainedRendering]
packages/flutter/src/rendering/layer.dart 1068:14                             addChildrenToScene
...
════════════════════════════════════════════════════════════════════════════════════════════════════

flutter doctor -v

[✓] Flutter (Channel master, 1.20.0-1.0.pre.42, on Mac OS X 10.15.5 19F101,
    locale zh-Hant-TW)
    • Flutter version 1.20.0-1.0.pre.42 at /usr/local/flutter
    • Framework revision 401690a64f (2 days ago), 2020-06-12 19:45:48 -0700
    • Engine revision 965fbbed17
    • Dart version 2.9.0 (build 2.9.0-14.0.dev 2b917f5b6a)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.1)
    • Android SDK at /Users/johnhuang/Library/Android/sdk
    • Platform android-29, build-tools 29.0.1
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] IntelliJ IDEA Ultimate Edition (version 2020.1.1)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 46.0.3
    • Dart plugin version 201.7223.99

[✓] Connected device (2 available)
    • Web Server • web-server • web-javascript • Flutter Tools
    • Chrome     • chrome     • web-javascript • Google Chrome 83.0.4103.97

• No issues found!

It seems that only specifying "strokeWidth" will make it work... see sample below:
import 'package:flutter/material.dart';
import 'dart:ui';
import 'dart:typed_data';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: CustomPaint(painter: MyCustomPainter()),
        ),
      ),
    );
  }
}

class MyCustomPainter extends CustomPainter {
  @override
  void paint(Canvas canvas, Size size) {
    canvas.drawLine(
        Offset(0, 0), Offset(300, 300), Paint()..color = Color(0xffff0000));

    canvas.drawPoints(
        PointMode.lines,
        [Offset(0, 0), Offset(300, 300)],
        Paint()
          ..color = Colors.black
          ..strokeWidth = 1);

    canvas.drawRawPoints(
        PointMode.lines,
        Float32List.fromList([0, 0, 200, 100]),
        Paint()
          ..color = Colors.red
          ..strokeWidth = 1);
  }

  @override
  bool shouldRepaint(MyCustomPainter arg) => true;
}

Hi @camillo777
running the code sample
commenting out line 74 //..strokeWidth = 4
on android

android logs
[  +22 ms] Launching lib/main.dart on Pixel 3a in debug mode...
[  +24 ms] /Users/nevercode/development/flutter_master/bin/cache/dart-sdk/bin/dart --disable-dart-dev
/Users/nevercode/development/flutter_master/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root
/Users/nevercode/development/flutter_master/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --incremental --target=flutter --debugger-module-names
-Ddart.developer.causal_async_stacks=true --output-dill /var/folders/c3/l5jpznsj5k37yrj47l__xpw40000gn/T/flutter_tools.3RQQT0/flutter_tool.hGBzmW/app.dill --packages .packages
-Ddart.vm.profile=false -Ddart.vm.product=false
--bytecode-options=source-positions,local-var-info,debugger-stops,instance-field-initializers,keep-unreachable-code,avoid-closure-call-instructions --enable-asserts
--track-widget-creation --filesystem-scheme org-dartlang-root --initialize-from-dill build/cache.dill.track.dill
[ +129 ms] executing: /Users/nevercode/Library/Android/sdk/build-tools/29.0.2/aapt dump xmltree /Users/nevercode/Desktop/projects/master/build/app/outputs/flutter-apk/app.apk
AndroidManifest.xml
[  +35 ms] Exit code 0 from: /Users/nevercode/Library/Android/sdk/build-tools/29.0.2/aapt dump xmltree
/Users/nevercode/Desktop/projects/master/build/app/outputs/flutter-apk/app.apk AndroidManifest.xml
[   +1 ms] N: android=http://schemas.android.com/apk/res/android
             E: manifest (line=2)
               A: android:versionCode(0x0101021b)=(type 0x10)0x1
               A: android:versionName(0x0101021c)="1.0.0" (Raw: "1.0.0")
               A: android:compileSdkVersion(0x01010572)=(type 0x10)0x1c
               A: android:compileSdkVersionCodename(0x01010573)="9" (Raw: "9")
               A: package="com.example.master" (Raw: "com.example.master")
               A: platformBuildVersionCode=(type 0x10)0x1c
               A: platformBuildVersionName=(type 0x10)0x9
               E: uses-sdk (line=7)
                 A: android:minSdkVersion(0x0101020c)=(type 0x10)0x10
                 A: android:targetSdkVersion(0x01010270)=(type 0x10)0x1c
               E: uses-permission (line=14)
                 A: android:name(0x01010003)="android.permission.INTERNET" (Raw: "android.permission.INTERNET")
               E: application (line=22)
                 A: android:label(0x01010001)="master" (Raw: "master")
                 A: android:icon(0x01010002)=@0x7f080000
                 A: android:name(0x01010003)="io.flutter.app.FlutterApplication" (Raw: "io.flutter.app.FlutterApplication")
                 A: android:debuggable(0x0101000f)=(type 0x12)0xffffffff
                 A: android:appComponentFactory(0x0101057a)="androidx.core.app.CoreComponentFactory" (Raw: "androidx.core.app.CoreComponentFactory")
                 E: activity (line=28)
                   A: android:theme(0x01010000)=@0x7f0a0000
                   A: android:name(0x01010003)="com.example.master.MainActivity" (Raw: "com.example.master.MainActivity")
                   A: android:launchMode(0x0101001d)=(type 0x10)0x1
                   A: android:configChanges(0x0101001f)=(type 0x11)0x40003fb4
                   A: android:windowSoftInputMode(0x0101022b)=(type 0x11)0x10
                   A: android:hardwareAccelerated(0x010102d3)=(type 0x12)0xffffffff
                   E: meta-data (line=42)
                     A: android:name(0x01010003)="io.flutter.embedding.android.NormalTheme" (Raw: "io.flutter.embedding.android.NormalTheme")
                     A: android:resource(0x01010025)=@0x7f0a0001
                   E: meta-data (line=52)
                     A: android:name(0x01010003)="io.flutter.embedding.android.SplashScreenDrawable" (Raw: "io.flutter.embedding.android.SplashScreenDrawable")
                     A: android:resource(0x01010025)=@0x7f040000
                   E: intent-filter (line=56)
                     E: action (line=57)
                       A: android:name(0x01010003)="android.intent.action.MAIN" (Raw: "android.intent.action.MAIN")
                     E: category (line=59)
                       A: android:name(0x01010003)="android.intent.category.LAUNCHER" (Raw: "android.intent.category.LAUNCHER")
                 E: meta-data (line=66)
                   A: android:name(0x01010003)="flutterEmbedding" (Raw: "flutterEmbedding")
                   A: android:value(0x01010024)=(type 0x10)0x2
[  +68 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C shell -x logcat -v time -t 1
[  +98 ms] Exit code 0 from: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C shell -x logcat -v time -t 1
[        ] --------- beginning of main
           06-15 17:20:41.667 E/ResolverController(  785): No valid NAT64 prefix (167, <unspecified>/0)
[ +191 ms] <- compile package:master/main.dart
[  +36 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb version
[ +133 ms] Android Debug Bridge version 1.0.41
                    Version 30.0.0-6374843
                    Installed as /Users/nevercode/Library/Android/sdk/platform-tools/adb
[  +27 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb start-server
[  +50 ms] Building APK
[ +142 ms] Running Gradle task 'assembleDebug'...
[   +7 ms] gradle.properties already sets `android.enableR8`
[  +38 ms] Using gradle from /Users/nevercode/Desktop/projects/master/android/gradlew.
[   +5 ms] /Users/nevercode/Desktop/projects/master/android/gradlew mode: 33261 rwxr-xr-x.
[  +25 ms] executing: /usr/bin/plutil -convert json -o - /Applications/Android Studio.app/Contents/Info.plist
[  +17 ms] Exit code 0 from: /usr/bin/plutil -convert json -o - /Applications/Android Studio.app/Contents/Info.plist
[   +1 ms] {"CFBundleName":"Android
Studio","JVMOptions":{"ClassPath":"$APP_PACKAGE\/Contents\/lib\/bootstrap.jar:$APP_PACKAGE\/Contents\/lib\/extensions.jar:$APP_PACKAGE\/Contents\/lib\/util.jar:$APP_PACKAGE\/Cont
ents\/lib\/jdom.jar:$APP_PACKAGE\/Contents\/lib\/log4j.jar:$APP_PACKAGE\/Contents\/lib\/trove4j.jar:$APP_PACKAGE\/Contents\/lib\/jna.jar","JVMVersion":"1.8*,1.8+","WorkingDirecto
ry":"$APP_PACKAGE\/Contents\/bin","MainClass":"com.intellij.idea.Main","Properties":{"idea.paths.selector":"AndroidStudio3.6","idea.executable":"studio","idea.platform.prefix":"A
ndroidStudio","idea.home.path":"$APP_PACKAGE\/Contents"}},"NSDesktopFolderUsageDescription":"An application in Android Studio requests access to the user's Desktop
folder.","LSArchitecturePriority":["x86_64"],"CFBundleVersion":"AI-192.7<IP_ADDRESS>92135","CFBundleDevelopmentRegion":"English","NSCameraUsageDescription":"An application in
Android Studio requests access to the device's camera.","CFBundleDocumentTypes":[{"CFBundleTypeName":"Android Studio Project
File","CFBundleTypeExtensions":["ipr"],"CFBundleTypeRole":"Editor","CFBundleTypeIconFile":"studio.icns"},{"CFBundleTypeName":"All
documents","CFBundleTypeExtensions":["*"],"CFBundleTypeOSTypes":["****"],"CFBundleTypeRole":"Editor","LSTypeIsPackage":false}],"NSSupportsAutomaticGraphicsSwitching":true,"CFBund
lePackageType":"APPL","CFBundleIconFile":"studio.icns","NSHighResolutionCapable":true,"CFBundleShortVersionString":"3.6","NSMicrophoneUsageDescription":"An application in Android
Studio requests access to the device's microphone.","CFBundleInfoDictionaryVersion":"6.0","CFBundleExecutable":"studio","NSLocationUsageDescription":"An application in Android
Studio requests access to the user's location
information.","LSRequiresNativeExecution":"YES","CFBundleURLTypes":[{"CFBundleTypeRole":"Editor","CFBundleURLName":"Stacktrace","CFBundleURLSchemes":["idea"]}],"CFBundleIdentifie
r":"com.google.android.studio","LSApplicationCategoryType":"public.app-category.developer-tools","CFBundleSignature":"????","LSMinimumSystemVersion":"10.8","NSDocumentsFolderUsag
eDescription":"An application in Android Studio requests access to the user's Documents folder.","NSDownloadsFolderUsageDescription":"An application in Android Studio requests
access to the user's Downloads folder.","NSNetworkVolumesUsageDescription":"An application in Android Studio requests access to files on a network
volume.","CFBundleGetInfoString":"Android Studio 3.6, build AI-192.7<IP_ADDRESS>92135. Copyright JetBrains s.r.o., (c) 2000-2020","NSRemovableVolumesUsageDescription":"An
application in Android Studio requests access to files on a removable volume."}
[  +28 ms] executing: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java -version
[ +331 ms] Exit code 0 from: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java -version
[   +1 ms] openjdk version "1.8.0_212-release"
           OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
           OpenJDK 64-Bit Server VM (build 25.212-b4-5784211, mixed mode)
[  +13 ms] executing: [/Users/nevercode/Desktop/projects/master/android/] /Users/nevercode/Desktop/projects/master/android/gradlew -Pverbose=true -Ptarget-platform=android-arm64
-Ptarget=/Users/nevercode/Desktop/projects/master/lib/main.dart -Ptrack-widget-creation=true -Pfilesystem-scheme=org-dartlang-root assembleDebug
[+5937 ms] > Task :app:compileFlutterBuildDebug
[  +10 ms] [ +197 ms] executing: [/Users/nevercode/development/flutter_master/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[ +217 ms] [  +63 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +1 ms] [        ] 401690a64f7780ca55c763ebf2e0b449b1180c2e
[   +3 ms] [   +1 ms] executing: [/Users/nevercode/development/flutter_master/] git tag --contains HEAD
[ +510 ms] [+1378 ms] Exit code 0 from: git tag --contains HEAD
[   +1 ms] [   +6 ms] executing: [/Users/nevercode/development/flutter_master/] git describe --match *.*.*-*.*.pre --first-parent --long --tags
[  +93 ms] [ +118 ms] Exit code 0 from: git describe --match *.*.*-*.*.pre --first-parent --long --tags
[        ] [   +1 ms] 1.20.0-0.0.pre-42-g401690a64
[ +101 ms] [  +28 ms] executing: [/Users/nevercode/development/flutter_master/] git rev-parse --abbrev-ref --symbolic @{u}
[        ] [  +30 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] [   +1 ms] origin/master
[        ] [        ] executing: [/Users/nevercode/development/flutter_master/] git ls-remote --get-url origin
[        ] [  +23 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] [        ] https://github.com/flutter/flutter.git
[ +300 ms] [ +298 ms] executing: [/Users/nevercode/development/flutter_master/] git rev-parse --abbrev-ref HEAD
[  +94 ms] [ +118 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] [  +15 ms] master
[ +203 ms] [ +184 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [   +4 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [   +1 ms] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +92 ms] [  +11 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[   +1 ms] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[  +92 ms] [ +152 ms] Initializing file store
[        ] [  +16 ms] Done initializing file store
[  +98 ms] [  +68 ms] Skipping target: gen_localizations
[+1699 ms] [+1660 ms] kernel_snapshot: Starting due to {InvalidatedReason.inputChanged}
[ +106 ms] [ +118 ms] /Users/nevercode/development/flutter_master/bin/cache/dart-sdk/bin/dart --disable-dart-dev
/Users/nevercode/development/flutter_master/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root
/Users/nevercode/development/flutter_master/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --target=flutter -Ddart.developer.causal_async_stacks=true
-Ddart.vm.profile=false -Ddart.vm.product=false
--bytecode-options=source-positions,local-var-info,debugger-stops,instance-field-initializers,keep-unreachable-code,avoid-closure-call-instructions --enable-asserts
--track-widget-creation --no-link-platform --packages /Users/nevercode/Desktop/projects/master/.packages --output-dill
/Users/nevercode/Desktop/projects/master/.dart_tool/flutter_build/606a6792075af3e089fa34526643bc4d/app.dill --depfile
/Users/nevercode/Desktop/projects/master/.dart_tool/flutter_build/606a6792075af3e089fa34526643bc4d/kernel_snapshot.d package:master/main.dart
[+10397 ms] [+10417 ms] kernel_snapshot: Complete
[ +800 ms] [ +832 ms] debug_android_application: Starting due to {InvalidatedReason.inputChanged}
[ +399 ms] [ +350 ms] debug_android_application: Complete
[ +404 ms] [ +441 ms] Persisting file store
[        ] [  +10 ms] Done persisting file store
[        ] [   +8 ms] build succeeded.
[  +92 ms] [  +31 ms] "flutter assemble" took 14,158ms.
[        ] [  +13 ms] ensureAnalyticsSent: 2ms
[        ] [   +5 ms] Running shutdown hooks
[        ] [        ] Shutdown hooks complete
[        ] [   +1 ms] exiting with code 0
[ +395 ms] > Task :app:packLibsflutterBuildDebug UP-TO-DATE
[   +1 ms] > Task :app:preBuild UP-TO-DATE
[        ] > Task :app:preDebugBuild UP-TO-DATE
[        ] > Task :app:compileDebugAidl NO-SOURCE
[        ] > Task :app:checkDebugManifest UP-TO-DATE
[        ] > Task :app:compileDebugRenderscript NO-SOURCE
[   +1 ms] > Task :app:generateDebugBuildConfig UP-TO-DATE
[  +95 ms] > Task :app:cleanMergeDebugAssets
[        ] > Task :app:mergeDebugShaders UP-TO-DATE
[        ] > Task :app:compileDebugShaders UP-TO-DATE
[        ] > Task :app:generateDebugAssets UP-TO-DATE
[        ] > Task :app:mainApkListPersistenceDebug UP-TO-DATE
[        ] > Task :app:generateDebugResValues UP-TO-DATE
[        ] > Task :app:generateDebugResources UP-TO-DATE
[  +98 ms] > Task :app:mergeDebugResources UP-TO-DATE
[        ] > Task :app:mergeDebugAssets
[ +600 ms] > Task :app:copyFlutterAssetsDebug
[        ] > Task :app:createDebugCompatibleScreenManifests UP-TO-DATE
[        ] > Task :app:processDebugManifest UP-TO-DATE
[        ] > Task :app:processDebugResources UP-TO-DATE
[  +98 ms] > Task :app:compileDebugKotlin UP-TO-DATE
[        ] > Task :app:javaPreCompileDebug UP-TO-DATE
[        ] > Task :app:compileDebugJavaWithJavac UP-TO-DATE
[        ] > Task :app:compileDebugSources UP-TO-DATE
[        ] > Task :app:processDebugJavaRes NO-SOURCE
[  +99 ms] > Task :app:mergeDebugJavaResource UP-TO-DATE
[        ] > Task :app:checkDebugDuplicateClasses UP-TO-DATE
[  +97 ms] > Task :app:desugarDebugFileDependencies UP-TO-DATE
[        ] > Task :app:mergeExtDexDebug UP-TO-DATE
[        ] > Task :app:transformClassesWithDexBuilderForDebug UP-TO-DATE
[        ] > Task :app:mergeDexDebug UP-TO-DATE
[  +98 ms] > Task :app:validateSigningDebug UP-TO-DATE
[        ] > Task :app:signingConfigWriterDebug UP-TO-DATE
[        ] > Task :app:mergeDebugJniLibFolders UP-TO-DATE
[        ] > Task :app:mergeDebugNativeLibs UP-TO-DATE
[        ] > Task :app:stripDebugDebugSymbols UP-TO-DATE
[        ] Compatible side by side NDK version was not found.
[+2599 ms] > Task :app:packageDebug
[ +299 ms] > Task :app:assembleDebug
[        ] BUILD SUCCESSFUL in 25s
[        ] 31 actionable tasks: 6 executed, 25 up-to-date
[ +405 ms] Running Gradle task 'assembleDebug'... (completed in 27.0s)
[ +203 ms] calculateSha: LocalDirectory: '/Users/nevercode/Desktop/projects/master/build/app/outputs/flutter-apk'/app.apk
[  +97 ms] calculateSha: reading file took 95us
[+1042 ms] calculateSha: computing sha took 1042us
[  +17 ms] ✓ Built build/app/outputs/flutter-apk/app-debug.apk.
[  +29 ms] executing: /Users/nevercode/Library/Android/sdk/build-tools/29.0.2/aapt dump xmltree /Users/nevercode/Desktop/projects/master/build/app/outputs/flutter-apk/app.apk
AndroidManifest.xml
[  +47 ms] Exit code 0 from: /Users/nevercode/Library/Android/sdk/build-tools/29.0.2/aapt dump xmltree
/Users/nevercode/Desktop/projects/master/build/app/outputs/flutter-apk/app.apk AndroidManifest.xml
[   +1 ms] N: android=http://schemas.android.com/apk/res/android
             E: manifest (line=2)
               A: android:versionCode(0x0101021b)=(type 0x10)0x1
               A: android:versionName(0x0101021c)="1.0.0" (Raw: "1.0.0")
               A: android:compileSdkVersion(0x01010572)=(type 0x10)0x1c
               A: android:compileSdkVersionCodename(0x01010573)="9" (Raw: "9")
               A: package="com.example.master" (Raw: "com.example.master")
               A: platformBuildVersionCode=(type 0x10)0x1c
               A: platformBuildVersionName=(type 0x10)0x9
               E: uses-sdk (line=7)
                 A: android:minSdkVersion(0x0101020c)=(type 0x10)0x10
                 A: android:targetSdkVersion(0x01010270)=(type 0x10)0x1c
               E: uses-permission (line=14)
                 A: android:name(0x01010003)="android.permission.INTERNET" (Raw: "android.permission.INTERNET")
               E: application (line=22)
                 A: android:label(0x01010001)="master" (Raw: "master")
                 A: android:icon(0x01010002)=@0x7f080000
                 A: android:name(0x01010003)="io.flutter.app.FlutterApplication" (Raw: "io.flutter.app.FlutterApplication")
                 A: android:debuggable(0x0101000f)=(type 0x12)0xffffffff
                 A: android:appComponentFactory(0x0101057a)="androidx.core.app.CoreComponentFactory" (Raw: "androidx.core.app.CoreComponentFactory")
                 E: activity (line=28)
                   A: android:theme(0x01010000)=@0x7f0a0000
                   A: android:name(0x01010003)="com.example.master.MainActivity" (Raw: "com.example.master.MainActivity")
                   A: android:launchMode(0x0101001d)=(type 0x10)0x1
                   A: android:configChanges(0x0101001f)=(type 0x11)0x40003fb4
                   A: android:windowSoftInputMode(0x0101022b)=(type 0x11)0x10
                   A: android:hardwareAccelerated(0x010102d3)=(type 0x12)0xffffffff
                   E: meta-data (line=42)
                     A: android:name(0x01010003)="io.flutter.embedding.android.NormalTheme" (Raw: "io.flutter.embedding.android.NormalTheme")
                     A: android:resource(0x01010025)=@0x7f0a0001
                   E: meta-data (line=52)
                     A: android:name(0x01010003)="io.flutter.embedding.android.SplashScreenDrawable" (Raw: "io.flutter.embedding.android.SplashScreenDrawable")
                     A: android:resource(0x01010025)=@0x7f040000
                   E: intent-filter (line=56)
                     E: action (line=57)
                       A: android:name(0x01010003)="android.intent.action.MAIN" (Raw: "android.intent.action.MAIN")
                     E: category (line=59)
                       A: android:name(0x01010003)="android.intent.category.LAUNCHER" (Raw: "android.intent.category.LAUNCHER")
                 E: meta-data (line=66)
                   A: android:name(0x01010003)="flutterEmbedding" (Raw: "flutterEmbedding")
                   A: android:value(0x01010024)=(type 0x10)0x2
[   +2 ms] Stopping app 'app.apk' on Pixel 3a.
[   +1 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C shell am force-stop com.example.master
[ +158 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C shell pm list packages com.example.master
[  +72 ms] package:com.example.master
[   +4 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C shell cat /data/local/tmp/sky.com.example.master.sha1
[  +84 ms] d41492d8ab9dca1b178828eab1f68617230cb505
[   +1 ms] Installing APK.
[   +5 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb version
[  +16 ms] Android Debug Bridge version 1.0.41
           Version 30.0.0-6374843
           Installed as /Users/nevercode/Library/Android/sdk/platform-tools/adb
[   +1 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb start-server
[  +13 ms] Installing build/app/outputs/flutter-apk/app.apk...
[   +2 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C install -t -r
/Users/nevercode/Desktop/projects/master/build/app/outputs/flutter-apk/app.apk
[+4106 ms] Performing Streamed Install
                    Success
[        ] Installing build/app/outputs/flutter-apk/app.apk... (completed in 4.1s)
[   +1 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C shell echo -n bc57f677e7f5d765c51d20b4b3c53908939b2850 >
/data/local/tmp/sky.com.example.master.sha1
[  +26 ms] Pixel 3a startApp
[   +4 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C shell am start -a android.intent.action.RUN -f 0x20000000 --ez
enable-background-compilation true --ez enable-dart-profiling true --ez enable-checked-mode true --ez verify-entry-points true com.example.master/com.example.master.MainActivity
[  +82 ms] Starting: Intent { act=android.intent.action.RUN flg=0x20000000 cmp=com.example.master/.MainActivity (has extras) }
[        ] Waiting for observatory port to be available...
[+2069 ms] Observatory URL on device: http://<IP_ADDRESS>:41645/rYDT1jzC3nw=/
[   +2 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C forward tcp:0 tcp:41645
[  +13 ms] 51923
[        ] Forwarded host port 51923 to device port 41645 for Observatory
[   +9 ms] Caching compiled dill
[ +135 ms] Connecting to service protocol: http://<IP_ADDRESS>:51923/rYDT1jzC3nw=/
[ +870 ms] Successfully connected to service protocol: http://<IP_ADDRESS>:51923/rYDT1jzC3nw=/
[   +1 ms] Waiting for Pixel 3a to report its views...
[  +20 ms] Waiting for Pixel 3a to report its views... (completed in 18ms)
[  +17 ms] DevFS: Creating new filesystem on the device (null)
[  +79 ms] DevFS: Created new filesystem on the device (file:///data/user/0/com.example.master/code_cache/masterGCDJXU/master/)
[   +3 ms] Updating assets
[ +155 ms] Syncing files to device Pixel 3a...
[   +2 ms] Scanning asset files
[   +3 ms] <- reset
[        ] Compiling dart to kernel with 0 updated files
[   +1 ms] <- recompile package:master/main.dart 9dbb869d-46cf-4b61-a5b0-4d759b76aeec
[        ] <- 9dbb869d-46cf-4b61-a5b0-4d759b76aeec
[ +124 ms] Updating files
[ +399 ms] DevFS: Sync finished
[        ] Syncing files to device Pixel 3a... (completed in 532ms)
[        ] Synced 0.9MB.
[   +1 ms] <- accept
[   +8 ms] Connected to _flutterView/0x7216a18820.
[   +2 ms] Flutter run key commands.
[   +2 ms] r Hot reload. 🔥🔥🔥
[   +1 ms] R Hot restart.
[        ] h Repeat this help message.
[        ] d Detach (terminate "flutter run" but leave application running).
[        ] c Clear the screen
[        ] q Quit (terminate the application on the device).
[        ] An Observatory debugger and profiler on Pixel 3a is available at: http://<IP_ADDRESS>:51923/rYDT1jzC3nw=/
[+8747 ms] W/Gralloc3( 6062): mapper 3.x is not supported
[+9779 ms] DevFS: Deleting filesystem on the device (file:///data/user/0/com.example.master/code_cache/masterGCDJXU/master/)
[  +46 ms] DevFS: Deleted filesystem on the device (file:///data/user/0/com.example.master/code_cache/masterGCDJXU/master/)
[ +233 ms] Service protocol connection closed.
[        ] Application finished.
[   +3 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C forward --list
[   +7 ms] Exit code 0 from: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C forward --list
[        ] 965AY0WP5C tcp:51923 tcp:41645
[   +1 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C forward --remove tcp:51923
[  +12 ms] executing: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C forward --list
[   +8 ms] Exit code 0 from: /Users/nevercode/Library/Android/sdk/platform-tools/adb -s 965AY0WP5C forward --list
[   +2 ms] "flutter run" took 62,622ms.
[   +4 ms] Running shutdown hooks
[        ] Shutdown hook priority 4
[        ] Shutdown hooks complete
[        ] exiting with code 0

web logs
[ +309 ms] Launching lib/main.dart on Chrome in debug mode...
[ +143 ms] Updating assets
[ +239 ms] Syncing files to device Chrome...
[ +143 ms] Generating /Users/nevercode/Desktop/projects/master/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[ +163 ms] <- reset
[  +39 ms] /Users/nevercode/development/flutter_master/bin/cache/dart-sdk/bin/dart --disable-dart-dev
/Users/nevercode/development/flutter_master/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root
/Users/nevercode/development/flutter_master/bin/cache/flutter_web_sdk/ --incremental --target=dartdevc --debugger-module-names -Ddart.developer.causal_async_stacks=true
--output-dill /var/folders/c3/l5jpznsj5k37yrj47l__xpw40000gn/T/flutter_tools.4JCIPo/flutter_tool.PQxWcL/app.dill --libraries-spec
file:///Users/nevercode/development/flutter_master/bin/cache/flutter_web_sdk/libraries.json --packages .packages -Ddart.vm.profile=false -Ddart.vm.product=false
--bytecode-options=source-positions,local-var-info,debugger-stops,instance-field-initializers,keep-unreachable-code,avoid-closure-call-instructions --enable-asserts
--track-widget-creation --filesystem-root /var/folders/c3/l5jpznsj5k37yrj47l__xpw40000gn/T/flutter_tools.4JCIPo/flutter_tools.QypuRN --filesystem-scheme org-dartlang-app
--initialize-from-dill build/cache.dill.track.dill --platform file:///Users/nevercode/development/flutter_master/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk.dill
[  +54 ms] <- compile org-dartlang-app:/web_entrypoint.dart
[+25986 ms] Syncing files to device Chrome... (completed in 26,374ms, longer than expected)
[   +1 ms] Synced 21.8MB.
[   +1 ms] <- accept
[   +1 ms] Caching compiled dill
[ +905 ms] [CHROME]:
[   +3 ms] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:51992/devtools/browser/4fb94cfa-75c3-4c02-a399-404988d5dd9e
[+5354 ms] Debug service listening on ws://<IP_ADDRESS>:52017/N7wR7dJRAv4=

[ +675 ms] Debug service listening on ws://<IP_ADDRESS>:52017/N7wR7dJRAv4=
[   +2 ms] Warning: Flutter's support for web development is not stable yet and hasn't
[        ] been thoroughly tested in production environments.
[        ] For more information see https://flutter.dev/web
[        ] 🔥  To hot restart changes while running, press "r" or "R".
[   +1 ms] For a more detailed help message, press "h". To quit, press "q".
[+3500 ms] ══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════

[   +1 ms] The following NoSuchMethodError was thrown during a scheduler callback:

[   +1 ms] '<Unexpected Null Value>'

[        ] method not found

[   +1 ms] Receiver: null

[   +1 ms] Arguments: []

[   +2 ms] When the exception was thrown, this was the stack:

[   +1 ms] dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 214:49      throw_

[   +1 ms] dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 56:3        throwNullValueError

[   +6 ms] dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 486:39  _notNull

[   +1 ms] lib/_engine/engine/bitmap_canvas.dart 812:65                                      drawPoints

[        ] lib/_engine/engine/surface/recording_canvas.dart 1023:11                          apply

[        ] lib/_engine/engine/surface/recording_canvas.dart 161:24                           apply

[        ] lib/_engine/engine/surface/picture.dart 272:35                                    paintCallback

[  +43 ms] lib/_engine/engine/surface/surface.dart 48:14                                     commitScene

[   +1 ms] lib/_engine/engine/surface/scene_builder.dart 546:7                               <fn>

[   +1 ms] lib/_engine/engine/profiler.dart 36:18                                            timeAction

[   +1 ms] lib/_engine/engine/surface/scene_builder.dart 540:12                              build

[        ] packages/flutter/src/rendering/layer.dart 808:35                                  buildScene

[        ] packages/flutter/src/rendering/view.dart 230:36                                   compositeFrame

[   +4 ms] packages/flutter/src/rendering/binding.dart 406:18                                drawFrame

[        ] packages/flutter/src/widgets/binding.dart 884:13                                  drawFrame

[        ] packages/flutter/src/rendering/binding.dart 284:5                                 [_handlePersistentFrameCallback]

[        ] packages/flutter/src/scheduler/binding.dart 1113:15                               [_invokeFrameCallback]

[   +1 ms] packages/flutter/src/scheduler/binding.dart 1052:9                                handleDrawFrame

[   +1 ms] packages/flutter/src/scheduler/binding.dart 968:5                                 [_handleDrawFrame]

[   +3 ms] lib/_engine/engine/window.dart 739:13                                             _invoke

[   +1 ms] lib/_engine/engine/window.dart 352:5                                              invokeOnDrawFrame

[        ] lib/_engine/engine.dart 214:18                                                    <fn>

[   +1 ms] ════════════════════════════════════════════════════════════════════════════════════════════════════

[   +1 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[   +6 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +11 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +17 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +15 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +16 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +18 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[ +137 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +14 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +15 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +17 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +15 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +16 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +17 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +18 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +12 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +16 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +20 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +15 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

[  +16 ms] Another exception was thrown: PersistedScene: is in an unexpected state.

doctor
[✓] Flutter (Channel master, 1.20.0-1.0.pre.42, on Mac OS X 10.15.5 19F101, locale en-GB)
    • Flutter version 1.20.0-1.0.pre.42 at /Users/nevercode/development/flutter_master
    • Framework revision 401690a64f (3 days ago), 2020-06-12 19:45:48 -0700
    • Engine revision 965fbbed17
    • Dart version 2.9.0 (build 2.9.0-14.0.dev 2b917f5b6a)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/nevercode/Library/Android/sdk
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[✓] VS Code
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.11.0

[✓] Connected device (4 available)
    • Pixel 3a   • 965AY0WP5C • android-arm64  • Android 10 (API 29)
    • macOS      • macOS      • darwin-x64     • Mac OS X 10.15.5 19F101
    • Web Server • web-server • web-javascript • Flutter Tools
    • Chrome     • chrome     • web-javascript • Google Chrome 83.0.4103.97

• No issues found!

strokeWidth should default on 0 and not causing crash on web as in android.
Thank you for reporting this


weird time/symbols

can u explain this and how to fix it?
im running it on a wemos d1 mini

Hello.
Any changes with this issue or still occurring?
Have you definitely set the number of displays correctly, and what is the expected value on the display? (Time, MQTT message?).
It might be worth wiping most of the code out and trying to display a simple message to see if everything is loading correctly.

Closing as stale


Really need a dailymotion support

Hi, i'd really like a dailymotion support, most of my videos get blocked on youtube, so I use dailymotion, the plyr skin looks way better than the default dailymotion skin. Please add this plugin !!

👍

Please search next time...
https://github.com/sampotts/plyr/issues/682
Feel free to PR it


Feature Request: to increase the limit of rooms (switches)

Is your feature request related to a problem? Please describe:
I have 20 rooms and clean zones in irobot app. After installing and configuring the plugin, I started sending the robot to these zones and rooms so switches started appearing in apple home app. But when it got to 10, the new switches stopped appearing there. Is there a limit to the number of switches corresponding to rooms and zones? If so, it should be great to increase the limit.
Describe the solution you'd like:
Increase the limit of switches (rooms)
Describe alternatives you've considered:
No response
Additional context:
No response
Node Version (optional):
20.18.1
NPM Version (optional):
10.8.2
Homebridge Version (optional):
1.8.5
Plugin Version:
3.2.4
Operating System (optional):
Raspberian

There is no limit enforced. Can you share the logs?

here is. I’ve never seen a region_id with id more than 10 in the logs.
[08/12/2024, 09:11:50] [iRobot] Homekit Requested Roomba 's Active State: Off
[08/12/2024, 09:11:54] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:11:54] [iRobot] enabling room 8 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:11:58] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:11:58] [iRobot] enabling room 10 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:12:02] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:12:02] [iRobot] enabling room 4 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:12:04] [iRobot] Set Roomba To Everywhere
[08/12/2024, 09:12:04] [iRobot] disabling room 0 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:12:07] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:12:07] [iRobot] enabling room 1 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:12:10] [iRobot] Set Roomba To Clean With args:undefined
[08/12/2024, 09:12:11] [iRobot] Starting Clean Cycle
[08/12/2024, 09:12:11] [iRobot] Room By Room: true
[08/12/2024, 09:12:11] [iRobot] Active Rooms: {"device":{"name":"Roomba","blid":"","password":"","ip":"<IP_ADDRESS>","model":"j7","multiRoom":true,"info":{"ver":"4","hostname":"iRobot-","robotname":"Roomba","robotid":"","mac":"*****","sw":"sapphire+23.12.4+2023-06-07-cca733b60c4+Firmware-Production+150","sku":"j755840","nc":0,"proto":"mqtt","cap":{"binFullDetect":2,"addOnHw":1,"oMode":10,"odoa":6,"dockComm":1,"maps":3,"pmaps":10,"mc":2,"tLine":2,"area":1,"eco":1,"multiPass":2,"edge":0,"pp":0,"team":1,"pose":2,"lang":2,"hm":0,"5ghz":1,"prov":3,"sched":2,"svcConf":1,"ota":2,"log":2,"langOta":0,"ns":1,"bleLog":1,"expectingUserConf":2},"freq":2462,"cloudConnState":14}},"connected":true,"maps":[{"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"},{"region_id":"2","type":"rid"},{"region_id":"3","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"0","type":"zid"},{"region_id":"4","type":"zid"},{"region_id":"5","type":"rid"},{"region_id":"8","type":"rid"},{"region_id":"10","type":"rid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"7","type":"rid"}],"user_pmapv_id":"241207T200238"}],"activeRooms":["1"],"activeMap":0}
[08/12/2024, 09:12:11] [iRobot] Clean Room Args:
{"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","user_pmapv_id":"241207T200238","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"}]}
[08/12/2024, 09:12:12] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "charge",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm": 0,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 347,
"missionId": "01JEJGT9VRV8967SF013HJY1DX"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733641931,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:12:12] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "run",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 2,
"initiator": "localApp",
"nMssn": 348,
"missionId": "01JEJHS370AC2VF5JEFBR6NT5P"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733641931,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:17:30] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "hmPostMsn",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 1,
"initiator": "localApp",
"nMssn": 348,
"missionId": "01JEJHS370AC2VF5JEFBR6NT5P"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733641931,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:18:15] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "evac",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 348,
"missionId": "01JEJHS370AC2VF5JEFBR6NT5P"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733641931,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:18:30] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "hmPostMsn",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 348,
"missionId": "01JEJHS370AC2VF5JEFBR6NT5P"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733641931,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:18:33] [iRobot] Homekit Requested Roomba 's Battery Status: Normal
[08/12/2024, 09:18:33] [iRobot] Homekit Requested Roomba 's Battery Level: 100
[08/12/2024, 09:18:33] [iRobot] Homekit Requested Roomba 's Mode: Room-By-Room
[08/12/2024, 09:18:33] [iRobot] Homekit Requested Roomba 's Active State: On
[08/12/2024, 09:18:34] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "none",
"phase": "charge",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 348,
"missionId": "01JEJHS370AC2VF5JEFBR6NT5P"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733641931,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:18:37] [iRobot] Set Roomba To Everywhere
[08/12/2024, 09:18:37] [iRobot] disabling room 1 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:18:40] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:18:40] [iRobot] enabling room 8 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:18:42] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:18:42] [iRobot] enabling room 10 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:18:43] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:18:43] [iRobot] enabling room 4 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:18:54] [iRobot] Set Roomba To Everywhere
[08/12/2024, 09:18:54] [iRobot] disabling room 8 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:18:55] [iRobot] Set Roomba To Everywhere
[08/12/2024, 09:18:55] [iRobot] disabling room 10 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:18:55] [iRobot] Set Roomba To Everywhere
[08/12/2024, 09:18:55] [iRobot] disabling room 4 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:19:25] [iRobot] Homekit Requested Roomba 's Active State: Off
[08/12/2024, 09:19:27] [iRobot] Homekit Requested Roomba 's Bin Full: false
[08/12/2024, 09:19:27] [iRobot] Homekit Requested Roomba 's Battery Status: Normal
[08/12/2024, 09:19:27] [iRobot] Homekit Requested Roomba 's Battery Level: 100
[08/12/2024, 09:19:27] [iRobot] Homekit Requested Roomba 's Mode: Everywhere
[08/12/2024, 09:19:27] [iRobot] Homekit Requested Roomba 's Stuck State: Not Stuck
[08/12/2024, 09:19:31] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:19:31] [iRobot] enabling room 8 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:19:33] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:19:33] [iRobot] enabling room 10 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:19:34] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 09:19:34] [iRobot] enabling room 4 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:19:40] [iRobot] Set Roomba To Clean With args:undefined
[08/12/2024, 09:19:41] [iRobot] Starting Clean Cycle
[08/12/2024, 09:19:41] [iRobot] Room By Room: true
[08/12/2024, 09:19:41] [iRobot] Active Rooms: {"device":{"name":"Roomba","blid":"","password":"","ip":"<IP_ADDRESS>","model":"j7","multiRoom":true,"info":{"ver":"4","hostname":"iRobot-","robotname":"Roomba","robotid":"***","mac":"*******","sw":"sapphire+23.12.4+2023-06-07-cca733b60c4+Firmware-Production+150","sku":"j755840","nc":0,"proto":"mqtt","cap":{"binFullDetect":2,"addOnHw":1,"oMode":10,"odoa":6,"dockComm":1,"maps":3,"pmaps":10,"mc":2,"tLine":2,"area":1,"eco":1,"multiPass":2,"edge":0,"pp":0,"team":1,"pose":2,"lang":2,"hm":0,"5ghz":1,"prov":3,"sched":2,"svcConf":1,"ota":2,"log":2,"langOta":0,"ns":1,"bleLog":1,"expectingUserConf":2},"freq":2462,"cloudConnState":14}},"connected":true,"maps":[{"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"},{"region_id":"2","type":"rid"},{"region_id":"3","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"0","type":"zid"},{"region_id":"4","type":"zid"},{"region_id":"5","type":"rid"},{"region_id":"8","type":"rid"},{"region_id":"10","type":"rid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"7","type":"rid"}],"user_pmapv_id":"241207T200238"}],"activeRooms":["8","10","4"],"activeMap":0}
[08/12/2024, 09:19:41] [iRobot] Clean Room Args:
{"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","user_pmapv_id":"241207T200238","regions":[{"region_id":"8","type":"rid"},{"region_id":"10","type":"rid"},{"region_id":"4","type":"zid"}]}
[08/12/2024, 09:19:41] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "charge",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm": 0,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 348,
"missionId": "01JEJHS370AC2VF5JEFBR6NT5P"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733642381,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"8","type":"rid"},{"region_id":"10","type":"rid"},{"region_id":"4","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:19:41] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "run",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 2,
"initiator": "localApp",
"nMssn": 349,
"missionId": "01JEJJ6SP87VXH41WAZ165A2X8"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733642381,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"8","type":"rid"},{"region_id":"10","type":"rid"},{"region_id":"4","type":"zid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:23:42] [iRobot] Homekit Requested Roomba 's Active State: On
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Stuck State: Not Stuck
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Battery Level: 100
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Charging State: Not Charging
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Battery Status: Normal
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Bin Full: false
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Mode: Room-By-Room
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Fan State: 2
[08/12/2024, 09:31:04] [iRobot] Homekit Requested Roomba 's Active State: On
[08/12/2024, 09:33:18] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "hmPostMsn",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 1,
"initiator": "localApp",
"nMssn": 349,
"missionId": "01JEJJ6SP87VXH41WAZ165A2X8"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"skip","initiator":"rmtApp","time":1733643195,"ordered":0,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"4","type":"zid"}],"user_pmapv_id":"241207T200238","params":{"reschedule":false}}
[08/12/2024, 09:33:32] [iRobot] Homekit Requested Roomba 's Battery Status: Normal
[08/12/2024, 09:33:32] [iRobot] Homekit Requested Roomba 's Battery Level: 86
[08/12/2024, 09:33:32] [iRobot] Homekit Requested Roomba 's Mode: Room-By-Room
[08/12/2024, 09:33:32] [iRobot] Homekit Requested Roomba 's Active State: On
[08/12/2024, 09:34:09] [iRobot] Homekit Requested Roomba 's Active State: On
[08/12/2024, 09:34:14] [iRobot] Homekit Requested Roomba 's Stuck State: Not Stuck
[08/12/2024, 09:34:14] [iRobot] Homekit Requested Roomba 's Mode: Room-By-Room
[08/12/2024, 09:34:14] [iRobot] Homekit Requested Roomba 's Battery Status: Normal
[08/12/2024, 09:34:14] [iRobot] Homekit Requested Roomba 's Battery Level: 86
[08/12/2024, 09:34:14] [iRobot] Homekit Requested Roomba 's Bin Full: false
[08/12/2024, 09:34:33] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "evac",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 349,
"missionId": "01JEJJ6SP87VXH41WAZ165A2X8"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"skip","initiator":"rmtApp","time":1733643195,"ordered":0,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"4","type":"zid"}],"user_pmapv_id":"241207T200238","params":{"reschedule":false}}
[08/12/2024, 09:34:43] [iRobot] disabling room 10 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:34:44] [iRobot] Set Roomba To Everywhere
[08/12/2024, 09:34:44] [iRobot] disabling room 4 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:34:45] [iRobot] Set Roomba To Everywhere
[08/12/2024, 09:34:45] [iRobot] disabling room 8 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 09:34:48] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "hmPostMsn",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 349,
"missionId": "01JEJJ6SP87VXH41WAZ165A2X8"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"skip","initiator":"rmtApp","time":1733643195,"ordered":0,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"4","type":"zid"}],"user_pmapv_id":"241207T200238","params":{"reschedule":false}}
[08/12/2024, 09:34:54] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "none",
"phase": "charge",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 349,
"missionId": "01JEJJ6SP87VXH41WAZ165A2X8"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"skip","initiator":"rmtApp","time":1733643195,"ordered":0,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"4","type":"zid"}],"user_pmapv_id":"241207T200238","params":{"reschedule":false}}
[08/12/2024, 09:34:55] [iRobot] Homekit Requested Roomba 's Active State: Off
[08/12/2024, 09:34:58] [iRobot] Homekit Requested Roomba 's Stuck State: Not Stuck
[08/12/2024, 09:34:58] [iRobot] Homekit Requested Roomba 's Mode: Everywhere
[08/12/2024, 09:34:58] [iRobot] Homekit Requested Roomba 's Battery Status: Normal
[08/12/2024, 09:34:58] [iRobot] Homekit Requested Roomba 's Battery Level: 86
[08/12/2024, 09:34:58] [iRobot] Homekit Requested Roomba 's Bin Full: false
[08/12/2024, 09:35:26] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "charge",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm": 0,
"operatingMode": 0,
"initiator": "rmtApp",
"nMssn": 349,
"missionId": "01JEJJ6SP87VXH41WAZ165A2X8"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"rmtApp","time":1733643326,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"4","type":"rid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:35:26] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "run",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 2,
"initiator": "rmtApp",
"nMssn": 350,
"missionId": "01JEJK3MHGA0QK8E2BJ7HDC7K9"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"rmtApp","time":1733643326,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"4","type":"rid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:36:03] [iRobot] Homekit Requested Roomba 's Stuck State: Not Stuck
[08/12/2024, 09:36:03] [iRobot] Homekit Requested Roomba 's Battery Level: 86
[08/12/2024, 09:36:03] [iRobot] Homekit Requested Roomba 's Battery Status: Normal
[08/12/2024, 09:36:03] [iRobot] Homekit Requested Roomba 's Bin Full: false
[08/12/2024, 09:36:03] [iRobot] Homekit Requested Roomba 's Mode: Everywhere
[08/12/2024, 09:36:03] [iRobot] Homekit Requested Roomba 's Active State: On
[08/12/2024, 09:41:27] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "hmPostMsn",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 1,
"initiator": "rmtApp",
"nMssn": 350,
"missionId": "01JEJK3MHGA0QK8E2BJ7HDC7K9"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"rmtApp","time":1733643326,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"4","type":"rid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:42:19] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "evac",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "rmtApp",
"nMssn": 350,
"missionId": "01JEJK3MHGA0QK8E2BJ7HDC7K9"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"rmtApp","time":1733643326,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"4","type":"rid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:42:35] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "hmPostMsn",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "rmtApp",
"nMssn": 350,
"missionId": "01JEJK3MHGA0QK8E2BJ7HDC7K9"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"rmtApp","time":1733643326,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"4","type":"rid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 09:42:38] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "none",
"phase": "charge",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 0,
"initiator": "rmtApp",
"nMssn": 350,
"missionId": "01JEJK3MHGA0QK8E2BJ7HDC7K9"
}
batPct: 86
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"rmtApp","time":1733643326,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"4","type":"rid"}],"user_pmapv_id":"241207T200238","params":null}
[08/12/2024, 10:27:16] [iRobot] Homekit Requested Roomba 's Active State: Off

what's also interesting is that when I already have a room with region_id:10 and I send the vacuum cleaner to a new room, the old room with region_id:10 changes to that new room. and the switch in the apple home app with region_id:10 that used to send the vacuum cleaner to the old room will send it to the new room.

Thanks for sharing the debug logging. It seems like iRobot doesn't share an ID above 10 via the "lastCommand" JSON I use to "store rooms".
Interesting. Based on the logs, it seems that iRobot is "rearranging" the "10" ID in the background to avoid exceeding 10.

Could you provide the logs from the moment when you initiate two new rooms (via the iRobot app) that haven't been enabled as switches yet?

just tried, it didn’t change this time. maybe that’s because the robot is already learned the whole house yesterday. so I would need to remove the plugin and all its homekit things, then start from the scratch to reproduce that behavior.

Hmm, that typically suggests it thinks it already recognises the ID, which is why the plugin remains inactive. This somewhat confirms that iRobot is behaving strangely with the IDs behind the scenes after the count exceeds 10 - strange...

even though the room with region_id:10 doesn't change anymore, any other room switches (with region_id:11 and so on) still don't show up in the homekit. i've already done a couple of factory vacuum cleaner resets, uninstalled and installed the plugin a couple of times, but this behavior never changes.

some update here. I just selected 3 clean zones with region_id 4, 1 and 0 in apple home app and sent the robot to clean them. but instead of room number 4, the robot went to the zone I tried long and unsuccessfully to add to homekit. the zone that was swapped with region_id:10 yesterday.
the log shows the room numbers correctly: 4, 1 and 0, but last night and this morning room 4 was in a completely different place in the house. now it is the clean zone that doesn’t appear as new switch.
[08/12/2024, 13:35:49] [iRobot] Homekit Requested Roomba 's Active State: Off
[08/12/2024, 13:35:52] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 13:35:52] [iRobot] enabling room 4 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 13:35:54] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 13:35:54] [iRobot] enabling room 1 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 13:35:55] [iRobot] Set Roomba To Room-By-Room
[08/12/2024, 13:35:55] [iRobot] enabling room 0 of map 0 on roomba Roomba(5c9pTTRTS4OGbvo6_XeZOg)
[08/12/2024, 13:36:11] [iRobot] Set Roomba To Clean With args:undefined
[08/12/2024, 13:36:12] [iRobot] Starting Clean Cycle
[08/12/2024, 13:36:12] [iRobot] Room By Room: true
[08/12/2024, 13:36:12] [iRobot] Active Rooms: {"device":{"name":"Roomba","blid":"xxxxxxx","password":"xxxxxxxxx","ip":"<IP_ADDRESS>","model":"j7","multiRoom":true,"info":{"ver":"4","hostname":"iRobot-xxxxxx","robotname":"Roomba","robotid":"xxxxxxx","mac":"xxxxx","sw":"sapphire+23.12.4+2023-06-07-cca733b60c4+Firmware-Production+150","sku":"j755840","nc":0,"proto":"mqtt","cap":{"binFullDetect":2,"addOnHw":1,"oMode":10,"odoa":6,"dockComm":1,"maps":3,"pmaps":10,"mc":2,"tLine":2,"area":1,"eco":1,"multiPass":2,"edge":0,"pp":0,"team":1,"pose":2,"lang":2,"hm":0,"5ghz":1,"prov":3,"sched":2,"svcConf":1,"ota":2,"log":2,"langOta":0,"ns":1,"bleLog":1,"expectingUserConf":2},"freq":2462,"cloudConnState":14}},"connected":true,"maps":[{"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"2","type":"zid"},{"region_id":"3","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"0","type":"zid"},{"region_id":"4","type":"zid"},{"region_id":"5","type":"rid"},{"region_id":"8","type":"rid"},{"region_id":"10","type":"rid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"7","type":"rid"}],"user_pmapv_id":"241207T200238"}],"activeRooms":["4","1","0"],"activeMap":0}
[08/12/2024, 13:36:12] [iRobot] Clean Room Args:
{"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","user_pmapv_id":"241207T200238","regions":[{"region_id":"4","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"0","type":"zid"}]}
[08/12/2024, 13:36:12] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "charge",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm": 0,
"operatingMode": 0,
"initiator": "localApp",
"nMssn": 357,
"missionId": "01JEJXXXK8EPPXRYE8701TZPPY"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733657772,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"4","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"0","type":"zid"}],"user_pmapv_id":"241207T200238","params":null,"favorite_id":null}
[08/12/2024, 13:36:12] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "run",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 2,
"initiator": "localApp",
"nMssn": 358,
"missionId": "01JEK0WFZ0W1174KWAX1Z78A2Z"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"start","initiator":"localApp","time":1733657772,"ordered":1,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"4","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"1","type":"zid"},{"params":{"noAutoPasses":true,"twoPass":false},"region_id":"0","type":"zid"}],"user_pmapv_id":"241207T200238","params":null,"favorite_id":null}
[08/12/2024, 13:37:01] [iRobot] Roomba's mission update:
cleanMissionStatus: {
"cycle": "clean",
"phase": "hmPostMsn",
"expireM": 0,
"rechrgM": 0,
"error": 0,
"notReady": 0,
"condNotReady": [],
"mssnM": 0,
"expireTm": 0,
"rechrgTm": 0,
"mssnStrtTm":<PHONE_NUMBER>,
"operatingMode": 1,
"initiator": "localApp",
"nMssn": 358,
"missionId": "01JEK0WFZ0W1174KWAX1Z78A2Z"
}
batPct: 100
bin: {"present":true,"full":false,"type":"std"}
lastCommand: {"command":"skip","initiator":"rmtApp","time":1733657819,"ordered":0,"pmap_id":"5c9pTTRTS4OGbvo6_XeZOg","regions":[{"region_id":"0","type":"zid"}],"user_pmapv_id":"241207T200238","params":{"reschedule":false},"favorite_id":null}


Typascript fixes in Bondslice.ts

I had to make some changes in Bondslice to make it work.
I added @json-rpc-tools/types but maybe the typesript squad uses something else.

@lolchocotaco @biwano I haven't heard of this package before: https://www.npmjs.com/package/@json-rpc-tools/types doesn't seem super popular, there is probably something else out there which should provide types for this. If not, I think it makes more sense to just create our own interface rather than pulling in this library.

Hi guys. I checked again with @ohmygirth and I found out the issue came from inconsistencies on my working copy (but I am not sure what). I will close that merge request.


Boost Mustard in Logo Policy

Boost Mustard is defined as PANTONE P 17-8 C:

However, as Pantone is a proprietary system I would like us to use the closest Freetone equivalent:
https://culturehustle.com/products/freetone
We should update the Logo Policy to name the corresponding Freetone color as Boost Mustard. And we should explain that we use Freetone which is a free color-matching system.

If this was merged why is the issue open?


Update the Kajiya integrator to use materials.

Rewrote some of the materials and included them in the Kajiya integrator, but we'll need a rehash of the material system on both the CPU and GPU side for it to be easier to read in the shaders, and for extensions (e.g. Phong or modified Phong as a first step). Also added a split screen functionality, but it's missing a CPU counterpart. For the CPU counterpart probably 2 and 4 split will make sense, with a horizontal/vertical line split and a point split for 4 split. Also needs camera swapping on the cpp side.

Please do not delete the branch, as I will likely continue working on it (I want to add dielectrics and Phong at some point).


Replace all tabs with spaces

Quite a few files contained a mix of tabs and spaces. I've changed all
of these to have consistent 2 space indentation. I noticed this because
some files in the Github web view were indenting strangely, due to the
mix of tabs and spaces.

Thank you for work!


Installation problem with debian

Hi and thanx for spotipy!!!
i have a problem.
after installing spotipy with this documentation:
https://pyspotify.mopidy.com/en/latest/installation/
I obtain this error when i lanch python and the first command:
import spotify

import spotify
Traceback (most recent call last):
File "", line 1, in
File "spotify.py", line 5, in
session = spotify.Session()
AttributeError: 'module' object has no attribute 'Session'

I try to uninstall but...always this error.
Can you help me please?

Did you by any change call your example file spotify.py, if so you are likely just importing yourself :-)
Closing under the assumption that this is the case, if not and this looks like a bug in pyspotify feel free to reopen.

when i launch python command:
and after import spotify
it's the same problem

Is there a file called spotify.py in the directory you are testing from? If so rename it to anything else and things should work.

Just for other people who might be having this issue, double-check for not only a spotify.py but a spotify.pyc as well. Remove/rename these.


updated to the newest minor version of some of the docker images

I didn't yet test major updates, but couldn't find any problems with updating the minor versions.
Would it be desirable to combine both docker compose files so that the keycloak file just uses an  extend?

@fekad I am sure you have an opinion about the merge of the two docker-composes?
@BlackLotus with "extend", you mean this docker-compose.yaml + docker-compose.keycloak.yaml docker feature?

I close and open the PR to trigger our new github actions.

We will not do this if there is no actual problem attached.


FR: add an optional parameter to each individual dataview query to enable/disable auto query/update, needed, e.g., when the query takes a long time

I'm planning to use plugins like db-folder to display the notes within a folder (roughly 5000 notes). In each of these notes, I want to include several dataview queries, some of these queries might  need to be retrieved by db-folder, and some of the dataview queries will not.
I suspect that this will dramatically increase the db-folder loading time, so it would be handy to disable some of the queries if one wants to. This function can also be useful if one wants to let dataview query a large database (such as a large csv file).

Can you describe an example of this workflow?

For example, I may have a folder of research notes; in each note, I may want to make quiries using dataview or other approaches to retrieve info from a csv file or from other mb notes having certain tags, such as #research_idea/topic1/history    #research_idea/topic2/idea  or relevant_references in a csv.
Then, if I want to establish a table view of the notes, e.g., using db-folder plugin,  if the dataview queries in all of these notes have to be excuted, then it could become a rather time consuming task.
Alternatively, if the csv database is huge, it may also take too long and I worry that it may slow down obsidian if it has to be executed automatically. Then, I may want to enable it only when, for example, I click on the query to enable a refresh.

This should also help with #1447