Skip to content

[WIP] Remote connection#722

Merged
mbonani merged 32 commits intoMobsya:masterfrom
cor3ntin:remote_connection
Sep 16, 2021
Merged

[WIP] Remote connection#722
mbonani merged 32 commits intoMobsya:masterfrom
cor3ntin:remote_connection

Conversation

@cor3ntin
Copy link
Copy Markdown
Contributor

No description provided.

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Apr 24, 2020

We make a big test today connecting 7-8 people with different kind of computer.
Connection to the remote TDM was working well. It is immediate and the Thymio Suite show the remote Thymio very well. Connection to the robot work very well for windows and linux. On mac 0SX connection to the real or simulated robot do not work with VPL and Studio (tcp API). It work only with scratch and blockly (websocket)

@mbonani mbonani linked an issue May 7, 2020 that may be closed by this pull request
Corentin Jabot added 6 commits September 2, 2021 13:07
The TDM generates a random password (6 alpha numeric characters)
that is displayed in the interface of the localhost Launcher,
and broadcasted on the local network via zeroconf.

In effect this password is only yused by clients outside
of the local network.

The UI of the launcher is modified to add a password field.
Studio and VPL classic are modified to read the password
from the command line.

The JS api is modified to take a password a parameter,
in addition of the endpoint url.

createClient(url) becomes createClient(urlm, password)

Scratch, VPL3 and Blockly are NOT modified and need to be adapted.
@cor3ntin
Copy link
Copy Markdown
Contributor Author

cor3ntin commented Sep 2, 2021

@mbonani I added password support here cor3ntin@67d9700 Let me know what you think

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 2, 2021

My idea about password was needet for incomming connection outside the local netwrok, but I see now that the password is needet for local network and the password is tranmited by Bonjour. So a actual Thymio Suite 2.2.0 (specially on tablett) will no more work with this new version. Is it possible to distinguish incomming connection from ouside or inside local network?

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 2, 2021

image

otherwise form a user point of view I will not show the "password" in the first page and the IP address (that not work on windows but on mac and linux) to connect in the "connection window". Both has to be at same locations.

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 2, 2021

point decided offline:

  • allow local connection without password (for old Launcher) by filtering local IP (if "automatic local connection" is allowed)
  • display password only inside the "connect to a remote server" window (could be done by @mbonani )
  • add a checkbox to allow "automatic local connection" (at same place for "use local browser") by default it is checked (@Could be small tune by @mbonani)
  • if unchecked password is not broadcasted and TDM do not accept connection without password (it allow specific connection from local or external network by entering IP and password in the "connect to a remote server")
    @ypiguet-epfl I think it fullfill all our scenario

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 2, 2021

To avoid double work I will prepare the checkbox and move the password

Because launching a bundle has no support for arguments,
we used an url instead.
This alternative merchanism to launch an application did not have
support for the new parameters (endpoint & password)

We modify the mac-specific code to support any argument,
then wire the new parameters in the Qt applications.
@cor3ntin
Copy link
Copy Markdown
Contributor Author

cor3ntin commented Sep 6, 2021

@mbonani remote connection works on mac now.

The TDM always tries to initiate a connection to the local server,
so that if zero conf is not working ( server disabled, port blocked,
etc), everything can still works on the local machine.
@cor3ntin cor3ntin force-pushed the remote_connection branch 3 times, most recently from 6a647cf to d4427e9 Compare September 6, 2021 12:49
@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 6, 2021

mac connection working for VPL and Aseba

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 6, 2021

latest builld TDM is crashing directly on windows:
C:\Program Files\Thymio\bin>thymio-device-manager.exe
[2021-09-06 15:30:05.952] [console] [info] main.cpp@L92: Starting...

and crash

@cor3ntin
Copy link
Copy Markdown
Contributor Author

cor3ntin commented Sep 6, 2021

@mbonani I know, looking into it :)

Clients from the same subnet can connect to the TDM
without password.

The password is no longer broadcasted on zeroconf
Corentin Jabot added 4 commits September 8, 2021 09:59
* Sometimes the TDM would generate an empty password because of incorrect
generation code.
* Sometimes the client would not receive the password due to the UI
not refreshing
@mbonani mbonani closed this Sep 8, 2021
@mbonani mbonani reopened this Sep 8, 2021
@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

Capture d’écran de 2021-09-08 14-57-00
password still sometime not shown

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

