Emlidtool 1.04

Hi @george.staroselskiy

Current emlidtool repeats failure like 1.03

Reinstalled a new image from the Stretch default image and did

sudo raspi-config --expand-rootfs
sudo apt-get update
sudo apt-get dist-upgrade

and emlidtool no longer works, and I noticed that during the dist-upgrade a few errors appeared related to emlidtool

pi@navio:~ $ apt show emlidtool
Package: emlidtool
Version: 1.0.4-1
Priority: extra
Section: default
Maintainer: Georgii Staroseslkii georgii.staroselskii@emlid.com
Installed-Size: 3,072 B
Pre-Depends: ardupilot-service-3.5
Depends: libffi-dev, ardupilot-meta-3.5
Conflicts: ardupilot-service-3.4
Homepage: http://example.com/no-uri-given
License: unknown
Vendor: george@kernelcruncher
Download-Size: 2,554 B
APT-Manual-Installed: yes
APT-Sources: http://files.emlid.com/navio2/debian stretch/main armhf Packages
Description: no description given

Can you please update this page? https://docs.emlid.com/navio2/common/ardupilot/configuring-raspberry-pi/

at the moment emlidtool isn’t working and I’ll try to debug it later today

pi@navio:~ $ emlidtool info
-bash: emlidtool: command not found
pi@navio:~ $

Does sudo pip uninstall emlidtool && sudo pip install -U emlidtool fix the problem?

@george.staroselskiy
no

pi@192.168.1.150’s password:
Linux navio 4.9.45-94f47ec-emlid-v7+ #4 SMP PREEMPT Wed Aug 30 18:17:43 MSK 2017 armv7l

            #     #    #    #     # ### ####### 
            ##    #   # #   #     #  #  #     # 
            # #   #  #   #  #     #  #  #     # 
            #  #  # #     # #     #  #  #     # 
            #   # # #######  #   #   #  #     # 
            #    ## #     #   # #    #  #     # 
            #     # #     #    #    ### ####### 

STEP 1:
Choose your vehicle and ArduPilot version using emlidtool
(Please, read carefully all options and select appropriate one for either Navio 2 or Navio+)

  • sudo emlidtool ardupilot

STEP 2:
Set your GCS IP

  • sudo nano /etc/default/arducopter
  • sudo nano /etc/default/arduplane
  • sudo nano /etc/default/ardurover
    STEP 3:
    Reload configuration by issuing these commands
  • sudo systemctl daemon-reload

Launch, and enable on boot

  • sudo emlidtool ardupilot

IMPORTANT:

To show this message one more time type “sudo emlidtool ardupilot help”

SSH is enabled and the default password for the ‘pi’ user has not been changed.
This is a security risk - please login as the ‘pi’ user and type ‘passwd’ to set a new password.

pi@navio:~ $ sudo pip uninstall emlidtool && sudo pip install -U emlidtool
Cannot uninstall requirement emlidtool, not installed
pi@navio:~ $

and trying to install also impossible

pi@navio:~ $ sudo pip install -U emlidtool
Collecting emlidtool
Exception:
Traceback (most recent call last):
File “/usr/lib/python2.7/dist-packages/pip/basecommand.py”, line 215, in main
status = self.run(options, args)
File “/usr/lib/python2.7/dist-packages/pip/commands/install.py”, line 353, in run
wb.build(autobuilding=True)
File “/usr/lib/python2.7/dist-packages/pip/wheel.py”, line 749, in build
self.requirement_set.prepare_files(self.finder)
File “/usr/lib/python2.7/dist-packages/pip/req/req_set.py”, line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File “/usr/lib/python2.7/dist-packages/pip/req/req_set.py”, line 554, in _prepare_file
require_hashes
File “/usr/lib/python2.7/dist-packages/pip/req/req_install.py”, line 278, in populate_link
self.link = finder.find_requirement(self, upgrade)
File “/usr/lib/python2.7/dist-packages/pip/index.py”, line 465, in find_requirement
all_candidates = self.find_all_candidates(req.name)
File “/usr/lib/python2.7/dist-packages/pip/index.py”, line 423, in find_all_candidates
for page in self._get_pages(url_locations, project_name):
File “/usr/lib/python2.7/dist-packages/pip/index.py”, line 568, in _get_pages
page = self._get_page(location)
File “/usr/lib/python2.7/dist-packages/pip/index.py”, line 683, in _get_page
return HTMLPage.get_page(link, session=self.session)
File “/usr/lib/python2.7/dist-packages/pip/index.py”, line 792, in get_page
“Cache-Control”: “max-age=600”,
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py”, line 501, in get
return self.request(‘GET’, url, **kwargs)
File “/usr/lib/python2.7/dist-packages/pip/download.py”, line 386, in request
return super(PipSession, self).request(method, url, *args, **kwargs)
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py”, line 488, in request
resp = self.send(prep, **send_kwargs)
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py”, line 609, in send
r = adapter.send(request, **kwargs)
File “/usr/share/python-wheels/CacheControl-0.11.7-py2.py3-none-any.whl/cachecontrol/adapter.py”, line 47, in send
resp = super(CacheControlAdapter, self).send(request, **kw)
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/adapters.py”, line 423, in send
timeout=timeout
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connectionpool.py”, line 643, in urlopen
_stacktrace=sys.exc_info()[2])
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/util/retry.py”, line 315, in increment
total -= 1
TypeError: unsupported operand type(s) for -=: ‘Retry’ and ‘int’
pi@navio:~ $

