Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hello, I'm newbie with EV3DEV and I'm trying to make my absolute sensor working on my ev3. #774

Open
dlech opened this issue Aug 30, 2021 · 5 comments

Comments

@dlech
Copy link
Member

dlech commented Aug 30, 2021

Hello, I'm newbie with EV3DEV and I'm trying to make my absolute sensor working on my ev3.
The sensor is recognized by the brick but i have a problem with loading the "sensor.lego" module.
Here is the error message in vscode :

Traceback (most recent call last):
File "/home/robot/vscode-hello-python-master/test mindstorm.py", line 5, in
from sensor.lego import Sensor
ImportError: No module named 'sensor'

Kernel 4.14.117-ev3dev-2.3.5-ev3

Can you help me please ?

Originally posted by @gaminoi in #650 (comment)

@dlech
Copy link
Member Author

dlech commented Aug 30, 2021

Can you share the full program?

@gaminoi
Copy link

gaminoi commented Aug 31, 2021

Yes :

#!/usr/bin/env python3

import time
from sensor.lego import Sensor
from ev3dev2.port import LegoPort

def main():

    absport = LegoPort(address='ev3-ports:in2')
    absport.mode = 'nxt-i2c'
    abs = Sensor('ev3-ports:in2:i2c17')
    abs.mode = "TILT"
    print(abs.value(0))
    
    time.sleep(5)

if __name__ == '__main__':
    main()

@dlech
Copy link
Member Author

dlech commented Aug 31, 2021

The docs say that the Sensor class is in the ev3dev2.sensor module, not sensor.lego.

@gaminoi
Copy link

gaminoi commented Aug 31, 2021

Your the best dlech ! It works fine if I remove the LegoPort configuration.
Here is the final code :

#!/usr/bin/env python3
import time
import os
from ev3dev2.sensor import Sensor

def main():

    print('\x1Bc', end='') #RAZ écran
    os.system('setfont ' + 'Lat15-Terminus24x12') #Police

    abs = Sensor('ev3-ports:in2:i2c17')
    abs.mode = "TILT"
    for i in range(20):
        print(abs.value(0))
        time.sleep(0.1)

if __name__ == '__main__':
    main()`

Thank you !!

@WesleyJ-128
Copy link

It sounds like you have solved the problem. Please close this issue if that is the case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants