57 Serial.println(
"Failed to find LTR553 - check your wiring!");
63 Serial.println(
"Init LTR553 Sensor success!");
166 static uint32_t lastReadMillis;
167 if (millis() > lastReadMillis) {
168 lastReadMillis = millis() + 500;
182 bool saturated =
false;
187 Serial.print(
" - "); Serial.println(saturated ?
"PS saturated" :
"PS not saturated");
bool begin(SensorCommCustom::CustomCallback callback, uint8_t addr)
Initialize the sensor using custom callback interface.
Driver for the LTR-553ALS-01 ambient light + proximity sensor (I2C).
void setProximityThreshold(uint16_t low, uint16_t high)
Set PS threshold window.
void enablePsIndicator()
Enable PS indicator.
void setIRQLevel(IrqLevel level)
Set interrupt pin polarity.
@ PS_LED_DUTY_100
100% (default)
int getLightSensor(uint8_t ch)
Read ALS raw data from channel 0 or 1.
void setLightSensorThreshold(uint16_t low, uint16_t high)
Set ALS threshold window.
@ ALS_IRQ_ACTIVE_LOW
INT pin is active-low (default)
void setLightSensorGain(LightSensorGain gain)
Set ALS gain.
void setPsLedCurrent(PsLedCurrent cur)
Set PS LED peak current (REG_PS_LED bits 2:0).
void setPsLedPulsePeriod(PsLedPeriod period)
Set PS LED pulse modulation frequency (REG_PS_LED bits 7:5).
int getProximity(bool *saturated=NULL)
Read proximity raw data.
void setLightSensorPersists(uint8_t count)
Configure ALS interrupt persistence count.
@ PS_LED_PLUSE_100KHZ
100kHz
@ ALS_IRQ_BOTH
Both ALS and PS measurement can trigger interrupt.
void enableProximity()
Enable proximity measurement.
void setProximityRate(PsRate rate)
Set PS measurement rate.
void enableIRQ(IrqMode mode)
Enable interrupts and select which measurement sources can trigger them.
void setPsLedDutyCycle(PsLedDuty duty)
Set PS LED duty cycle (REG_PS_LED bits 4:3).
void setPsLedPulses(uint8_t pulesNum)
Set number of PS LED pulses (REG_PS_N_PULSES bits 3:0).
@ ALS_GAIN_8X
0.125 lux to 8k lux
void setProximityPersists(uint8_t count)
Configure PS interrupt persistence count.
void enableLightSensor()
Enable ALS measurement.