Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Monitor: "configure failed: invalid argument" when selecting 750 baudrate after starting the monitor with 74880 #3010

Open
Labels
os: macosSpecific to macOS operating systemtopic: codeRelated to content of the project itselftype: imperfectionPerceived defect in any part of project
@dankeboy36

Description

@dankeboy36

Describe the problem

When trying to change the baudrate, I get this error:

{"error":"command 'configure' failed: invalid argument"}

This happens when I pick the 750 baudrate after starting the monitor with 74880.

To reproduce

plotter/plotter.ino:

voidsetup() {  Serial.begin(74880);// Set baudrate to 74880 to get the error when setting to 750}voidloop() {  Serial.println("hello");delay(1000);}

My scripts to compile, upload, and optionally monitor.

compile.sh:

./arduino-cli \  compile \  --fqbn esp32:esp32:esp32da \  plotter \  --verbose

upload.sh:

./arduino-cli \  upload \  --fqbn esp32:esp32:esp32da \  --port /dev/cu.usbserial-0001 \  plotter \  --verbose

monitor.sh (optional):

./arduino-cli \  monitor \  --fqbn esp32:esp32:esp32da \  --port /dev/cu.usbserial-0001 \  --config baudrate=74880

It is important to begin the serial communication with a 74880 baudrate. Selecting 9600, for example, will not cause the error.

Start the Arduino CLI in daemon mode:

./arduino-cli versionarduino-cli  Version: git-snapshot Commit: d5ef61d6 Date: 2025-09-20T13:04:53Z./arduino-cli daemonDaemon is now listening on 127.0.0.1:50051{"IP":"127.0.0.1","Port":"50051"}

Open a new shell inside thearduino-cli repo and run the following:

Generate the .proto files:

buf export . -o ./tmp/out

Create:

grpcurl \  -plaintext \  -import-path ./tmp/out \  -proto cc/arduino/cli/commands/v1/commands.proto \  127.0.0.1:50051 \  cc.arduino.cli.commands.v1.ArduinoCoreService.Create
{"instance": {"id":1  }}

Init:

grpcurl \  -plaintext \  -import-path ./tmp/out \  -proto cc/arduino/cli/commands/v1/commands.proto \  -d '{"instance": {"id": 1}}' \  127.0.0.1:50051 \  cc.arduino.cli.commands.v1.ArduinoCoreService.Init

Enumerate monitor port settings (FQBN is optional):

grpcurl -plaintext \  -import-path ./tmp/out \  -proto cc/arduino/cli/commands/v1/commands.proto \  -d '{"instance":{"id":1}, "port_protocol":"serial", "fqbn":"esp32:esp32:esp32da"}' \  localhost:50051 \  cc.arduino.cli.commands.v1.ArduinoCoreService/EnumerateMonitorPortSettings
{"settings": [    {"settingId":"stop_bits","label":"Stop bits","type":"enum","enumValues": ["1","1.5","2"      ],"value":"1"    },    {"settingId":"baudrate","label":"Baudrate","type":"enum","enumValues": ["300","600","750","1200","2400","4800","9600","19200","31250","38400","57600","74880","115200","230400","250000","460800","500000","921600","1000000","2000000"      ],"value":"9600"    },    {"settingId":"bits","label":"Data bits","type":"enum","enumValues": ["5","6","7","8","9"      ],"value":"8"    },    {"settingId":"dtr","label":"DTR","type":"enum","enumValues": ["on","off"      ],"value":"off"    },    {"settingId":"parity","label":"Parity","type":"enum","enumValues": ["none","even","odd","mark","space"      ],"value":"none"    },    {"settingId":"rts","label":"RTS","type":"enum","enumValues": ["on","off"      ],"value":"off"    }  ]}

This lists the supported settings, including baudrates like 750.

Create the monitor duplex:

grpcurl \  -plaintext \  -import-path ./tmp/out \  -proto cc/arduino/cli/commands/v1/commands.proto \  -d @ \  127.0.0.1:50051 \  cc.arduino.cli.commands.v1.ArduinoCoreService.Monitor

Open the monitor:

{"openRequest": {"instance": {"id":1 },"fqbn":"esp32:esp32:esp32da","port": {"address":"/dev/cu.usbserial-0001","protocol":"serial"    },"portConfiguration": {"settings": [        {"settingId":"baudrate","value":"74880" }      ]    }  }}

ⓘ Note that the monitor stream is opened with 74880 baudrate.

This works and data comes in from the board.

{"success":true}{"rxData":"KqtQqlRVC1WlC6XVVbVVolRFsBHPIse4gR7DYSADIzAB/g=="}{"rxData":"MA=="}{"rxData":"LjAyMDAJMA=="}// ...

But if I try to change the baudrate to 750 (which was listed as valid):

{"updatedConfiguration": {"settings": [      {"settingId":"baudrate","value":"750" }    ]  }}

ⓘ I could not cause the error with other baudrates than 750, but I have not tried all.

I get this error:

{"error":"command 'configure' failed: invalid argument"}

Expected behavior

  • If a baudrate is not actually supported, it should not appear in the list.
  • Or, if it cannot be detected reliably, the error should be more specific so clients can handle it.

Arduino CLI version

d5ef61d

Operating system

macOS

Operating system version

15.6.1

Additional context

  • Start the monitor connection with a 74880 baudrate.
  • Select the 750 baudrate to cause the error.

Issue checklist

  • I searched for previous reports inthe issue tracker
  • I verified the problem still occurs when using thenightly build
  • My report contains all necessary details

Metadata

Metadata

Assignees

No one assigned

    Labels

    os: macosSpecific to macOS operating systemtopic: codeRelated to content of the project itselftype: imperfectionPerceived defect in any part of project

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


      [8]ページ先頭

      ©2009-2025 Movatter.jp