Failed to get info off device timeout

Hi!

I following the steps in this doc: https://docs.edgeimpulse.com/docs/silabs-thunderboard-sense-2
I’m getting stuck at step 3, with the following output:

Edge Impulse serial daemon v1.12.5
Endpoints:
    Websocket: wss://remote-mgmt.edgeimpulse.com
    API:       https://studio.edgeimpulse.com/v1
    Ingestion: https://ingestion.edgeimpulse.com

[SER] Connecting to /dev/tty.usbmodem0004401635311
[SER] Serial is connected, trying to read config...
[SER] Failed to get info off device Timeout when waiting for >  (timeout: 5000) onConnected
[SER] Serial is connected, trying to read config...
[SER] Failed to get info off device Timeout when waiting for >  (timeout: 5000) onConnected
[SER] Serial is connected, trying to read config...
[SER] Failed to get info off device Timeout when waiting for >  (timeout: 5000)

I’m running on MacOS Big Sur v11.2.1 (20D74).

How can I troubleshoot the issue?

@ahosny Have you updated the firmware in step 2? After you drag the file onto the TB004 drive do you see a FAIL.txt file appearing by any chance?

Then, can you run:

$ edge-impulse-run-impulse --raw 

And press the RESET button on the device, and share what you see?

@janjongboom thanks for replying.
I haven’t seen a FAIL.txt file, but I reconnected the device another usb port and it worked.

Thanks for your help!

1 Like

I got the following errors:

[SER] Connecting to COM3
[SER] Serial is connected, trying to read config…
[SER] Retrieved configuration
[SER] Device is running AT command version 1.3.0

[SER] Failed to get info off device Error: Failed to load development keys: HTTP request failed
at Object.setupCliApp (C:\Users\vlady\AppData\Roaming\npm\node_modules\edge-impulse-cli\build\cli\init-cli-app.js:125:19)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at async SerialConnector.connectLogic (C:\Users\vlady\AppData\Roaming\npm\node_modules\edge-impulse-cli\build\cli\daemon.js:482:44)

Hi @Kabron,

It looks like the CLI cannot connect to your Edge Impulse project to retrieve the API Key (HTTP request failed). Do you have a proxy configured on your PC/web browser?

Aurelien

Thanks for answer, Aurelien.
It worked fine, but suddenly stopped.
At the moment I switched to WebUSB connection.

1 Like

Hi, I have the same error message. I tried running edge-impulse-run-impulse --raw and it shows
(base) hazelwat@Hazels-MBP-106 ~ % edge-impulse-run-impulse --raw
Edge Impulse impulse runner v1.14.0
[SER] Connecting to /dev/tty.usbmodem101
[SER] Connected to /dev/tty.usbmodem101

Hi @hahahazel,

Which board are you using and is it running the default Edge Impulse firmware?

Aurelien

I need help! I have the same problem.
The funny thing is that it happens with both the SONY Spresense board and the Arduino NANO 33 BLE Sense board.
Capture_1

The installed versions on windows 10 are:
PS C:\Users\Jupiter> node -v
v16.14.2
PS C:\Users\Jupiter> npm -v
8.6.0

I remember that when I started using Edge Impulse I didn’t have this problem. Now I use it again, I update everything and it doesn’t work! Any idea, Whats going on?

Hi @guillengap,

Have you flashed the Edge Impulse firmware to your board?
You can also try edge-impulse-run-impulse and check that it works.

Aurelien

Hi @aurel … Thanks for your quick response and your support!

Burn bootloader no problem, following step 4 of this guide: https://developer.sony.com/develop/spresense/docs/arduino_set_up_en.html

But when I flash by double clicking “flash_windows.bat”, I got below error:

Reference: https://youtu.be/OI9AymVUU_4

I am stuck with this error: AttributeError: module ‘collections’ has no attribute ‘callable’

I am using pyserial 3.5 and inquirer 2.9.2 versions, and running on python 3.9.7

