# NXT Color Sensor

A component that provides a high-level interface to a color sensor on a LEGO MINDSTORMS NXT robot

## Properties

### BluetoothClient

The BluetoothClient component that should be used for communication. Must be set in the Designer

### SensorPort

The sensor port that the sensor is connected to. Must be set in the Designer

### DetectColor

Whether the sensor should detect color or light.

True indicates that the sensor should detect color; False indicates that the sensor should detect light. \
If the DetectColor property is set to True, the BelowRange, WithinRange, and AboveRange events will not occur and the sensor will not generate color.

If the DetectColor property is set to False, the ColorChanged event will not occur.

### ColorChangedEventEnabled

Whether the ColorChanged event should fire when the DetectColor property is set to True and the detected color changes.

### GenerateColor

The color that should generated by the sensor. \
Only None, Red, Green, or Blue are valid values. \
The sensor will not generate color when the DetectColor property is set to True.

### BottomOfRange

The bottom of the range used for the BelowRange, WithinRange, and AboveRange events.

### TopOfRange

The top of the range used for the BelowRange, WithinRange, and AboveRange events.

### BelowRangeEventEnabled

Whether the BelowRange event should fire when the DetectColor property is set to False and the light level goes below the BottomOfRange.

### WithinRangeEventEnabled

Whether the WithinRange event should fire when the DetectColor property is set to False and the light level goes between the BottomOfRange and the TopOfRange.

### AboveRangeEventEnabled

Whether the AboveRange event should fire when the DetectColor property is set to False and the light level goes above the TopOfRange.

## Events

### ColorChanged(number color)

Detected color has changed.

The ColorChanged event will not occur if the DetectColor property is set to False or if the ColorChangedEventEnabled property is set to False.

### BelowRange()

Light level has gone below the range.

The BelowRange event will not occur if the DetectColor property is set to True or if the BelowRangeEventEnabled property is set to False.

### WithinRange()

Light level has gone within the range. \
The WithinRange event will not occur if the DetectColor property is set to True or if the WithinRangeEventEnabled property is set to False.

### AboveRange()

Light level has gone above the range.

The AboveRange event will not occur if the DetectColor property is set to True or if the AboveRangeEventEnabled property is set to False.

## Methods

### GetColor ()

Returns the current detected color, or the color None if the color can not be read or if the DetectColor property is set to False.

### GetLightLevel ()

Returns the current light level as a value between 0 and 1023, or -1 if the light level can not be read or if the DetectColor property is set to True.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://makeroid.gitbook.io/docs/components/lego-mindstorms/nxt-color-sensor.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
