Setup der Terkin-Datenlogger Sandbox schlägt fehl

Hi,

ich versuche das gerade zum laufen zu bekommen, scheitere aber schon am make setup :frowning:

Nelson:hiveeyes-micropython-firmware markus$ make setup
cat: .terkin/floatip: No such file or directory
/bin/sh: --python=python3: command not found
make: *** [setup-virtualenv3] Error 127

Da fehlt wohl eine Datei. :slight_smile:

Auch ich bekomme einen Fehler direkt nach dem Klonen des Repositories, allerdings an späterer Stelle:

offgrid:hiveeyes-micropython-firmware amo$ make setup
cat: .terkin/floatip: No such file or directory
Running virtualenv with interpreter /Users/amo/.pyenv/shims/python3
Using base prefix '/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7'
New python executable in /Users/amo/tmp/hiveeyes-micropython-firmware/.venv3/bin/python3.7
Also creating executable in /Users/amo/tmp/hiveeyes-micropython-firmware/.venv3/bin/python
Installing setuptools, pip, wheel...
done.
.venv3/bin/pip --quiet install --requirement requirements-dev.txt
# Define path to the "dist-packages" installation directory.
# Install "upip", the PyPI package manager for MicroPython.
.venv3/bin/pip install pycopy-cpython-upip
Collecting pycopy-cpython-upip
  Downloading https://files.pythonhosted.org/packages/e0/ac/5ddaf3cd3f86af13702721fff23623fa51382c0ac47082482a74d22f54e1/pycopy-cpython-upip-1.3.1.tar.gz
Collecting pycopy-cpython-cpython-uerrno (from pycopy-cpython-upip)
  ERROR: Could not find a version that satisfies the requirement pycopy-cpython-cpython-uerrno (from pycopy-cpython-upip) (from versions: none)
ERROR: No matching distribution found for pycopy-cpython-cpython-uerrno (from pycopy-cpython-upip)
make: *** [download-requirements] Error 1

Damit man in solchen Fällen nicht völlig auf dem Trockenen sitzt, stellen wir seit der Version 0.4.0 auch fertig gebündelte Release-Archive zur Verfügung. Sie findet man bei Releases · hiveeyes/hiveeyes-micropython-firmware · GitHub jeweils im Abschnitt “Assets”. Sie enthalten alle Dateien, die zum Betrieb benötigt werden.

image

1 Like

Erste Erkenntnis: pycom-mpy funktioniert (natürlich) nicht auf dem esp32. Da hätte ich auch vorher drauf kommen können… :laughing:

Was anderes verwirrt mich jetzt aber sehr: der normale source spuckt die Fehlermeldung:

[main.py] INFO: Loading modules
Traceback (most recent call last):
File “main.py”, line 21, in
ImportError: no module named ‘terkin.logging’
MicroPython v1.11-219-gaf5c998f3 on 2019-08-18; ESP32 module (spiram) with ESP32

aus.

sys.path
[’’, ‘/lib’, ‘/dist-packages’]

(ich hab die /flash Sachen rausgenommen, die gibts hier eh nicht)
Was super seltsam ist, dass das hier funktioniert:

import hiveeyes.sensor_hx711
Traceback (most recent call last):
File “”, line 1, in
File “/lib/hiveeyes/sensor_hx711.py”, line 5, in
ImportError: no module named ‘terkin.logging’

No wirrer wirds, wenn ich /terkin in /aterkin umbenenne. Dann funktioniert der import von aterkin.logging! Allerdings das Programm dann nicht mehr.

Ich verstehe nicht, wo der funktionale Unterschied zwischen /terkin und /hiveeyes ist???
init.py ist in beiden. Ich hab auch schon die Unterverzeichnisse aus /terkin gelöscht.

Zur Sicherheit hab ich auch nochmal die originale ausprobiert (+settings.py). No joy. :frowning:

Wir können auch eine TeamViewer Sitzung machen. Seeing is believing… :slight_smile:

Ich hab es dann soweit vereinfacht, das eigentlich nur boot, main und das terkin Verzeichnis geblieben ist.
Resultat: heisst das Verzeichnis ‘terkin’ gehts nicht, heisst es irgendwie anders gehts.
???

make erase
make deploy
von uPy.