Kind regards…
Guillermo

Hi @aurel … finally , I was able to flash my board when I uninstalled python version 3.10.4 and used version 3.9.7 … now this works fine.
kind regards

2 Likes

Hello @janjongboom

I am having a similar problem… Everything was working and suddenly I get the following error(s):

Edge Impulse serial daemon v1.14.10
Endpoints:
"Websocket: wss *
API: https *
Ingestion: https *

[SER] Connecting to /dev/ttyACM0
[SER] Serial is connected, trying to read config…
[SER] Retrieved configuration
[SER] Device is running AT command version 1.7.0

[SER] Failed to get info off device Error: Failed to load development keys: HTTP request failed
at Object.setupCliApp (/home/eku/.npm-global/lib/node_modules/edge-impulse-cli/build/cli/init-cli-app.js:141:19)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async SerialConnector.connectLogic (/home/eku/.npm-global/lib/node_modules/edge-impulse-cli/build/cli/daemon.js:484:44)

I am running in a Fedora environment, using the Arduino Nano 33 BLE Sense. I have also flashed the firmware from the Edge Impulse site into the board.

Running edge-impulse run-impulse works, and if I hit reset at that point this is what I get:

[SER] Serial closed - retrying in 5 seconds
[SER] Serial is connected, trying to read config…
b
Not a valid AT command (b)

AT+CONFIG?
===== Device info =====
ID: 89:FB:6C:64:D8:EB
Type: ARDUINO_NANO33BLE
AT Version: 1.7.0

===== Sensors ======
Name: Built-in accelerometer, Max sample length: 502s, Frequencies: [62.50Hz, 100.00Hz]
Name: Built-in microphone, Max sample length: 23s, Frequencies: [16000.00Hz, 8000.00Hz, 4000.00Hz]
Name: Inertial, Max sample length: 104s, Frequencies: [20.00Hz, 62.50Hz, 100.00Hz]
Name: Environmental, Max sample length: 2512s, Frequencies: [1.00Hz, 12.50Hz]
Name: Interactional, Max sample length: 314s, Frequencies: [1.00Hz, 10.00Hz, 50.00Hz]
Name: Inertial + Environmental, Max sample length: 628s, Frequencies: [12.50Hz]
Name: Inertial + Interactional, Max sample length: 502s, Frequencies: [12.50Hz]
Name: Environmental + Interactional, Max sample length: 837s, Frequencies: [12.50Hz]
Name: Inertial + Environmental + Interactional, Max sample length: 418s, Frequencies: [12.50Hz]

===== WIFI =====
SSID:
Password:
Security: 0
MAC: 89:FB:6C:64:D8:EB
Connected: 0
Present: 0

===== Sampling parameters =====
Label: test
Interval: 10.00 ms.
Length: 10000 ms.
HMAC key: 19a27971594b9182f11ef1f17b2e3c99

===== Upload settings =====
Api Key: ei_e1a4a5a932ed3caa45f70d49e530765d7093f57b9b81db70c13351bd40f6f789
Host: http://ingestion.edgeimpulse.com
Path: /api/training/data

===== Remote management =====
URL: ws://remote-mgmt.edgeimpulse.com
Connected: 0
Last error:

[SER] Retrieved configuration
[SER] Device is running AT command version 1.7.0
AT+RUNIMPU[SER] Started inferencing, press CTRL+C to stop…

As I have mentioned, it was working but then it stopped. To try to fix the issue I have reflashed the arduino several times and have also re-installed arduino cli and edge impulse cli a couple of times each. No luck so far…

Any suggestions would be very much appreciated!

Thank you in advance for your help!!

Regards,
Ed

Hi,

Never mind… I did a “edge-impulse-daemon --clean”, entered my info all over again and it connected properly.

Thank you!
Ed

1 Like

I’m having the same problem… after running edge-impulse-run-impulse --raw, it says [SER] Connected to /dev/ttyACM0
What to do next?

Hello @rida,

