[Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
Avatar utente
Lapa
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: mercoledì 30 dicembre 2009, 17:01

[Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da Lapa »

Salve.
Sto cercando di usare un sensore analogico via ADS1115 che è un convertitore analogico digitale per la porta I2C del Raspberry Pi
Ho usato per questo uno script di Adafruit che implica l'istallazione del seguente modulo:

adafruit-circuitpython-ads1X15

con il seguente comando:

Codice: Seleziona tutto

 sudo pip3 install adafruit-circuitpython-ads1X15 

modulo lo trovo nei moduli se lancio il comando list in bin (la bin della venv)

Lo script che uso è il seguente:

Codice: Seleziona tutto

 import time

import board

import busio

import adafruit_ads1x15.ads1115 as ADS

from adafruit_ads1x15.analog_in import AnalogIn



i2cbus = busio.I2C(board.SCL, board.SDA)

ads = ADS.ADS1115(i2cbus)



# Set analog chanel

ch0 = AnalogIn(ads, ADS.P0)

ch1 = AnalogIn(ads, ADS.P1)



#calculate the Volumetric Water Content

vwc1 = 2.8432*ch0.voltage**3 - 9.1993*ch0.voltage**2 + 20.2553*ch0.voltage - 4.1882

#round vwc to 2 decimals

vwc1 = round(vwc, 2)

print("Voltage on A0: ", round(ch0.voltage, 3), "%VWC1: ", vwc1)



vwc2 = 2.8432*ch1.voltage**3 - 9.1993*ch1.voltage**2 + 20.2553*ch1.voltage – 4.1882

vwc2 = round(vwc, 2)

print("Voltage on A1: ", round(ch1.voltage, 3), "%VWC2: ", vwc2)  
ma il lancio dello script mi dà il seguente errore

Codice: Seleziona tutto

 Traceback (most recent call last):
File "/home/pi/plant+out/Sensori/SoilWatch10Driver.py", line 21, in <module>
import board
ModuleNotFoundError: No module named 'board'

C'è un modo di aggirare/risolvere il problema?

Grazie per l'attenzione

Saluti

LaPa
Eterno imbranato su Ubuntu Linux e .... in tantissime altre cose :D
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da GjMan78 »

MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
Lapa
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: mercoledì 30 dicembre 2009, 17:01

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da Lapa »

Dalla discussione segnalata non riesco a capire la soluzione
Eterno imbranato su Ubuntu Linux e .... in tantissime altre cose :D
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da GjMan78 »

Codice: Seleziona tutto

sudo pip3 install --break-system-packages adafruit-blinka
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
Lapa
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: mercoledì 30 dicembre 2009, 17:01

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da Lapa »

GjMan78 ha scritto:
sabato 13 aprile 2024, 20:40

Codice: Seleziona tutto

sudo pip3 install --break-system-packages adafruit-blinka
Già provato: non funziona
Grazie comunque
:(
Eterno imbranato su Ubuntu Linux e .... in tantissime altre cose :D
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5879
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da GjMan78 »

Che versione di python stai usando?
Posta

Codice: Seleziona tutto

 python --version
Hai fatto il blinka test per verificare che sia tutto installato?
https://learn.adafruit.com/circuitpytho ... st-3030038
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Avatar utente
nuzzopippo
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1633
Iscrizione: giovedì 12 ottobre 2006, 11:34

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da nuzzopippo »

Lapa ha scritto:
sabato 13 aprile 2024, 23:43
GjMan78 ha scritto:
sabato 13 aprile 2024, 20:40

Codice: Seleziona tutto

sudo pip3 install --break-system-packages adafruit-blinka
Già provato: non funziona
Questo stralcio del link indicato da @GjMan78

If you've already followed https://learn.adafruit.com/circuitpytho ... spberry-pi and passed the Blinka test, then I suspect the problem you're hitting is sudo/account-related.

The problem I hit is that the directions on Adafruit install packages for the current user but you need to run Python with sudo to make use of them. Complicating this is that Raspberry OS (rightfully) doesn't want you to install Python packages globally via pip.

To fix it, I basically followed the directions on https://learn.adafruit.com/circuitpytho ... spberry-pi. It creates the virtual environment "env" where all the required packages are installed. Then I used sudo env/bin/python <script> to run my script. That allows running with the privileges required to access the hardware while still being able to see the Python packages.
Mi fa sospettare che la problematica non derivi dalla sola installazione della libreria ma anche da come viene lanciato lo script che dovrebbe riferire al giusto virtual-environment ed essere lanciato come sudoers, analogamente allo stralcio evidenziato su ... hai provato ad avviare lo script in tale modo?
Fatti non foste a viver come bruti ...
Avatar utente
Lapa
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: mercoledì 30 dicembre 2009, 17:01

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da Lapa »

Nuzzopippo,
Io uso Thonny per provare gli script e usa come interprete python3 che nella bin di una venv. Non so come indicare a Thonny di usare sudo
Comunque ho inserto il comando da terminale:

Codice: Seleziona tutto

sudo /home/pi/plant+out/bin/python3 /home/pi/plant+out/Sensori/SoilWatch10Driver.py
Ho ottenuto il solito problema d'import board.

Allora mi sono spostato nella bin di venv l'ho attivata, ho inserito lo script da provare nella stessa cartella dando questo comando da terminale

Codice: Seleziona tutto

(plant+out) pi@raspberrypi:~/plant+out/bin $ sudo python3 SoilWatch10Driver.py


Sono riuscito ad importare board e busio ma c'è quest'altro errore non so interpretarlo:

Codice: Seleziona tutto

Traceback (most recent call last):
  File "SoilWatch10Driver.py", line 25, in <module>
    import adafruit_ads1x15.ads1115 as ADS
  File "/usr/local/lib/python3.7/dist-packages/adafruit_ads1x15/ads1115.py", line 23, in <module>
    from .ads1x15 import ADS1x15, Mode
  File "/usr/local/lib/python3.7/dist-packages/adafruit_ads1x15/ads1x15.py", line 19, in <module>
    from adafruit_bus_device.i2c_device import I2CDevice
  File "/usr/local/lib/python3.7/dist-packages/adafruit_bus_device/i2c_device.py", line 15, in <module>
    from circuitpython_typing import ReadableBuffer, WriteableBuffer
  File "/usr/local/lib/python3.7/dist-packages/circuitpython_typing/__init__.py", line 79
    def read(self, count: Optional[int] = None, /) -> Optional[bytes]:

Grazie
Saluti
LaPa
Ultima modifica di Lapa il domenica 14 aprile 2024, 15:23, modificato 1 volta in totale.
Eterno imbranato su Ubuntu Linux e .... in tantissime altre cose :D
Avatar utente
Lapa
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: mercoledì 30 dicembre 2009, 17:01

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da Lapa »

GjMan78 ha scritto:
domenica 14 aprile 2024, 2:27
Che versione di python stai usando?
Posta

Codice: Seleziona tutto

 python --version


Hai fatto il blinka test per verificare che sia tutto installato?
https://learn.adafruit.com/circuitpytho ... st-3030038
L'interprete usato nella venv è Python 3.7.3

Ho fatto il blinkaTest ma avendo all'inizio import board e busio
mi ha dato

Codice: Seleziona tutto

Traceback (most recent call last):
  File "/home/pi/plant+out/Sensori/blinkaTest.py", line 1, in <module>
    import board
ModuleNotFoundError: No module named 'board'
Allora ho provato anche qui da anteporre "sudo", a spostare il file nella bin attivata e a lanciare da terminale ed il blinka test è andato a buon fine:

Codice: Seleziona tutto

(plant+out) pi@raspberrypi:~/plant+out/bin $ sudo python3 blinkaTest.py
l'output è

Codice: Seleziona tutto

Hello, blinka!
Digital IO ok!
I2C ok!
SPI ok!
done!
..... Almeno qualcosa va bene
Poi ho capito che quel "sudo" è essenziale
ma se da terminale il comando lo do così

Codice: Seleziona tutto

sudo /home/pi/plant+out/bin/python3 /home/pi/plant+out/Sensori/blinkaTest.py
mi dà sempre board import error



Grazie
Saluti
LaPa
Eterno imbranato su Ubuntu Linux e .... in tantissime altre cose :D
Avatar utente
nuzzopippo
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1633
Iscrizione: giovedì 12 ottobre 2006, 11:34

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da nuzzopippo »

Lapa ha scritto:
domenica 14 aprile 2024, 15:11
Io uso Thonny per provare gli script e usa come interprete python3 che nella bin di una venv. Non so come indicare a Thonny di usare sudo
Neanche io saprei come fare, in ogni caso 'per fare il tipo di test che Ti occorre è sempre bene partire con il terminale.

Al momento fai bene ad attivare il venv per poi proseguire con il sudo, vanendo a
Lapa ha scritto:
domenica 14 aprile 2024, 15:11
...
Sono riuscito ad importare board e busio ma c'è quest'altro errore non so interpretarlo:

Codice: Seleziona tutto

Traceback (most recent call last):
  File "SoilWatch10Driver.py", line 25, in <module>
    import adafruit_ads1x15.ads1115 as ADS
  File "/usr/local/lib/python3.7/dist-packages/adafruit_ads1x15/ads1115.py", line 23, in <module>
    from .ads1x15 import ADS1x15, Mode
  File "/usr/local/lib/python3.7/dist-packages/adafruit_ads1x15/ads1x15.py", line 19, in <module>
    from adafruit_bus_device.i2c_device import I2CDevice
  File "/usr/local/lib/python3.7/dist-packages/adafruit_bus_device/i2c_device.py", line 15, in <module>
    from circuitpython_typing import ReadableBuffer, WriteableBuffer
  File "/usr/local/lib/python3.7/dist-packages/circuitpython_typing/__init__.py", line 79
    def read(self, count: Optional[int] = None, /) -> Optional[bytes]:
È evidente che l'istruzione che scatena l'errore è : import adafruit_ads1x15.ads1115 as ADS
che per una serie di passaggi provoca un errore nella inizializzazione del modulo "circuitpython_typing" ... la cosa che mi lascia un po' basito è che tutte le chiamate di libreria indicate nel traceback non fanno capo ad un venv ma ad "/User/local/..." mi sembra "strano".

Purtroppo, non ho disponibile un raspberry e non posso farmi idee su cosa succede, però cercando in giro trovo che la versione1.10.2 di adafruit sembra richiedere una versione python >= 3.8, guarda qua, potrebbe essere il Tuo caso?

Inoltre, vedo da quel post che le librerie girano in un venv ... personalmente, approfondirei con la documentazione le modalità di approccio da tenersi con quella libreria.

Ciao :)
Fatti non foste a viver come bruti ...
Avatar utente
Lapa
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: mercoledì 30 dicembre 2009, 17:01

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da Lapa »

Forse è sufficiente aggiornare python a da 3.7 a 3.8 o successivi?
Io ho Raspeberry Pi OS Buster, Potrebbe essere anche quello il problema?
Eterno imbranato su Ubuntu Linux e .... in tantissime altre cose :D
Avatar utente
nuzzopippo
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1633
Iscrizione: giovedì 12 ottobre 2006, 11:34

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da nuzzopippo »

Lapa ha scritto:
domenica 14 aprile 2024, 17:44
Forse è sufficiente aggiornare python a da 3.7 a 3.8 o successivi?
Io ho Raspeberry Pi OS Buster, Potrebbe essere anche quello il problema?
Forse, provaci.
Comunque qualche problema nel Tuo operare c'è, quando apri il venv (con source pathvenv/bin/activate) poi lancia lo script con "python" non con "python3", python3 Ti apre il comando di sistema.

Riguardo al Rabsperry, ne so troppo poco per avere idea, magari qualche suggerimento di "contorno" mi riuscirebbe di dartelo ma speriamo in interventi di utenti più pratici di quell'ambiente, altrimenti tocca a Te affrontare ciò che seerve.
Fatti non foste a viver come bruti ...
Avatar utente
Lapa
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 384
Iscrizione: mercoledì 30 dicembre 2009, 17:01

Re: [Problema][Python] errore 'ModuleNotFoundError: No module named 'board''

Messaggio da Lapa »

nuzzopippo ha scritto:
domenica 14 aprile 2024, 18:00

Comunque qualche problema nel Tuo operare c'è, quando apri il venv (con source pathvenv/bin/activate) poi lancia lo script con "python" non con "python3", python3 Ti apre il comando di sistema.
Scusate ho fatto un po' di confusione

Probabilmente durante i tentativi che ho fatto per superare il problema ho importato qualche modulo anche nell'interprete globale.

io supero import board, e c'è quell'altro errore, solo se l'interprete è quello di usr/bin e lancio python3. indipendentemente dal sudo

non lo supero import board error con l'interprete delle venv né se nel comando indico python né se indico python3 e indipendentemente da sudo

:muro:

Grazie
Saluti
LaPa
Eterno imbranato su Ubuntu Linux e .... in tantissime altre cose :D
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti