Error (connection refused) during downloading image list from custom server via EasyInstaller

I try to serve custom image files from a local custom server to enable the installation on the Apalis TK1 SOM via the EasyInstaller.

I set up a http server on my local workstation which serves the files with the directory structure described in the Toradex Easy Installer article. The image list can be accessed from various other local workstations in our intra-net when visiting http://10.0.1.19:8080/image_list.json ( 10.0.1.19 is the ip address of my local workstation).

I connect to a SOM with pre-flashed EasyInstaller v1.3 in the same intra-net with a vnc client ( krdc ). I tried to add the http server of my local workstation as “custom server” by configuring http://10.0.1.19/image_list.json via the Feeds (f) button.

But after pressing the OK button I get an error message displayed stating “Error downloading image list: Connection refused URL: http://10.0.1.19/image_list.json”.

If I log into the Easy Installer on the SOM via the serial console I am able to ping the local workstation.

/ # ping 10.0.1.19                                                              
PING 10.0.1.19 (10.0.1.19): 56 data bytes                                       
64 bytes from 10.0.1.19: seq=0 ttl=64 time=0.616 ms

Probably I missed to consider something w.r.t. file permissions?

Side note: I am running the http server inside a Docker container which is run on the local workstation. I don’t think that this makes a difference but I am not sure about it.

hi florian

can you give some information about your host? did you try downloading files from the http server to the module using wget?

Hi Jaski,

I am using an Ubuntu 14.04 host. I am running the http server ( nginx ) inside the official nginx docker container . If I try to get a file from a workstation inside the intra-net there is no problem:

❯ wget http://10.0.1.19:8080/Roboception_rc_visard_v1.1.1/apalis-tk1.img
--2018-03-09 09:28:02--  http://10.0.1.19:8080/Roboception_rc_visard_v1.1.1/apalis-tk1.img
Connecting to 10.0.1.19:8080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 602624 (588K) [application/octet-stream]
Saving to: ‘apalis-tk1.img.1’

100%[============================================================>] 602.624     2,84MB/s   in 0,2s   

2018-03-09 09:28:02 (2,84 MB/s) - ‘apalis-tk1.img.1’ saved [602624/602624]

If I try to get a file from within the Easy Installer image I get the error as well:

/ # wget http://10.0.1.19:8080/Roboception_rc_visard_v1.1.1/apalis-tk1.img      
--2018-03-09 08:30:21--  http://10.0.1.19:8080/Roboception_rc_visard_v1.1.1/apag
Connecting to 10.0.1.19:8080... connected.                                      
HTTP request sent, awaiting response... 200 OK                                  
Length: 602624 (588K) [application/octet-stream]                                
apalis-tk1.img: Read-only file system                                           
                                                                                
Cannot write to 'apalis-tk1.img' (No such file or directory).

I mounted the volumes containing the files as “read only” because that should not make any difference. Or is this assumption wrong?

Did you specify port 8080 in Toradex easy installer? Default http port is 80.

With port 80 it is the same behaviour.

Pulling from a workstation:

❯ wget http://10.0.1.19:80/Roboception_rc_visard_v1.1.1/apalis-tk1.img  
--2018-03-09 09:42:59--  http://10.0.1.19/Roboception_rc_visard_v1.1.1/apalis-tk1.img
Connecting to 10.0.1.19:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 602624 (588K) [application/octet-stream]
Saving to: ‘apalis-tk1.img’

100%[============================================================>] 602.624     --.-K/s   in 0,009s  

2018-03-09 09:42:59 (67,4 MB/s) - ‘apalis-tk1.img’ saved [602624/602624]

Pulling from EasyInstaller:

/ # wget http://10.0.1.19:80/Roboception_rc_visard_v1.1.1/apalis-tk1.img
--2018-03-09 08:43:49--  http://10.0.1.19/Roboception_rc_visard_v1.1.1/apalis-tk1.img
Connecting to 10.0.1.19:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 602624 (588K) [application/octet-stream]
apalis-tk1.img: Read-only file system

Cannot write to 'apalis-tk1.img' (No such file or directory).

Can you download image_list.json? what’s the content of image_list.json?

I can download it from my workstation (and another workstation in the intra-net):

❯ wget http://10.0.1.19:80/image_list.json                             
--2018-03-09 09:52:34--  http://10.0.1.19/image_list.json
Connecting to 10.0.1.19:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 90 [application/json]
Saving to: ‘image_list.json’

100%[============================================================>] 90          --.-K/s   in 0s      

2018-03-09 09:52:34 (1,38 MB/s) - ‘image_list.json’ saved [90/90]

But I cannot download it from the Easy Installer:

/ # wget http://10.0.1.19:80/image_list.json
--2018-03-09 08:53:00--  http://10.0.1.19/image_list.json
Connecting to 10.0.1.19:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 90 [application/json]
image_list.json: Read-only file system

Cannot write to 'image_list.json' (No such file or directory).

Content of image_list.json:

{
  "config_format": 1,
  "images": [
    "Roboception_rc_visard_v1.1.1/image.json"
  ]
}

As it can be seen, now the connection to the http server is done, but the file cannot be downloaded to the module.

Exactly. I am just wondering why it is possible to download the file from a workstation but not from within Easy Installer. The error message Cannot write to 'image_list.json' (No such file or directory). is not clear to me.

As the error message indicates the root file system of the Toradex Easy Installer is simply read-only. You would need to download to a read-write enabled location like e.g. /tmp.

A peer helped out with a review. We discovered that the file image.json did not contain 0034 in supported_product_ids. I am sorry for the confusion. The Easy Installer just works fine for us so far.

hi Florian, Thanks for the feedback.