or

pi@navio:~ $ sudo pip3 install -U emlidtool
Collecting emlidtool
Exception:
Traceback (most recent call last):
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connectionpool.py”, line 594, in urlopen
chunked=chunked)
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connectionpool.py”, line 350, in _make_request
self._validate_conn(conn)
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connectionpool.py”, line 837, in validate_conn
conn.connect()
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connection.py”, line 323, in connect
ssl_context=context)
File "/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/util/ssl
.py", line 324, in ssl_wrap_socket
return context.wrap_socket(sock, server_hostname=server_hostname)
File “/usr/lib/python3.5/ssl.py”, line 385, in wrap_socket
_context=self)
File “/usr/lib/python3.5/ssl.py”, line 760, in init
self.do_handshake()
File “/usr/lib/python3.5/ssl.py”, line 996, in do_handshake
self._sslobj.do_handshake()
File “/usr/lib/python3.5/ssl.py”, line 641, in do_handshake
self._sslobj.do_handshake()
ConnectionResetError: [Errno 104] Connection reset by peer

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/pip/basecommand.py”, line 215, in main
status = self.run(options, args)
File “/usr/lib/python3/dist-packages/pip/commands/install.py”, line 353, in run
wb.build(autobuilding=True)
File “/usr/lib/python3/dist-packages/pip/wheel.py”, line 749, in build
self.requirement_set.prepare_files(self.finder)
File “/usr/lib/python3/dist-packages/pip/req/req_set.py”, line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File “/usr/lib/python3/dist-packages/pip/req/req_set.py”, line 554, in _prepare_file
require_hashes
File “/usr/lib/python3/dist-packages/pip/req/req_install.py”, line 278, in populate_link
self.link = finder.find_requirement(self, upgrade)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 465, in find_requirement
all_candidates = self.find_all_candidates(req.name)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 423, in find_all_candidates
for page in self._get_pages(url_locations, project_name):
File “/usr/lib/python3/dist-packages/pip/index.py”, line 568, in _get_pages
page = self._get_page(location)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 683, in _get_page
return HTMLPage.get_page(link, session=self.session)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 792, in get_page
“Cache-Control”: “max-age=600”,
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py”, line 501, in get
return self.request(‘GET’, url, **kwargs)
File “/usr/lib/python3/dist-packages/pip/download.py”, line 386, in request
return super(PipSession, self).request(method, url, *args, **kwargs)
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py”, line 488, in request
resp = self.send(prep, **send_kwargs)
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py”, line 609, in send
r = adapter.send(request, **kwargs)
File “/usr/share/python-wheels/CacheControl-0.11.7-py2.py3-none-any.whl/cachecontrol/adapter.py”, line 47, in send
resp = super(CacheControlAdapter, self).send(request, **kw)
File “/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/adapters.py”, line 423, in send
timeout=timeout
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connectionpool.py”, line 643, in urlopen
_stacktrace=sys.exc_info()[2])
File “/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/util/retry.py”, line 315, in increment
total -= 1
TypeError: unsupported operand type(s) for -=: ‘Retry’ and ‘int’
pi@navio:~ $

but if trying to install with apt it says already installed

pi@navio:~ $ sudo apt-get install emlidtool
Reading package lists… Done
Building dependency tree
Reading state information… Done
emlidtool is already the newest version (1.0.4-1).
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
pi@navio:~ $

but not on path ??

pi@navio:~ $ sudo emlidtool ardupilot
sudo: emlidtool: command not found
pi@navio:~ $

@george.staroselskiy @mikhail.avkhimenia

Can you please check what is happening with the latest sudo apt-get dist-upgrade from the emlid-raspbian-20170922.img

It breaks emlidtool, and requires at the moment to “freeze” it from upgrading

