I picked up a new XM125 board, installed via “python -m pip install --upgrade acconeer-exptool[app]”, ran it using “python -m acconeer.exptool.app”.
In the explorer I chose A121, Setup an account with Acconner and flashed the latest binary (XM125):
acconeer_xc120_exploration_server_a121-v1_6_0
No issues at this point. It claims the flashing was successful.
Once I try to use stream and connect it gives the following error (Note I also manually set the baud to 115200):
Traceback (most recent call last):
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\app\new\backend\_model.py", line 75, in connect_client
self.client = client_factory()
^^^^^^^^^^^^^^^^
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\a121\_core\communication\client.py", line 50, in open
return super().open(
^^^^^^^^^^^^^
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\_core\communication\client.py", line 87, in open
return subclass.open( # type: ignore[no-any-return, attr-defined]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\a121\_core\communication\exploration_client.py", line 91, in open
return cls(client_info=client_info)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\a121\_core\communication\exploration_client.py", line 115, in __init__
self._server_info = self._retrieve_server_info()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\a121\_core\communication\exploration_client.py", line 139, in _retrieve_server_info
system_info_response = self._server_stream.wait_for_message(messages.SystemInfoResponse)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\_core\communication\message_stream.py", line 64, in wait_for_message
for message in self._stream:
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\_core\communication\message_stream.py", line 83, in _get_stream
self._error_callback(e)
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\a121\_core\communication\exploration_client.py", line 135, in _close_before_reraise
raise exception
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\_core\communication\message_stream.py", line 81, in _get_stream
header_in_bytes = self._link.recv_until(self.protocol.end_sequence)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\_core\communication\links\serial_link.py", line 155, in recv_until
raise LinkError("recv timeout")
acconeer.exptool._core.communication.links.buffered_link.LinkError: recv timeout
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\app\new\backend\_backend.py", line 161, in process_program
model.execute_task(task)
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\app\new\backend\_model.py", line 51, in execute_task
builtin_task(**kwargs)
File "C:\Users\Me\AppData\Local\Programs\Python\Python312\Lib\site-packages\acconeer\exptool\app\new\backend\_model.py", line 87, in connect_client
raise HandledException(msg)
acconeer.exptool.app.new._exceptions.HandledException: Failed to connect:
recv timeout
Looking into your instructions I noticed your suggestion to configure the board so I also tested by going into device manager and manually setting the serial link to the following settings:
115200 baud
even parity
8 data bits
1 stop bit
no flow control
With those changes there was no change. I looked into the python code and what it appears to be doing is attempting to open the stream and is waiting the end sequence character (a newline character) which it never receives and then times out after 2 seconds. I tried editing the default timeout to 20 seconds and aside from hanging longer there was no change.
Does anyone have any suggestions that I may have missed? I went over the SparkFun instructions and the acconeer trouble shooting guides for this module with no luck.
Other things I have tried are different bauds, purging the config, using the prebuilt portable app, installing it through pip, different USB cables, different USB ports, and testing on a totally different computer (Exactly the same error on both PC’s).
Note that locally I am using Python 3.12.1 on Windows 11. Note one of the PC’s was a completely clean build of python as I had not bothered to install that on it on that machine until testing this now.