When you use the --raw you need to type AT commands. You can use AT+HELP to show the available commands.

AT+HELP
AT Server
Command set version: 1.7.0
Arguments in square brackets are optional, eg.:
AT+CMD=arg1,[arg2]

AT+HELP
	Lists all commands

AT+CONFIG?
	Lists complete config

AT+SAMPLESTART=SENSOR_NAME
	Start sampling

AT+READBUFFER=START,LENGTH,[USEMAXRATE]
	Read from the temporary buffer (as base64)

AT+MGMTSETTINGS?
AT+MGMTSETTINGS=URL
	Lists or sets current management settings

AT+CLEARCONFIG
	Clears complete config and resets system

AT+DEVICEID?
AT+DEVICEID=DEVICEID
	Sets the device ID

AT+SAMPLESETTINGS?
AT+SAMPLESETTINGS=LABEL,INTERVAL_MS,LENGTH_MS,[HMAC_KEY]
	Lists or sets current sampling settings

AT+UPLOADSETTINGS?
AT+UPLOADSETTINGS=APIKEY,PATH
	Lists or sets current upload settings

AT+UPLOADHOST?
AT+UPLOADHOST=HOST
	Sets upload host

AT+UNLINKFILE=FILE
	Unlink a specific file

AT+RUNIMPULSE
	Run the impulse

AT+RUNIMPULSEDEBUG=USEMAXRATE
	Run the impulse with additional debug output or live preview

AT+RUNIMPULSECONT
	Run the impulse continuously

AT+SNAPSHOT?
AT+SNAPSHOT=WIDTH,HEIGHT,[USEMAXRATE]
	Take a snapshot

AT+SNAPSHOTSTREAM=WIDTH,HEIGHT,[USEMAXRATE]
	Take a stream of snapshot stream

AT+STOPIMPULSE

If you just want to run the inference just use edge-impulse-run-impulse without the --raw argument.

Regards,

Louis

I think the question is what is the next step to running the --raw modifier. I’m having the same problem as everyone else on this page. The daemon doesn’t run and running an impulse doesn’t work, similar no connection error:

sony-spresense % edge-impulse-run-impulse      
Edge Impulse impulse runner v1.15.1
? Which device do you want to connect to? /dev/tty.usbserial-21130 (Silicon Labs)
[SER] Connecting to /dev/tty.usbserial-21130
[SER] Serial is connected, trying to read config...
[SER] Failed to get info off device:undefined. Is this device running a binary built through Edge Impulse? Reconnecting in 5 seconds...
[SER] Serial is connected, trying to read config...
[SER] Failed to get info off device:undefined. Is this device running a binary built through Edge Impulse? Reconnecting in 5 seconds...

Running in --raw mode seems like it connects.

sony-spresense % edge-impulse-run-impulse --raw 
Edge Impulse impulse runner v1.15.1
? Which device do you want to connect to? /dev/tty.usbserial-21130 (Silicon Labs)
[SER] Connecting to /dev/tty.usbserial-21130
[SER] Connected to /dev/tty.usbserial-21130


Welcome to nash (build 7bf64de)
updater# 


What do we do? How can we debug the issue? It seems like it connects, but all the steps outlined in tutorials and above fail.

EDIT: it also fails to connect via WEBUSB:
Screen Shot 2022-07-01 at 11.42.32 AM
I’m guessing that the firmware did not load? When I rerun it, I get:

>>> Install files ...
install -b 115200
Install /Users/mazerruckus/Downloads/sony-spresense/edge_impulse_firmware.spk
|0%-----------------------------50%------------------------------100%|
######################################################################

410880 bytes loaded.
Package validation is OK.
Saving package to "nuttx"
updater# sync
updater# Restarting the board ...
reboot

Flashed your Sony Spresense development board.
To set up your development with Edge Impulse, run 'edge-impulse-daemon'
To run your impulse on your development board, run 'edge-impulse-run-impulse'

Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.