77APDS9960_GESTURE_SENSITIVITY_2 = 20
88
99# APDS9960 device IDs
10- APDS9960_DEV_ID = [0xab , 0x9c , 0xa8 , - 0x55 ]
10+ APDS9960_DEV_ID = [0xAB , 0x9C , 0xA8 , - 0x55 ]
1111
1212# APDS9960 times
1313APDS9960_TIME_FIFO_PAUSE = 0.03
2121APDS9960_REG_AIHTL = 0x86
2222APDS9960_REG_AIHTH = 0x87
2323APDS9960_REG_PILT = 0x89
24- APDS9960_REG_PIHT = 0x8b
25- APDS9960_REG_PERS = 0x8c
26- APDS9960_REG_CONFIG1 = 0x8d
27- APDS9960_REG_PPULSE = 0x8e
28- APDS9960_REG_CONTROL = 0x8f
24+ APDS9960_REG_PIHT = 0x8B
25+ APDS9960_REG_PERS = 0x8C
26+ APDS9960_REG_CONFIG1 = 0x8D
27+ APDS9960_REG_PPULSE = 0x8E
28+ APDS9960_REG_CONTROL = 0x8F
2929APDS9960_REG_CONFIG2 = 0x90
3030APDS9960_REG_ID = 0x92
3131APDS9960_REG_STATUS = 0x93
3535APDS9960_REG_RDATAH = 0x97
3636APDS9960_REG_GDATAL = 0x98
3737APDS9960_REG_GDATAH = 0x99
38- APDS9960_REG_BDATAL = 0x9a
39- APDS9960_REG_BDATAH = 0x9b
40- APDS9960_REG_PDATA = 0x9c
41- APDS9960_REG_POFFSET_UR = 0x9d
42- APDS9960_REG_POFFSET_DL = 0x9e
43- APDS9960_REG_CONFIG3 = 0x9f
44- APDS9960_REG_GPENTH = 0xa0
45- APDS9960_REG_GEXTH = 0xa1
46- APDS9960_REG_GCONF1 = 0xa2
47- APDS9960_REG_GCONF2 = 0xa3
48- APDS9960_REG_GOFFSET_U = 0xa4
49- APDS9960_REG_GOFFSET_D = 0xa5
50- APDS9960_REG_GOFFSET_L = 0xa7
51- APDS9960_REG_GOFFSET_R = 0xa9
52- APDS9960_REG_GPULSE = 0xa6
53- APDS9960_REG_GCONF3 = 0xaA
54- APDS9960_REG_GCONF4 = 0xaB
55- APDS9960_REG_GFLVL = 0xae
56- APDS9960_REG_GSTATUS = 0xaf
57- APDS9960_REG_IFORCE = 0xe4
58- APDS9960_REG_PICLEAR = 0xe5
59- APDS9960_REG_CICLEAR = 0xe6
60- APDS9960_REG_AICLEAR = 0xe7
61- APDS9960_REG_GFIFO_U = 0xfc
62- APDS9960_REG_GFIFO_D = 0xfd
63- APDS9960_REG_GFIFO_L = 0xfe
64- APDS9960_REG_GFIFO_R = 0xff
38+ APDS9960_REG_BDATAL = 0x9A
39+ APDS9960_REG_BDATAH = 0x9B
40+ APDS9960_REG_PDATA = 0x9C
41+ APDS9960_REG_POFFSET_UR = 0x9D
42+ APDS9960_REG_POFFSET_DL = 0x9E
43+ APDS9960_REG_CONFIG3 = 0x9F
44+ APDS9960_REG_GPENTH = 0xA0
45+ APDS9960_REG_GEXTH = 0xA1
46+ APDS9960_REG_GCONF1 = 0xA2
47+ APDS9960_REG_GCONF2 = 0xA3
48+ APDS9960_REG_GOFFSET_U = 0xA4
49+ APDS9960_REG_GOFFSET_D = 0xA5
50+ APDS9960_REG_GOFFSET_L = 0xA7
51+ APDS9960_REG_GOFFSET_R = 0xA9
52+ APDS9960_REG_GPULSE = 0xA6
53+ APDS9960_REG_GCONF3 = 0xAA
54+ APDS9960_REG_GCONF4 = 0xAB
55+ APDS9960_REG_GFLVL = 0xAE
56+ APDS9960_REG_GSTATUS = 0xAF
57+ APDS9960_REG_IFORCE = 0xE4
58+ APDS9960_REG_PICLEAR = 0xE5
59+ APDS9960_REG_CICLEAR = 0xE6
60+ APDS9960_REG_AICLEAR = 0xE7
61+ APDS9960_REG_GFIFO_U = 0xFC
62+ APDS9960_REG_GFIFO_D = 0xFD
63+ APDS9960_REG_GFIFO_L = 0xFE
64+ APDS9960_REG_GFIFO_R = 0xFF
6565
6666# APDS9960 bit fields
6767APDS9960_BIT_PON = 0b00000001
6868APDS9960_BIT_AEN = 0b00000010
6969APDS9960_BIT_PEN = 0b00000100
7070APDS9960_BIT_WEN = 0b00001000
71- APSD9960_BIT_AIEN = 0b00010000
71+ APSD9960_BIT_AIEN = 0b00010000
7272APDS9960_BIT_PIEN = 0b00100000
7373APDS9960_BIT_GEN = 0b01000000
7474APDS9960_BIT_GVALID = 0b00000001
118118APDS9960_LED_BOOST_100 = 0
119119APDS9960_LED_BOOST_150 = 1
120120APDS9960_LED_BOOST_200 = 2
121- APDS9960_LED_BOOST_300 = 3
121+ APDS9960_LED_BOOST_300 = 3
122122
123123# Gesture wait time values
124124APDS9960_GWTIME_0MS = 0
131131APDS9960_GWTIME_39_2MS = 7
132132
133133# Default values
134- APDS9960_DEFAULT_ATIME = 219 # 103ms
135- APDS9960_DEFAULT_WTIME = 246 # 27ms
136- APDS9960_DEFAULT_PROX_PPULSE = 0x87 # 16us, 8 pulses
137- APDS9960_DEFAULT_GESTURE_PPULSE = 0x89 # 16us, 10 pulses
138- APDS9960_DEFAULT_POFFSET_UR = 0 # 0 offset
139- APDS9960_DEFAULT_POFFSET_DL = 0 # 0 offset
140- APDS9960_DEFAULT_CONFIG1 = 0x60 # No 12x wait (WTIME) factor
134+ APDS9960_DEFAULT_ATIME = 219 # 103ms
135+ APDS9960_DEFAULT_WTIME = 246 # 27ms
136+ APDS9960_DEFAULT_PROX_PPULSE = 0x87 # 16us, 8 pulses
137+ APDS9960_DEFAULT_GESTURE_PPULSE = 0x89 # 16us, 10 pulses
138+ APDS9960_DEFAULT_POFFSET_UR = 0 # 0 offset
139+ APDS9960_DEFAULT_POFFSET_DL = 0 # 0 offset
140+ APDS9960_DEFAULT_CONFIG1 = 0x60 # No 12x wait (WTIME)
141141APDS9960_DEFAULT_LDRIVE = APDS9960_LED_DRIVE_100MA
142142APDS9960_DEFAULT_PGAIN = APDS9960_PGAIN_4X
143143APDS9960_DEFAULT_AGAIN = APDS9960_AGAIN_4X
144- APDS9960_DEFAULT_PILT = 0 # Low proximity threshold
145- APDS9960_DEFAULT_PIHT = 50 # High proximity threshold
146- APDS9960_DEFAULT_AILT = 0xffff # Force interrupt for calibration
144+ APDS9960_DEFAULT_PILT = 0 # Low proximity threshold
145+ APDS9960_DEFAULT_PIHT = 50 # High proximity threshold
146+ APDS9960_DEFAULT_AILT = 0xFFFF # Force interrupt for calibration
147147APDS9960_DEFAULT_AIHT = 0
148- APDS9960_DEFAULT_PERS = 0x11 # 2 consecutive prox or ALS for int.
149- APDS9960_DEFAULT_CONFIG2 = 0x01 # No saturation interrupts or LED boost
150- APDS9960_DEFAULT_CONFIG3 = 0 # Enable all photodiodes, no SAI
151- APDS9960_DEFAULT_GPENTH = 40 # Threshold for entering gesture mode
152- APDS9960_DEFAULT_GEXTH = 30 # Threshold for exiting gesture mode
153- APDS9960_DEFAULT_GCONF1 = 0x40 # 4 gesture events for int., 1 for exit
148+ APDS9960_DEFAULT_PERS = 0x11 # 2 consecutive prox or ALS for int.
149+ APDS9960_DEFAULT_CONFIG2 = 0x01 # No saturation interrupts or LED boost
150+ APDS9960_DEFAULT_CONFIG3 = 0 # Enable all photodiodes, no SAI
151+ APDS9960_DEFAULT_GPENTH = 40 # Threshold for entering gesture mode
152+ APDS9960_DEFAULT_GEXTH = 30 # Threshold for exiting gesture mode
153+ APDS9960_DEFAULT_GCONF1 = 0x40 # 4 gesture events for int., 1 for exit
154154APDS9960_DEFAULT_GGAIN = APDS9960_GGAIN_4X
155155APDS9960_DEFAULT_GLDRIVE = APDS9960_LED_DRIVE_100MA
156156APDS9960_DEFAULT_GWTIME = APDS9960_GWTIME_2_8MS
157- APDS9960_DEFAULT_GOFFSET = 0 # No offset scaling for gesture mode
158- APDS9960_DEFAULT_GPULSE = 0xc9 # 32us, 10 pulses
159- APDS9960_DEFAULT_GCONF3 = 0 # All photodiodes active during gesture
160- APDS9960_DEFAULT_GIEN = 0 # Disable gesture interrupts
157+ APDS9960_DEFAULT_GOFFSET = 0 # No offset scaling for gesture mode
158+ APDS9960_DEFAULT_GPULSE = 0xC9 # 32us, 10 pulses
159+ APDS9960_DEFAULT_GCONF3 = 0 # All photodiodes active during gesture
160+ APDS9960_DEFAULT_GIEN = 0 # Disable gesture interrupts
161161
162162# gesture directions
163163APDS9960_DIR_NONE = 0
173173APDS9960_STATE_NA = 0
174174APDS9960_STATE_NEAR = 1
175175APDS9960_STATE_FAR = 2
176- APDS9960_STATE_ALL = 3
176+ APDS9960_STATE_ALL = 3
0 commit comments