Hi, we’ll take a look at it later this week or beginning of the next week. But unfortunately I have yet to repro your issue as it doesn’t happen here at all. As a matter of fact this

is an error specific to pip and PyPi. But of course you can be sure we’ll do our best to help you out. Right now I’d be very grateful if you could try sudo pip install emlidtool on another network (maybe another provider or even better a VPN). If the issue still persists, we’ll have more info on our hand to look into.

Thanks @george.staroselskiy

Repro steps are quite easy

Create a image from emlid-raspbian-20170922.img

Put the microsd on a RPI3+Navio2

boot

execute sudo raspi-config and change password+change locale to en-US UTF8+extend partition

reboot

do sudo apt-get update

sudo apt-get dist-upgrade

and it starts there.

there’s no issue on network connectivity to your repo.

ping files.emlid.com
PING p-esma00.kxcdn.com (185.172.150.128) 56(84) bytes of data.
64 bytes from 185.172.150.128 (185.172.150.128): icmp_seq=1 ttl=57 time=68.6 ms
64 bytes from 185.172.150.128 (185.172.150.128): icmp_seq=2 ttl=57 time=67.0 ms
64 bytes from 185.172.150.128 (185.172.150.128): icmp_seq=3 ttl=57 time=68.8 ms
64 bytes from 185.172.150.128 (185.172.150.128): icmp_seq=4 ttl=57 time=70.7 ms
64 bytes from 185.172.150.128 (185.172.150.128): icmp_seq=5 ttl=57 time=67.5 ms
64 bytes from 185.172.150.128 (185.172.150.128): icmp_seq=6 ttl=57 time=73.2 ms
^C
p-esma00.kxcdn.com ping statistics —
6 packets transmitted, 6 received, 0% packet loss, time 5000ms
rtt min/avg/max/mdev = 67.053/69.355/73.218/2.099 ms

http://files.emlid.com/navio2/debian stretch/main armhf Packages
release o=files.emlid.com,n=stretch,l=apt repository,c=main,b=armhf
origin files.emlid.com

for now I worked around this by freezing emlidtool

pi@navio2:~ $ dpkg --get-selections | grep “emlidtool”
emlidtool hold
pi@navio2:~ $

pi@navio2:~ $ apt list --upgradable
Listing… Done
emlidtool/unknown 1.0.4-1 all [upgradable from: 1.0.0-1]
ros-kinetic-mavros/xenial 0.23.3-0xenial-20180309-023902-0800 armhf [upgradable from: 0.21.0-0xenial-20170914-152233-0800]
ros-kinetic-nodelet/xenial 1.9.14-0xenial-20180224-025624-0800 armhf [upgradable from: 1.9.10-0xenial-20170614-094209-0800]
pi@navio2:~ $

Thanks for the report, Luis! So, the thing is I’ve done these steps more than a hundred times and unfortunately it hasn’t triggered anything where I am at.

emlidtool gets updated from PyPi. Not our repos.

@george.staroselskiy could it be that this url is not acessible ?

https://github.com/emlid/emlidtool

> <?xml version="1.0" encoding="UTF-8" ?>
> <rdf:RDF xmlns="http://usefulinc.com/ns/doap#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><Project><name>emlidtool</name>
> <homepage rdf:resource="https://github.com/emlid/emlidtool" />
> <maintainer><foaf:Person><foaf:name>Georgii Staroselskii</foaf:name>
> <foaf:mbox_sha1sum>38de885a9031801080c305b2d22e78255ef87e5c</foaf:mbox_sha1sum></foaf:Person></maintainer>
> <release><Version><revision>1.0.4</revision></Version></release>
> </Project></rdf:RDF>

Khm, I don’t think so but thank you for your patience and your willingness to help us figure out what’s going on. The link here should just be a placeholder. At least I’ve always thought that way. We’ll look into it.

I posted in another thread last week but will also post here that I am having very similar issue.

Create a image from emlid-raspbian-20170922.img

Put the microsd on a RPI3+Navio2

boot

execute sudo raspi-config and change password+change locale to en-US UTF8+extend partition

reboot

do sudo apt-get update && sudo apt-get dist-upgrade

During update/upgrade it mentions it must remove existing emlidtool to upgrade to which you must respond “y” to continue
Next step it throws up red text warning that emlidtool can’t be found and is required for uninstall
Update continues with a few more red text warnings whenever it to do with emlidtool

Once update is done emlidtool is no longer present

As above I have tried the pip3 install emlidtool and get the following error
“Could not find a version that satisfies the required emlidtool (from versions: )
No matching distribution found for emlidtool”

Also tried the apt-get and get the message that the emlidtool is already the newest version (1.0.4-1)

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.