nxtdevices
– NXT Devices¶
Use LEGO® MINDSTORMS® NXT motors and sensors with the EV3 brick.
NXT Motor¶
This motor works just like a LEGO MINDSTORMS EV3 Large Motor. You can use it in
your programs using the Motor
class.
NXT Touch Sensor¶

NXT Light Sensor¶

NXT Color Sensor¶

-
class
ColorSensor
(port)¶ LEGO® MINDSTORMS® NXT Color Sensor.
- Parameters
port (Port) – Port to which the sensor is connected.
-
color
()¶ Measures the color of a surface.
- Returns
Color.BLACK
,Color.BLUE
,Color.GREEN
,Color.YELLOW
,Color.RED
,Color.WHITE
orNone
.- Return type
Color
, orNone
if no color is detected.
-
ambient
()¶ Measures the ambient light intensity.
- Returns
Ambient light intensity, ranging from 0 (dark) to 100 (bright).
- Return type
-
reflection
()¶ Measures the reflection of a surface.
- Returns
Reflection, ranging from 0 (no reflection) to 100 (high reflection).
- Return type
-
rgb
()¶ Measures the reflection of a surface using a red, green, and then a blue light.
- Returns
Tuple of reflections for red, green, and blue light, each ranging from 0.0 (no reflection) to 100.0 (high reflection).
- Return type
Built-in light
This sensor has a built-in light. You can make it red, green, blue, or turn it off.
-
light.
on
(color)¶ Turns on the light at the specified color.
- Parameters
color (Color) – Color of the light.
-
light.
off
()¶ Turns off the light.
NXT Ultrasonic Sensor¶

NXT Sound Sensor¶

NXT Temperature Sensor¶

NXT Energy Meter¶

Vernier Adapter¶
-
class
VernierAdapter
(port, conversion=None)¶ LEGO® MINDSTORMS® Education NXT/EV3 Adapter for Vernier Sensors.
- Parameters
port (Port) – Port to which the sensor is connected.
conversion (callable) – Function of the format
conversion
. This function is used to convert the raw analog voltage to the sensor-specific output value. Each Vernier Sensor has its own conversion function. The example given below demonstrates the conversion for the Surface Temperature Sensor.
Example: Using the Surface Temperature Sensor.
#!/usr/bin/env pybricks-micropython
from pybricks.parameters import Port
from pybricks.nxtdevices import VernierAdapter
from math import log
# Conversion formula for Surface Temperature Sensor
def convert_raw_to_temperature(voltage):
# Convert the raw voltage to the NTC resistance
# according to the Vernier Adapter EV3 block.
counts = voltage/5000*4096
ntc = 15000*(counts)/(4130-counts)
# Handle log(0) safely: make sure that ntc value is positive.
if ntc <= 0:
ntc = 1
# Apply Steinhart-Hart equation as given in the sensor documentation.
K0 = 1.02119e-3
K1 = 2.22468e-4
K2 = 1.33342e-7
return 1/(K0 + K1*log(ntc) + K2*log(ntc)**3)
# Initialize the adapter on port 1
thermometer = VernierAdapter(Port.S1, convert_raw_to_temperature)
# Get the measured value and print it
temp = thermometer.value()
print(temp)