runtime 5.15 do not resolve password display issue

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

connections to remote do not work for webbased
thymio.js:505 WebSocket connection to 'ws://85.90.23.32:8597/' failed:
Client._flex.onRuntimeInitialized @ thymio.js:505
thymio.js:530 disconnected

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

file:///C:/Program%20Files/Thymio/thymio_blockly/thymio_blockly.fr.html#device=%7B177cf107-e5a0-46d5-aa69-ecfd18fb9cac%7D&ws=ws://85.90.23.32:8597&pass=TR2LUY
VM7 85.90.23.32:8597&pass=TR2LUY:25 Uncaught ReferenceError: start is not defined
at onload (VM7 85.90.23.32:8597&pass=TR2LUY:25)
thymio_blockly.js:30 ws://85.90.23.32:8597 : {177cf107-e5a0-46d5-aa69-ecfd18fb9cac}
3blockly_compressed_browser.js:1279 Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first. https://goo.gl/xX8pDD
thymio.js:505 WebSocket connection to 'ws://85.90.23.32:8597/' failed:
Client._flex.onRuntimeInitialized @ thymio.js:505
thymio.js:530 disconnected

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

for the password I just see in real time the password that is shown and then disapear...

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

2021-09-08 18:28:36.705] [console] [info] fw_update_service.cp@L58: Downloading https://www.mobsya.org//update/Thymio2-firmware-meta.xml
[2021-09-08 18:28:36.780] [console] [info] fw_update_service.cp@L81: Last firmware available for Thymio 2: 14
[2021-09-08 18:28:36.782] [console] [trace] app_endpoint.h@L320: <- NodesChanged : Success
[2021-09-08 18:28:36.782] [console] [trace] app_endpoint.h@L320: <- NodesChanged : Success
[2021-09-08 18:28:37.558] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:37.558] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:37.559] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:37.559] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:37.704] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:37.704] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:37.834] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:38.559] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:38.559] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:38.560] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:38.560] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:38.705] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:38.705] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:39.560] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:39.560] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:39.561] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:39.561] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:39.593] [console] [trace] aseba_node_registery@L164: => WS port discovery on 8597
[2021-09-08 18:28:39.704] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:39.705] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:40.334] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:40.531] [console] [trace] aseba_node_registery@L145: Discovery : update complete
[2021-09-08 18:28:40.560] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:40.561] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:40.561] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:40.561] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:40.705] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:40.705] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:41.561] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:41.561] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:41.562] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:41.562] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:41.706] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:41.706] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:42.562] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:42.562] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:42.563] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:42.563] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:42.706] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:42.707] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:42.835] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:43.562] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:43.563] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:43.563] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:43.563] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:43.707] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:43.707] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:44.563] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:44.563] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:44.564] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:44.564] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:44.708] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:44.708] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:45.335] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:45.532] [console] [trace] aseba_node_registery@L164: => WS port discovery on 8597
[2021-09-08 18:28:45.563] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:45.564] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:45.564] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:45.564] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:45.708] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:45.708] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:46.521] [console] [trace] aseba_node_registery@L145: Discovery : update complete
[2021-09-08 18:28:46.564] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:46.564] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:46.564] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:46.564] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:46.708] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:46.709] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:47.564] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:47.565] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:47.565] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:47.565] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:47.709] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:47.709] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:47.836] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:48.565] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:48.565] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:48.566] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:48.566] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:48.709] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:48.710] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:49.566] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:49.566] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:49.567] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:49.567] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:49.710] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:49.710] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:50.337] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:50.567] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:50.567] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:50.568] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:50.568] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:50.711] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:50.711] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:51.522] [console] [trace] aseba_node_registery@L164: => WS port discovery on 8597
[2021-09-08 18:28:51.567] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:51.567] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:51.568] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:51.568] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:51.712] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:51.712] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:52.469] [console] [trace] aseba_node_registery@L145: Discovery : update complete
[2021-09-08 18:28:52.568] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:52.568] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:52.569] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:52.569] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:52.712] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:52.712] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:52.837] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:53.569] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:53.569] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:53.570] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:53.570] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:53.712] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:53.712] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:54.569] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:54.570] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:54.570] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:54.571] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:54.713] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:54.713] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:55.338] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:55.570] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:55.571] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:55.571] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:55.572] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:55.713] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:55.713] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:56.571] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:56.573] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:56.573] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:56.574] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:56.713] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:56.713] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:57.470] [console] [trace] aseba_node_registery@L164: => WS port discovery on 8597
[2021-09-08 18:28:57.573] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:57.573] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:57.574] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:57.574] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:57.713] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:57.714] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:57.839] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:28:58.415] [console] [trace] aseba_node_registery@L145: Discovery : update complete
[2021-09-08 18:28:58.574] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:58.574] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:58.575] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:58.575] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:58.714] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:58.714] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:28:59.575] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:28:59.576] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:28:59.577] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:28:59.578] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:28:59.714] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:28:59.714] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:29:00.340] [console] [trace] app_endpoint.h@L320: <- Ping : Success
[2021-09-08 18:29:00.576] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:29:00.576] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:29:00.577] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:29:00.577] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:29:00.714] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:29:00.715] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:29:01.577] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:29:01.577] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:29:01.578] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:29:01.578] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:29:01.715] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:29:01.715] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
[2021-09-08 18:29:02.578] [console] [info] aseba_endpoint.cpp@L261: Requesting list nodes( ec : Success )
[2021-09-08 18:29:02.578] [console] [debug] aseba_endpoint.cpp@L274: Waiting before requesting list node
[2021-09-08 18:29:02.579] [console] [debug] aseba_endpoint.h@L207: Message 'list nodes' sent : Success
[2021-09-08 18:29:02.579] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'node present' Success
[2021-09-08 18:29:02.715] [console] [debug] aseba_endpoint.h@L207: Message 'get execution state' sent : Success
[2021-09-08 18:29:02.716] [console] [trace] aseba_endpoint.cpp@L179: Message received : 'execution state' Success
^C[2021-09-08 18:29:02.779] [console] [warning] main.cpp@L129: Exiting with signal 2

here is trace of TDM, I see nothing

There were a few issues:

* The launcher was still trying to read the password out of the
zeroconf record. Because this is no longer broadcasted by the TDM,
the password was always set to empty once a discovery record was found.

* The signal that a local connection was established before the
endpoint was fully registered.
@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

password fixed

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 8, 2021

I confirm that blockly or scratch do not connect to remote TDM someting aroud thymio.js:line505 on flexbuffer is wrong

@cor3ntin
Copy link
Copy Markdown
Contributor Author

cor3ntin commented Sep 8, 2021

@mbonani I have no issue.
Do you have more logs? (both blockly, launcher and tdm)
What system is that on?

@cor3ntin
Copy link
Copy Markdown
Contributor Author

cor3ntin commented Sep 8, 2021

@mbonani Yep, i did a lot of tests on different machines. Blockly works. in the last CI package
Scratch needs to be build and azure-pipeline update, I don't remember how this is done.
I just made a commit to scratch-vm

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 9, 2021

Yes for scratch I merge your PR and packet is build automatically, I put it manually in my installation on windows (I often do it for trying ) On my windows connecting to Linux, when it is with a remote host it fails both on scratch and blockly at the same point: thymio.js line 505. Same from Mac with Blockly. And i see nothing on log of TDM on the Linux like it receive no connection.
I will try to make more logs

@mbonani
Copy link
Copy Markdown
Contributor

mbonani commented Sep 9, 2021

browser.js:14 file:///C:/Program%20Files/Thymio/thymio_blockly/thymio_blockly.fr.html#device=%7B35c5cc80-426f-417a-8976-e855f2306c3a%7D&ws=ws://85.90.23.32:8597&pass=LUZVV6
VM7 85.90.23.32:8597&pass=LUZVV6:25 Uncaught ReferenceError: start is not defined
at onload (VM7 85.90.23.32:8597&pass=LUZVV6:25)
thymio_blockly.js:30 ws://85.90.23.32:8597 : {35c5cc80-426f-417a-8976-e855f2306c3a}
3blockly_compressed_browser.js:1279 Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first. https://goo.gl/xX8pDD
thymio.js:505 WebSocket connection to 'ws://85.90.23.32:8597/' failed:
Client._flex.onRuntimeInitialized @ thymio.js:505
thymio.js:530 disconnected

logs from Blockly

@mbonani mbonani merged commit de2d752 into Mobsya:master Sep 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Thymio Suite should connect every time on local TDM without passing by Discover/bonjour service R2t2 TCP connection to TDM/Launcher

3 participants