Nu gehts wieder. Sehr suspekt…

3 posts were merged into an existing topic: Terkin-Datenlogger auf ESP32 WROVER mit MicroPython 1.11

A post was split to a new topic: MAX17043 mit MicroPython

Hi Markus,

vielen Dank fürs Dranbleiben.

Wir haben nun versucht, die Sanity-Checks bei den initialen Setup-Schritten der Sandbox zu verbessern. Nach einem git pull wirst Du vermutlich einen nun besser gestalteten Hinweis darauf bekommen, dass Dir das Python-Program virtualenv fehlt. Du kannst es auf einem Debian System per apt install python-virtualenv python3-virtualenv für beide Python Versionen installieren.

Außerdem haben wir den oben erwähnten Fehler bei der Installation einer der ersten wichtigen Abhängigkeiten (upip – der MicroPython Paketinstaller) behoben [1] und Upstream ebenfalls darüber informiert [2]. Auch @tonke war vor Kurzem von diesem Fehler betroffen.

Falls wir in ähnliche Systemzustände gelangen, was bei Umstrukturierungen im Rahmen von MicroPython module freezing öfters mal vorkommt, behelfen wir uns meist mit einem beherzten make format-flash, um die Inhalte des Flash-Dateisystems des Geräts kurzerhand komplett zurückzusetzen [3].

Wir hoffen, dass die oben genannten Verbesserungen dazu beitragen, dass das Sandbox-Setup nun wieder klappt. Falls es immer noch hakt, gebt gerne Bescheid.

Viele Grüße,
Andreas.


  1. Installing pycopy-cpython-upip through pip fails · Issue #17 · hiveeyes/hiveeyes-micropython-firmware · GitHub ↩︎

  2. Installing pycopy-cpython-upip 1.3.1 through pip fails · Issue #35 · pfalcon/pycopy-lib · GitHub ↩︎

  3. Sobald man eine aktuell angepasste settings.py im Arbeitsverzeichnis liegen hat, sind normalerweise keine Dateien auf dem Gerät, die durch ein erneutes Aufspielen versehentlich überschrieben werden könnten. Vor einem unbeabsichtigten Löschen schützt aber noch eine entsprechende Sicherheitsabfrage.

    $ make format-flash
    Device port: ip => 192.168.178.30
    [CONFIRM] Format /flash on the device with LittleFS? THIS WILL DESTROY DATA ON YOUR DEVICE. [y/n] n
    
    ↩︎
1 Like

Neuer Anlauf. Frisch geclonetes Repository.

Nelson:hiveeyes-micropython-firmware markus$ make setup
make: *** [setup-virtualenv3] Error 1

aber:

Nelson:hiveeyes-micropython-firmware markus$ pip install virtualenv
Requirement already satisfied: virtualenv in /Users/markus/.pyenv/versions/3.7.4/lib/python3.7/site-packages (16.7.4)

? was läuft da falsch?

Jetzt mit Docker: frischen Debian container gebaut, repository gecloned und dann ‘make setup’.

In tools/core.mk muss es unter ‘check-program’: … != “”… heißen, sonst funktioniert der Test nicht.

Ich musste:

virtualenv --python=python2 --no-site-packages .venv2
virtualenv --python=python3 --no-site-packages .venv3

auch einmal explizit vorher aufrufen, sonst läuft make nicht durch (vermutlich weil .venv2 & .venv3 noch nicht exitieren).

Hi Markus,

schön, dass es bei Dir nun geklappt hat, auch wenn Du nochmal nachjustieren musstest. Ich schaue mir die Sache näher an, sobald ich mal wieder länger an den Tasten bin.

Viele Grüße,
Andreas.

Ich hab mich jetzt an git gewagt und pull requests erzeugt. Bin mal gespannt, wie das funktioniert. :slight_smile:

Das ganze funktioniert unter Win10 & MacOS. Jetz muss ich nur noch den VSC richtig konfigurieren.

2 Likes

Herzlichen Dank!

Na so halb/halb, nicht wahr?

Diff ist jetzt klein.

1 Like

Herzlichen Dank!

Ein kleines Problem ist übrig geblieben, das wir weiter bei "make setup" stopped working · Issue #20 · hiveeyes/hiveeyes-micropython-firmware · GitHub beackern.