ISL29004IROZ

ISL29004
Data Sheet
November 17, 2011
Light-to-Digital Output Sensor with Address
Selection, High Sensitivity, Gain Selection,
Interrupt Function and I2C Interface
The ISL29004 is an integrated light sensor with a 16-bit
integrating type ADC, I2C user programmable Lux range
select for optimized counts/Lux, and I2C multi-function
control and monitoring capabilities. The internal ADC
provides 16-bit resolution while rejecting 50Hz and 60Hz
flicker caused by artificial light sources.
Features
• Range select via I2C
- Range1 = 1000Lux
- Range2 = 4000Lux
- Range3 = 16,000Lux
- Range4 = 64,000Lux
• Human eye response (540nm peak sensitivity)
• Temperature compensated
In normal operation, power consumption is typically 300µA.
Futhermore, an available software power-down mode
controlled via the I2C interface reduces power consumption
to less than 1µA. The device also support a hardware
interrupt that remains asserted low until the host clears it
through I2C interface.
The ISL29004 is in an 8 Ld ODFN package and has two I2C
address pins for multiple devices on the same bus. The
ISL29003 is a similar light sensor with a hardwired I2C
address that is available in ODFN6 package.
• 16-bit resolution
• Adjustable resolution: up to 65 counts per Lux
• User-programmable upper and lower threshold interrupt
• Simple output code, directly proportional to Lux
• 50Hz/60Hz rejection
• 2.5V to 3.3V supply
• 8 Ld ODFN (3mmx3mm)
• I2C address selection
Designed to operate on supplies from 2.5V to 3.3V, the
ISL29004 are specified for operation over the -40°C to
+85°C ambient temperature range.
Applications
Pinout
• Backlight control
1
GND
2
REXT
3
A0
4
• Ambient light sensing
• Temperature control systems
ISL29004
(8 LD ODFN)
TOP VIEW
VDD
FN6221.1
• Contrast control
8
SDA
7
SCL
6
INT
5
A1
• Camera light meters
• Lighting controls
THERMAL
PAD
Block Diagram
1
MUX
SHDN
INT TIME
GAIN/RANGE
MODE
PHOTODIODE 1
COMMAND
REGISTER
INTEGRATING
ADC
DATA
REGISTER
I2C
PHOTODIODE 2
EXT
TIMING
IREF
FOSC
INT
216
COUNTER
3
2
REXT
GND
INTERRUPT
8
SDA
7
SCL
4
A0
5
A1
6 INT
ISL29004
1
CAUTION: These devices are sensitive to electrostatic discharge; follow proper IC Handling Procedures.
1-888-INTERSIL or 1-888-468-3774 |Copyright Intersil Americas LLC 2006, 2011. All Rights Reserved.
I2C Bus is a registered trademark owned by NXP Semiconductors Netherlands, B.V
Intersil (and design) is a trademark owned by Intersil Corporation or one of its subsidiaries.
All other trademarks mentioned are the property of their respective owners.
ISL29004
Ordering Information
PART NUMBER
(Notes 1, 2, 3)
PACKAGE
(Pb-Free)
TAPE & REEL
PKG. DWG. #
ISL29004IROZ (Note 4)
-
8 Ld ODFN
MDP0052
ISL29004IROZ-T7 (Note 4)
7”
8 Ld ODFN Tape and Reel
MDP0052
ISL29004IROZ-EVALZ
Evaluation Board (Pb-free)
NOTES:
1. Please refer to TB347 for details on reel specifications.
2. These Intersil Pb-free plastic packaged products employ special Pb-free material sets; molding compounds/die attach materials and 100% matte
tin plate - e3 termination finish, which is RoHS compliant and compatible with both SnPb and Pb-free soldering operations. Intersil Pb-free
products are MSL classified at Pb-free peak reflow temperatures that meet or exceed the Pb-free requirements of IPC/JEDEC J STD-020.
3. For Moisture Sensitivity Level (MSL), please see device information page for ISL29004. For more information on MSL please see tech brief
TB466
4. Not recommended for new designs.
2
FN6221.1
November 17, 2011
ISL29004
Absolute Maximum Ratings (TA = +25°C)
Thermal Information
VDD Supply Voltage between VDD and GND . . . . . . . . . . . . . 3.6V
I2C Address Pin Voltage . . . . . . . . . . . . . . . . . . . . . . . . -0.2V to 3.6
I2C Bus Pin Voltage (SCL, SDA) . . . . . . . . . . . . . . . . . -0.2V to 5.5V
I2C Bus Pin Current (SCL, SDA) . . . . . . . . . . . . . . . . . . . . . . <10mA
Rext Pin Voltage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -0.2V to 3.6V
Maximum Die Temperature . . . . . . . . . . . . . . . . . . . . . . . . . . +125°C
Storage Temperature . . . . . . . . . . . . . . . . . . . . . . . .-45°C to +100°C
Operating Temperature . . . . . . . . . . . . . . . . . . . . . . .-40°C to +85°C
ESD, Human Body Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2kV
ESD, Machine Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .500V
Pb-free reflow profile . . . . . . . . . . . . . . . . . . . . . . . . . .see link below
http://www.intersil.com/pbfree/Pb-FreeReflow.asp
CAUTION: Stresses above those listed in “Absolute Maximum Ratings” may cause permanent damage to the device. This is a stress only rating and operation of the
device at these or any other conditions above those indicated in the operational sections of this specification is not implied.
IMPORTANT NOTE: All parameters having Min/Max specifications are guaranteed. Typical values are for information purposes only. Unless otherwise noted, all tests
are at the specified temperature and are pulsed tests, therefore: TJ = TC = TA
Electrical Specifications
PARAMETER
VDD = 3V, TA = +25°C, REXT = 100kΩ 1% tolerance, unless otherwise specified, Internal Timing Mode
operation (See Principles of Operation).
DESCRIPTION
CONDITION
MIN
(Note 8)
MAX
(Note 8)
UNIT
3.63
V
0.29
0.33
mA
0.1
1
µA
TYP
VDD
Power Supply Range
IDD
Supply Current
IDD1
Supply Current Disabled
Software disabled
FOSC1
Internal Oscillator Frequency
Gain/Range = 1 or 2
290
327
364
kHz
FOSC2
Internal Oscillator Frequency
Gain/Range = 3 or 4
580
655
728
kHz
FI2C
I2C Clock Rate
(Note 6)
400
kHz
DATA0
Diode1 and Diode2 Dark ADC Code
E = 0Lux, Mode1, Gain/Range = 1
1
5
Counts
65535
Counts
20,200
24,400
Counts
2.25
DATA1
Full Scale ADC Code
DATA2
Diode1 ADC Code Gain/Range = 1
accuracy
Mode0
DATA3
Diode2 ADC Code Gain/Range = 1
accuracy
Mode1
DATA4
Diode1 ADC Code Gain/Range = 2
accuracy
Mode0
DATA5
Diode2 ADC Code Gain/Range = 2
accuracy
Mode1
DATA6
Diode1 ADC Code Gain/Range = 3
accuracy
Mode0
DATA7
Diode2 ADC Code Gain/Range = 3
accuracy
Mode1
DATA8
Diode1 ADC Code Gain/Range = 4
accuracy
Mode0
DATA9
Diode2 ADC Code Gain/Range = 4
accuracy
Mode1
VREF
Voltage of REXT Pin
VTL
SCL, SDA, A0 and A1 Threshold LO
VTH
SCL and SDA Threshold HI
ISDA
SDA Current Sinking Capability
3
1
E = 300Lux, fluorescent light,
Gain/Range = 1
(Note 5)
13,800
2,020
Counts
E = 300Lux, fluorescent light,
Gain/Range = 2
(Note 5)
5,050
Counts
505
Counts
E = 300Lux, fluorescent light,
Gain/Range = 3
(Note 5)
1,262
Counts
126
Counts
E = 300Lux, fluorescent light,
Gain/Range = 4
(Note 5)
316
Counts
32
Counts
500
mV
(Note 7)
1.05
V
(Note 7)
1.95
V
5
mA
3
FN6221.1
November 17, 2011
ISL29004
Electrical Specifications
PARAMETER
VDD = 3V, TA = +25°C, REXT = 100kΩ 1% tolerance, unless otherwise specified, Internal Timing Mode
operation (See Principles of Operation). (Continued)
DESCRIPTION
CONDITION
MIN
(Note 8)
TYP
MAX
(Note 8)
3
5
mA
UNIT
IINT
INT Current Sinking Capability
IIL
A0 and A1 Input Current LO
A0 = A1 = GND
0.1
µA
IIH
A0 and A1 Input Current HI
A0 = A1 = VDD
0.1
µA
NOTES:
5. Fluorescent light is substituted by a green (λ = 540nm) LED during production.
6. Minimum I2C Clock Rate is guaranteed by design.
7. The voltage threshold levels of the SDA and SCL pins are VDD dependent: VTL = 0.35*VDD. VTH = 0.65*VDD.
8. Compliance to datasheet limits is assured by one or more methods: production test, characterization and/or design.
Pin Descriptions
PIN NUMBER
ISL29003
PIN NUMBER
ISL29004
PIN NAME
1
1
VDD
Positive supply; connect this pin to a regulated 2.5V to 3.3V supply
2
2
GND
Ground pin.
3
3
REXT
External resistor pin for ADC reference; connect this pin to ground through a (nominal)
100kΩ resistor
4
6
INT
Interrupt pin; LO for interrupt/alarming. The INT pin is an open drain.
5
7
SCL
I2C serial clock
6
8
SDA
I2C serial data
N/A
4
A0
Bit 0 of the I2C address.
A1
Bit 1 of the I2C address.
N/A
5
4
DESCRIPTION
The I2C bus lines can pulled above VDD, 5.5V max.
The address pins have an open gate equivalent circuit.
These are the least-significant bits of the I2C address.
The 4 possible addresses are 44(hex) through 47(hex).
FN6221.1
November 17, 2011
ISL29004
Principles of Operation
Photodiodes
The ISL29004 contain two photodiodes. Diode1 is sensitive
to both visible and intrared light, while Diode2 is mostly
sensitive to infrared light. The spectral response of the two
diodes are independent from one another. See Figure 7 in the
performance curves section. The photodiodes convert light to
current. Then, the diodes’ current outputs are converted to
digital by a single built-in integrating type 16-bit Analog-toDigital Converter (ADC). An I2C command mode determines
which photodiode will be converted to a digital signal. Mode0
is Diode1 only. Mode1 is Diode2 only. Mode3 is a sequential
Mode0 and Mode1 with an internal subtract function (Diode1 Diode2). Analog-to-Digital Converter.
The converter is a charge-balancing integrating type 16-bit
ADC. The chosen method for conversion is best for
converting small current signals in the presense of an AC
periodic noise. A 100ms integration time, for instance, highly
rejects 50Hz and 60Hz power line noise simultaneously. See
Integration Time and Noise Rejection section.
The built-in ADC offers user flexibility in integration time or
conversion time. Two timing modes are available. Internal
Timing Mode and External Timing Mode. In Internal Timing
Mode, integration time is determined by an internal dual speed
oscillator (fosc), and the n-bit (n = 4, 8, 12,16) counter inside the
ADC. In External Timing Mode, integration time is determined
by the time between two consecutive I2C External Timing Mode
commands. See External Timing Mode example. A good
balancing act of integration time and resolution depending on
the application is required for optimal results.
The ADC has four I2C programmable range select to
dynamically accomodate various lighting conditions. For
very dim conditions, the ADC can be configured at its lowest
range. For very bright conditions, the ADC can be configured
at its highest range.
Interrupt Function
The active low interrupt pin is an open drain pull-down
configuration. The interrput pin serves as an alarm or
monitoring function to determine whether the ambient light
exceeds the upper threshold or goes below the lower
threshold. The user can also configure the persistency of the
interrupt pin. This eliminates any false triggers such as noise
or sudden spikes in ambient light conditions. An unexpected
camera flash for example can be ignored by setting the
persistency to 8 integration cycles.
I2C Interface
There are eight (8) 8-bit registers available inside the
ISL29004. The command and control registers define the
operation of the device. The command and control registers do
not change until the registers are overwritten.There are two 8bit registers that set the high and low interrupt thresholds. There
are four 8-bit data Read Only registers. Two bytes for the
sensor reading and another two bytes for the timer counts. The
data registers contain the ADC's latest digital output, and the
number of clock cycles in the previous integration period.
The ISL29004’s I2C interface slave address is pin-selectable
by pins A0 and A1. These pins can be tied or driven either
high or low. They comprise the least-significant two bits of
the I2C address, while the 5 most-significant bits are
hardwired as 100001{A1}{A0}. The four possible addresses
are therefore 44(hex) through 47(hex).
The ISL29003’s I2C interface slave address is hardwired
internally as 44(hex).
Figure 1 shows a sample one-byte read. Figure 2 shows a
sample one-byte write. Figure 3 shows a sync_iic timing
diagram sample for externally controlled integration time.
The I2C bus master always drives the SCL (clock) line, while
either the master or the slave can drive the SDA (data) line.
Every I2C transaction begins with the master asserting a
start condition (SDA falling while SCL remains high). The
following byte is driven by the master, and includes the slave
address and read/write bit. The receiving device is
responsible for pulling SDA low during the
acknowledgement period.
Every I2C transaction ends with the master asserting a stop
condition (SDA rising while SCL remains high).
For more information about the I2C standard, please consult
the Philips® I2C specification documents.
5
FN6221.1
November 17, 2011
ISL29004
I2C DATA
I2C SDA
In
Start
DEVICE ADDRESS
A6
I2C SDA
Out
I2C CLK
A5
A4
A3
A2
A1
A0
W
A
W
A
2
3
4
5
6
R7
R6
A
SDA DRIVEN BY MASTER
1
REGISTER ADDRESS
7
8
R5
R4
R3
R2
A
R1
R0
SDA DRIVEN BY MASTER
9
1
2
3
4
5
6
7
8
STOP
DEVICE ADDRESS
START
A
A6
A5
A4
A
SDA DRIVEN BY MASTER
9
1
2
A3
3
A2
4
A1
5
6
A0
7
W
8
A
DATA BYTE0
A
A
SDA DRIVEN BY ISL29003
STOP
NAK
A
D7
D6
D5
D4
D3
D2
D1
D0
A
9
1
2
3
4
5
6
7
8
9
FIGURE 1. I2C READ TIMING DIAGRAM SAMPLE
I2C DATA
Start
DEVICE ADDRESS
I2C SDA In
A6
I2C SDA Out
A5
A4
A3
A2
A1
A0
W
A
W
A
SDA DRIVEN BY MASTER
1
I2C CLK In
2
3
4
5
6
REGISTER ADDRESS
R7
R6
8
R4
R3
R2
R1
R0
9
1
2
3
4
5
6
FUNCTIONS
A
SDA DRIVEN BY MASTER
A
7
R5
A
B7
B6
8
B4
B3
B2
B1
B0
SDA DRIVEN BY MASTER
A
7
B5
A
9
1
2
3
4
5
6
7
STOP
A
A
8
9
FIGURE 2. I2C WRITE TIMING DIAGRAM SAMPLE
I2C DATA
I2C SDA In
Start
DEVICE ADDRESS
A6
I2C SDA Out
I2C CLK In
A5
A4
A3
A2
A1
A0
W
A
W
A
2
3
4
5
6
R7
A
SDA DRIVEN BY MASTER
1
REGISTER ADDRESS
7
8
9
R6
R5
R4
R3
R2
A Stop
R1
R0
A
SDA DRIVEN BY MASTER
1
2
3
4
5
6
7
A
8
9
FIGURE 3. I2C sync_iic TIMING DIAGRAM SAMPLE
6
FN6221.1
November 17, 2011
ISL29004
Register Set
There are eight registers that are available in the ISL29004.
Table 1 summarizes the available registers and their
functions.
TABLE 1. REGISTER SET
ADDR
(HEX)
REGISTER
NAME
Bit(s)
FUNCTION NAME
00
Command
7
enable
0: disable adc-core
1: enable adc-core
6
adcPD
0: Normal operation
1: Power Down Mode
5
Timing_Mode
4
reserved
3:2
mode<1:0>
Selects ADC work mode
0: Diode1’s current to unsigned 16-bit data
1: Diode2’s current to unsigned 16-bit data
2: Difference between diodes (I1 - I2) to signed 15-bit data
3: reserved
1:0
width<1:0>
number of clock cycles; n-bit resolution
0: 216 cycles
1: 212 cycles
2: 28 cycles
3: 24 cycles
7
ext_mode
Always set to logic 0. Factory use only.
6
test_mode
Always set to logic 0
5
int_flag
4
reserved
Always set to logic 0. Factory use only.
3:2
gain<1:0>
Selects the gain so range is
0: 0 - 1000Lux
1: 0 - 4000Lux
2: 0 - 16000Lux
3: 0 - 64000Lux
1:0
int_persist
<1:0>
Interrupt is triggered after
0: 1 integration cycle
1: 4 integration cycles
2: 8 integration cycles
3: 16 integration cycles
01
Control
FUNCTIONS/DESCRIPTION
0: Integration is internally timed
1: Integration is externally sync/controlled by I2C host
0: Interrupt is cleared or not yet triggered
1: Interrupt is triggered
02
Interrupt threshold
HI
7:0
Interrupt threshold
HI
High byte of HI interrupt threshold. Default is 0xFF
03
Interrupt threshold
LO
7:0
Interrupt threshold
LO
High byte of the LO interrupt threshold. Default is 0x00
04
LSB_sensor
7:0
LSB_sensor
Read-Only data register that contains the least significant byte of the
latest sensor reading
05
MSB_sensor
7:0
MSB_sensor
Read-Only data register that contains the most significant byte of the
latest sensor reading
06
LSB_timer
7:0
LSB_timer
Read-Only data register that contains the least significant byte of the
timer counter value corresponding to the latest sensor reading.
07
MSB_timer
7:0
MSB_timer
Read-Only data register that contains the most significant byte of the
timer counter value corresponding to the latest sensor reading.
7
FN6221.1
November 17, 2011
ISL29004
d
TABLE 2. WRITE ONLY REGISTERS
ADDRESS
REGISTER
NAME
FUNCTIONS/
DESCRIPTION
b1xxx_xxxx
sync_iic
Writing a logic 1 to this address bit ends
the current adc-integration and starts
another. Used only with External Timing
Mode.
bx1xx_xxxx
clar_int
Writing a logic 1 to this address bit
clears the interrupt.
Command Register 00(hex)
The Read/Write command register has five functions:
(1) Enable; Bit 7.This function either resets the ADC or
enables the ADC in normal operation. A logic 0 disables
ADC to reset-mode. A logic 1 enables adc to normal
operation.
TABLE 3. ENABLE
BIT 7
OPERATION
0
Disable ADC-core to reset-mode (default)
1
Enable ADC-core to normal operation
Mode3 is a sequential Mode0 and Mode1 with an internal
subtract function (Diode1 - Diode2).
TABLE 6. PHOTODIODE SELECT MODE; BITS 2 AND 3
BITS 3:2
MODE
0:0
Mode0. ADC integrates or converts Diode1 only. Current
is converted to an n-bit unsigned data.*
0:1
Mode1. ADC integrates or coverts Diode2 only. Current is
converted to an n-bit unsigned data.*
1:0
MODE3. A sequential Mode0 then Mode1 operation. The
difference current is an (n-1) signed data.*
1:1
No operation.
* n = 4, 8, 12,16 depending on the number of clock cycles
function.
(5) Width; Bits 1 and 0. This function determines the number
of clock cycles per conversion. Changing the number of
clock cycles does more than just change the resolution of
the device. It also changes the integration time, which is the
period the device’s analog-to-digital (A/D) converter samples
the photodiode current signal for a Lux measurement.
TABLE 7. WIDTH
(2) AdcPD; Bit 6. This function puts the device in a power
down mode. A logic 0 puts the device in normal operation. A
logic 1 powers down the device.
BITS 1:0
TABLE 4. adcPD
BIT 6
OPERATION
0
Normal operation (default)
1
Power Down
NUMBER OF CLOCK CYCLES
0:0
2^16 = 65,536
0:1
2^12 = 4,096
1:0
2^8 = 256
1:1
2^4 = 16
Control Register 01(hex)
The Read/Write control register has three functions:
(3) Timing Mode; Bit 5. This function determines whether the
integration time is done internally or externally. In Internal
Timing Mode, integration time is determined by an internal
dual speed oscillator (fosc), and the n-bit (n = 4, 8, 12,16)
counter inside the ADC. In External Timing Mode, integration
time is determined by the time between two consecutive
external-sync sync_iic pules commands.
TABLE 5. TIMING MODE
BIT 5
OPERATION
0
Internal Timing Mode. Integration time is internally
timed determined by fosc, REXT, and number of clock
cycles.
1
External Timing Mode. Integration time is externally
timed by the I2C host.
(4) Photodiode Select Mode; Bits 3 and 2. This function
controls the mux attached to the two photodiodes. At Mode0,
the mux directs the current of Diode1 to the ADC. At Mode1,
the mux directs the current of Diode2 only to the ADC.
8
(1) Interrupt flag; Bit 5. This is the status bit of the interrupt.
The bit is set to logic high when the interrupt thresholds have
been triggered, and logic low when not yet triggered. Writing
a logic low clears/resets the status bit.
TABLE 8. INTERRUPT FLAG
BIT 5
OPERATION
0
Interrupt is cleared or not triggered yet
1
Interrupt is triggered
(2) Range/Gain; Bits 3 and 2. The Full Scale Range can be
adjusted by an external resistor Rext and/or it can be
adjusted via I2C using the Gain/Range funtion. Gain/Range
has four possible values, Range(k) where k is 1 through 4.
Table 9 lists the possible values of Range(k) and the
resulting FSR for some typical value REXT resistors. When
Gain/Range is set to Range1 or Range2, the fosc runs at
327kHz. When Gain/Range is set to Range3 or Range4 fosc
runs at twice the rate at 655kHz. The automatic fosc
adjustment feature improves signal-to-noise ratio for low Lux
measurements.
FN6221.1
November 17, 2011
ISL29004
TABLE 9. RANGE/GAIN TYPICAL FSR LUX RANGES
FSR LUX
FSR LUX
FSR LUX
RANGE@
RANGE@
RANGE@
BITS
3:2 k RANGE(k) REXT = 100k REXT = 50k REXT = 500k
TABLE 11. DATA REGISTERS
ADDRESS
(hex)
CONTENTS
04
Least-significant byte of most recent sensor reading.
0:0
1
973
973
1946
195
05
Most-significant byte of most recent sensor reading.
0:1
2
3892
3892
7784
778
06
1:0
3
15,568
15,568
31,136
3114
Least-significant byte of timer counter value
corresponding to most recent sensor reading.
1:1
4
62,272
62,272
124,544
12,454
07
Most-significant byte of timer counter value
corresponding to most recent sensor reading.
Interrupt persist; Bits 1 and 0. The interrupt pin and the
interrupt flag is triggered/set when the data sensor reading is
out of the interrupt threshold window after m consecutive
number of integration cycles. The interrupt persist bits
determine m.
TABLE 10. INTERRUPT PERSIST
BITS 1:0
NUMBER OF INTEGRATION CYCLES
0:0
1
0:1
4
1:0
8
1:1
16
Interrupt Threshold HI Register 02(hex)
This register sets the the HI threshold for the interrupt pin
and the interrupt flag. By default the Interrupt threshold HI is
FF(hex). The 8-bit data written to the register represents the
upper MSB of a 16-bit value. The LSB is always 00(hex).
Interrupt Threshold LO Register 03(hex)
This register sets the the LO threshold for the interrupt pin
and the interrupt flag. By default the Interrupt threshold LO is
00(hex). The 8-bit data written to the register represents the
upper MSB of a 16-bit value. The LSB is always 00(hex).
Sensor Data Register 04(hex) and 05(hex)
When the device is configured to output a 16-bit data, the
most significant byte is accessed at 04(hex), and the least
significant byte can be accessed at 05(hex). The sensor data
register is refreshed after very integration cycle.
Timer Data Register 06(hex) and 07(hex)
Note that the timer counter value is only available when
using the External Timing Mode. The 06(hex) and 07(hex)
are the LSB and MSB respectively of a 16-bit timer counter
value corresponding to the most recent sensor reading.
Each clock cycle increments the counter. At the end of each
integration period, the value of this counter is made available
over the I2C. This value can be used to eliminate noise
introduced by slight timing errors caused by imprecise
external timing. Microcontrollers, for example, often cannot
provide high-accuracy command-to-command timing, and
the timer counter value can be used to eliminate the
resulting noise.
9
Calculating Lux
The ISL29004’s output codes, DATA, are directly
proportional to Lux.
(EQ. 1)
E = α × DATA
The proportionality constant α is determined by the Full
Scale Range, FSR, and the n-bit ADC which is user defined
in the command register. The proportionality constant can
also be viewed as the resolution; The smallest Lux
measurement the device can measure is α.
FSR
α = -----------n
2
(EQ. 2)
Full Scale Range, FSR, is determined by the software
programmable Range/Gain, Range(k), in the command
register and an external scaling resistor REXT which is
referenced to 100kΩ.
(EQ. 3)
100kΩ
FSR = Range ( k ) × -----------------R EXT
The transfer function effectively for each timing mode
becomes:
INTERNAL TIMING MODE
100kΩ
Range ( k ) × -----------------R EXT
E = ---------------------------------------------------- × DATA
n
2
(EQ. 4)
EXTERNAL TIMING MODE
100kΩ
Range ( k ) × -----------------R EXT
E = ---------------------------------------------------- × DATA
COUNTER
(EQ. 5)
n = 4, 8, 12, or 16. This is the number of clock cycles
programmed in the command register.
Range(k) is the user defined range in the Gain/Range bit
in the command register.
REXT is an external scaling resistor hardwired to the REXT
pin.
DATA is the output sensor reading in number of counts
available at the data register.
2n represents the maximum number of counts possible in
Internal Timing Mode. For the External Timing Mode the
FN6221.1
November 17, 2011
ISL29004
maximum number of counts is stored in the data register
named COUNTER
constant is referenced to fixed constants 100kΩ and
655kHz:
COUNTER is the number increments accrued for between
integration time for External Timing Mode.
1 100kΩ
fosc1 = --- × ------------------ × 655 kHz
2 R EXT
Gain/Range, Range(k)
The Gain/Range can be programmed in the control register
to give Range (k) determining the FSR. Note that Range(k)
is not the FSR. See Equation 3. Range(k) provides four
constants depending on programmed k that will be scaled by
REXT. See Table 9. Unlike REXT, Range(k) dynamically
adjusts the FSR. This function is especially useful when light
conditions are varying drastically while maintaining excellent
resolution.
Number of Clock Cycles, n-bit ADC
The number of clock cycles determines “n” in the n-bit ADC; 2n
clock cycles is a n-bit ADC. n is programmable in the command
register in the width function. Depending on the application, a
good balance of speed, and resolution has to be considered
when deciding for n. For fast and quick measurement, choose
the smallest n = 4. For maximum resolution without regard of
time, choose n = 16. Table 12 compares the tradeoff between
integration time and resolution. See Equations 10 and 11 for the
relation between integration time and n. See Equation 3 for the
relation of n and resolution.
TABLE 12. RESOLUTION AND INTEGRATION TIME
SELECTION
RANGE1
fosc = 327kHz
RANGE4
fosc = 655kHz
n
TINT (ms)
RESOLUTION
LUX/COUNT
TINT
(ms)
RESOLUTION
(LUX/COUNT)
16
200
0.01
100
1
12
12.8
0.24
6.4
16
8
0.8
3.90
0.4
250
4
0.05
62.5
0.025
4000
REXT = 100kΩ
External Scaling Resistor REXT and fosc
The ISL29004 use an external resistor REXT to fix its
internal oscillator frequency, fosc. Consequently, REXT
determines the fosc, integration time and the FSR of the
device. Fosc, a dual speed mode oscillator, is inversely
proportional to REXT. For user simplicity, the proportionality
(EQ. 6)
100kΩ
fosc2 = ------------------ × 655 kHz
R EXT
(EQ. 7)
fosc1 is oscillator frequency when Range1 or Range2 are
set. This is nominally 327kHz when REXT is 100kΩ.
fosc2 is the oscillator frequency when Range3 or Range4
are set. This is nominally 655kHz when REXT is 100kΩ.
When the Range/Gain bits are set to Range1 or Range2,
fosc runs at half speed comapred to when Range/Gain bits
are set to Range3 and Range4.
(EQ. 8)
1
f osc 1 = --- ( f osc 2 )
2
The automatic fosc adjustment feature allows significant
improvement of signal-to-noise ratio when detecting very low
Lux signals.
Integration Time or Conversion Time
Integration time is the period during which the device’s
analog-to-digital ADC converter samples the photodiode
current signal for a Lux measurement. Integration time, in
other words, is the time to complete the conversion of analog
photodiode current into a digital signal-number of counts.
Integration time affects the measurement resolution. For
better resolution, use a longer integration time. For short and
fast conversions use a shorter integration time.
The ISL29004 offer user flexibility in the integration time to
balance resolution, speed and noise rejection. Integration time
can be set internally or externally and can be programmed in
the command register 00(hex) bit 5.
INTEGRATION TIME IN INTERNAL TIMING MODE
This timing mode is programmed in the command register
00(hex) bit 5. Most applications will be using this timing
mode. When using the Internal Timing Mode, fosc and n-bits
resolution determine the integration time. Tint is a function of
the number of clock cycles and fosc.
n
1
T int = 2 × ------------- For Internal Timing Mode Only
f
osc
(EQ. 9)
n = 4, 8, 12, and16. n is the number of bits of resolution.
2n therefore is the number of clock cycles. n can be
programmed at the command register 00(hex) bits 1 and 0.
10
FN6221.1
November 17, 2011
ISL29004
Since fosc is dual speed depending on the Gain/Range bit,
Tint is dual time. The integration time as a function of REXT
and n is:
R EXT
n
T int 1 = 2 × ---------------------------------------------327kHz × 100kΩ
(EQ. 10)
Tint1 is the integration time when the the device is
configured for Internal Timing Mode and Gain/Range is set
to Range1 or Range2.
R EXT
n
T int 2 = 2 × ---------------------------------------------655kHz × 100kΩ
(EQ. 11)
The internal oscillator, fOSC, operates identically in both the
internal and external timing modes, with the same
dependence on REXT. However, in External Timing Mode,
the number of clock cycles per integration is no longer fixed
at 2n. The number of clock cycles varies with the chosen
integration time, and is limited to 216 = 65,536. In order to
avoid erroneous Lux readings the integration time must be
short enough not to allow an overflow in the counter register.
65,535
T int < -----------------f OSC
fosc = 327kHz*100kΩ/REXT. When Range/Gain is set to
Range1 or Range2.
Tint2 is the integration time when the the device is
configured for Internal Timing Mode and Gain/Range is set
to Range3 or Range4.
fosc = 655kHz*100kΩ/REXT. When Range/Gain is set to
Range3 or Range4.
TABLE 13. INTEGRATION TIMES FOR TYPICAL REXT VALUES
REXT
(kΩ)
RANGE1
RANGE2
n = 16-BIT
RANGE3
RANGE4
n = 12-BIT
n = 12-BIT
n=4
50
100
6.4
13
0.013
100**
200
13
26
0.025
200
400
26
52
0.050
500
1000
64
128
0.125
*Integration time in milliseconds
**Recommended REXT resistor value
Noise Rejection
In general, integrating type ADC’s have an excellent noiserejection characteristics for periodic noise sources whose
frequency is an integer multiple of the integration time. For
instance, a 60Hz AC unwanted signal’s sum from 0ms to
k*16.66ms (k = 1,2...ki) is zero. Similarly, setting the device’s
integration time to be an integer multiple of the periodic
noise signal, greatly improves the light sensor output signal
in the presence of noise.
Design Example 1
INTEGRATION TIME IN EXTERNAL TIMING MODE
This timing mode is programmed in the command register
00(hex) bit 5. External Timing Mode is recommended when
integration time can be synchronized to an external signal
such as a PWM to eliminate noise.
For Mode0 or Mode1 operation, the integration starts when
the sync_iic command is sent over the I2C lines. The device
needs two sync_iic commands to complete a photodiode
conversion. The integration then stops when another
sync_iic command is received. Writing a logic 1 to the
sync_iic bit ends the current adc integration and starts
another one.
For Mode3, the operation is a sequential Mode0 and Mode1.
The device needs three sync_iic commands to complete two
photodiode measurments. The 1st sync_iic command starts
the conversion of the diode1. The 2nd sync_iic completes the
conversion of diode1 and starts the conversion of diode2. The
3rd sync_iic pules ends the conversion of diode2 and starts
over again to commence conversion of diode1.
The integration time, Tint, is determined by the following
equation:
i I2C
T int = ---------f I2C
(EQ. 12)
The ISl29004 will be designed in a portable system. The
ambient light conditions that the device will be exposed to is
at most 500Lux which is a good office lighting. The light
source has a 50/60Hz power line noise which is not visible
by the human eye. The I2C clock is 10kHz.
Solution 1 - Using Internal Timing Mode
In order to achieve both 60Hz and 50Hz AC noise rejection,
the integration time needs to be adjusted to coincide with an
integer multiple of the AC noise cycle times.
Tint = i(1/60Hz) = j(1/50Hz).
The first instance of integer values at which Tint rejects both
60Hz and 50Hz is when i = 6, and j= 5.
Tint = 6(1/60Hz) = 5(1/50Hz)
Tint = 100ms
Next, the Gain/Range needs to be determined. Based on the
application condition given, Lux(max) = 500Lux, a range of
1000Lux is desirable. This corresponds to a Gain/Range
Range1 mode. Also impose a resolution of n = 16-bit. Hence
we choose equation 10 to determine REXT.
T
× 327kHz × 100 kΩ
int
R EXT = ----------------------------------------------------------------n
2
R
iI2C is the number of I2C clock cycles to obtain the Tint.
fI2C is the I2C operating frequency
11
(EQ. 13)
EXT
(EQ. 14)
= 50kΩ
for Internal Timing Mode and Gain/Range is set to Range3 or Range
FN6221.1
November 17, 2011
ISL29004
The Full Scale Range, FSR, needs to be determined. From
Equation 3:
TABLE 15. SOLUTION2 SUMMARY TO EXAMPLE DESIGN
PROBLEM
100kΩ
FSR = 1000Lux -----------------50kΩ
DESIGN PARAMETER
VALUE
Tint
100ms
REXT
100kΩ
Gain/Range Mode
Range1 = 1000Lux
FSR
1000Lux
# of clock cycles
COUNTER = 1000
FSR = 2000Lux
The effective transfer function becomes:
data
E = ------------- × 2000Lux
16
2
TABLE 14. SOLUTION1 SUMMARY TO EXAMPLE DESIGN
PROBLEM
DESIGN PARAMETER
VALUE
Tint
100ms
REXT
50kΩ
Gain/Range Mode
Range1 = 1000Lux
FSR
2000Lux
# of clock cycles
216
Transfer Function
DATA
E = ----------------- × 2000Lux
16
2
Solution 2 - Using External Timing Mode
From solution 1, the desired integration time is 100ms. Note
that the REXT resistor only determines the inter oscillator
frequency when using external timing mode. Instead the
integration time is the time between two sync_iic commands
sent through the I2C. The programmer determines how
many I2C clock cycles to wait between two external timing
commands.
iI2C = fI2C * Tint = number of I2C clock cycles
iI2C = 10kHz *100ms
iI2C = 1,000 I2C clock cycles. An external sync_iic command
sent 1,000 cycles after another sync_iic command rejects
both 60Hz and 50Hz AC noise signals.
Next is to pick an arbitrary REXT = 100kΩ and to choose the
Gain/Range Mode. For a maximum 500Lux, Range1 is
adequate. From Equation 3:
100kΩ
FSR = 1000lux -----------------100kΩ
FSR = 1000Lux
The effective transfer function becomes:
DATA
E = -------------------------------- × 1000Lux
COUNTER
DATA is the sensor reading data located in data registers
04(hex) and 05(hex)
Transfer Function
DATA
E = -------------------------------- × 1000Lux
COUNTER
Light Source Detection and Infra-Red Rejection
Any filament type light source has a high presence of infrared
component invisible to the human eye. A white fluorescent
lamp, on the other hand has a low IR content. As a result,
output sensitivity may vary depending on the light source.
Maximum attenuation of IR can be achieved by properly
scaling the readings of Diode1 and Diode2. The user obtains
data reading from sensor diode 1, D1, which is sensitive to
visible and IR, then reading from sensor diode 2, D2 which is
mostly sensitive from IR. The graph on Figure 6 shows the
effective spectral response after applying Equation 15 of the
ISL29003 from 400nm to 1000nm. The equation below
describes the method of cancelling IR in internal timing mode.
D3 = n ( D1 – kD2 )
(EQ. 15)
Where:
D3 = Lux amount in number of counts less IR presence
D1 = data reading of Diode 1
D2 = data reading of Diode 2
n = 1.355. This is a fudge factor to scale back the sensitivity
up to ensure Equation 4 is valid.
k = 3.355. This is a scaling factor for the IR sensitive
Diode 2.
Flat Window Lens Design
A window lens will surely limit the viewing angle of the
ISL29004. The window lens should be placed directly on top
of the device. The thickness of the lens should be kept at
minimum to minimize loss of power due to reflection and
also to minimize loss of loss due to absorption of energy in
the plastic material. A thickness of t = 1mm is recommended
for a window lens design. The bigger the diameter of the
window lens the wider the viewing angle is of the ISL29001.
Table 16 shows the recommended dimensions of the optical
window to ensure both +35° and +45° viewing angle. These
dimensions are based on a window lens thickness of 1.0mm
and a refractive index of 1.59.
COUNTER is the timer counter value data located in data
registers 06(hex) and 07(hex). In this sample problem,
COUNTER = 1000.
12
FN6221.1
November 17, 2011
ISL29004
Suggested PCB Footprint
WINDOW LENS
t
DTOTAL
∅
D1
Footprint pads should be a nominal 1-to-1 correspondence
with package pads. The large exposed central die-mounting
paddle in the center of the package has no electrical
connection. It is, however, recommended to have the
thermal pad soldered to GND for package reliability.
Layout Considerations
ISL29003/4
The ISL29004 is relatively insensitive to layout. Like other
I2C devices, it is intended to provide excellent performance
even in significantly noisy environments. There are only a
few considerations that will ensure best performance.
DLENS
∅ = VIEWING ANGLE
FIGURE 4. FLAT WINDOW LENS
TABLE 16. RECOMMENDED DIMENSIONS FOR A FLAT
WINDOW DESIGN
DTOTAL
D1
DLENS @ 35
VIEWING ANGLE
DLENS @ 45
VIEWING ANGLE
1.5
0.50
2.25
3.75
2.0
1.00
3.00
4.75
2.5
1.50
3.75
5.75
3.0
2.00
4.30
6.75
3.5
2.50
5.00
7.75
t=1
D1
DLENS
DTOTAL
Thickness of lens
Distance between ISL29001 and inner edge of lens
Diameter of lens
Distance constraint between the ISL29001 and lens
outer edge
Route the supply and I2C traces as far as possible from all
sources of noise. Use two power-supply decoupling
capacitors, 4.7µF and 0.1µF, placed close to the device.
Typical Circuit
A typical application for the ISL29004 is shown in Figure 6.
Additional I2C address select pins A0 and A1 are available
for the ISL29004 so a maximum of four ISL29004 devices
can be tied on the same I2C bus line.
Soldering Considerations
Convection heating is recommended for reflow soldering;
direct-infrared heating is not recommended. The ISL29004’s
plastic ODFN package does not require a custom reflow
soldering profile, and is qualified up to +260°C. A standard
reflow soldering profile with a +260°C maximum is
recommended.
Special Handling
ODFN8 is rated as JEDEC moisture level 4. Standard
JEDEC Level 4 procedure should be followed: 72hr floor life
at less than +30°C 60% RH. When baking the device, the
temperature required is +110°C or less due to its special
molding compound.
* All dimensions are in mm.
Dimensions in mm
FIGURE 5. SUGGESTED PCB FOOTPRINT
13
FN6221.1
November 17, 2011
ISL29004
I2C MASTER
MICROCONTROLLER
SDA
SCL
R1
10K
R2
10K
I2C SLAVE_44
VDD
I2C SLAVE_45
VDD
C1
VDD
1
0.1uF
VDD
0.1uF
2
REXT1
GND
3
REXT
100K
4
INT
A0
2
REXT2
6
GND
3
REXT
100K
5
A1
1
VDD
SDA
8
1
0.1uF
7
SCL
C4
8
SDA
4
A0
ISL29004
6
INT
2
REXT3
3
RES1
5
A1
VDD
SDA
8
0.1uF
7
SCL
I2C SLAVE_47
VDD
C3
8
SDA
I2C SLAVE_46
VDD
C2
1
4
ISL29004
GND
SCL
REXT
INT
A0
A1
7
2
REXT4
6
3
RES1
5
4
ISL29004
GND
SCL
REXT
INT
A0
A1
7
6
5
ISL29004
FIGURE 6. ISL29004 TYPICAL CIRCUIT
14
D3 = n(D1 - kD2)
n = 1.3, k = 3.355
D3 EFFECTIVE
RESPONSE
NUMBER OF COUNTS
100
90
80
70
60
50
40
30
20
10
0
300
D1 NORMALIZED
D2
NORMALIZED
400
500
600
700
800
WAVELENGTH (nm)
900
1000
1100
11
40k
10
30k
D1
9
D2
20k
8
7
20k
10k
1k
2k
3k
4k
5k
6k
7k
D2
8k
9k
14
13
12
11
10
9
8
7
6
5
4
3
2
10k
LUMINANCE (LUX)
FIGURE 9. D1 AND D2 HALOGEN LIGHT SOURCE RESPONSE
14
2k
3k
4k
5k
6k
7k
LUMINANCE (LUX)
8k
9k
6
10k
60k SUNLIGHT SOURCE
RANGE3
50k
D1
40k
30k
D2
20k
10k
0
0
1k
2k
3k
4k
5k
6k
7k
8k
15
14
13
12
11
10
9
8
7
6
5
4
3
2
10k
D1/D2 RATIO
30k
1k
FIGURE 8. D1 AND D2 FLUORESCENT LIGHT SOURCE
RESPONSE
D1/D2 RATIO
NUMBER OF COUNTS
D1
40k
0
12
50k
-
NUMBER OF COUNTS
HALOGEN LIGHT SOURCE
RANGE3
50k
0
13
10k
FIGURE 7. SPECTRAL RESPONSE
60k
FLUORESCENT LIGHT SOURCE
RANGE3
60k
D1/D2 RATIO
NORMALIZED RESPONSE (%)
Typical Performance Curves (REXT = 100kΩ)
9k
LUMINANCE (LUX)
FIGURE 10. D1 AND D2 SUNLIGHT RESPONSE
FN6221.1
November 17, 2011
ISL29004
Typical Performance Curves (REXT = 100kΩ)
D1
INCANDESCENT BULB
RANGE3
50k
40k
D2
30k
20k
10k
-
-
1k
2k
3k
4k
5k
6k
7k
8k
9k
15
14
13
12
11
10
9
8
7
6
5
4
3
2
10k
RADIATION PATTERN
D1/D2 RATIO
NUMBER OF COUNTS
60k
(Continued)
LUMINOSITY
ANGLE
LUMINANCE (LUX)
RELATIVE SENSITIVITY
FIGURE 11. D1 AND D2 INCANDESCENT LIGHT SOURCE
RESPONSE
FIGURE 12. RADIATION PATTERN
10
320
OUTPUT CODE (COUNTS)
SUPPLY CURRENT (µA)
TA = +27°C
COMMAND = 00H
306
5000 LUX
292
278
200 LUX
264
250
2.0
2.3
2.6
2.9
3.2
3.5
8
TA = +27°C
COMMAND = 00H
0 LUX
6
4
2
0
2.0
3.8
RANGE 2
2.3
2.6
SUPPLY VOLTAGE (V)
FIGURE 13. SUPPLY CURRENT vs SUPPLY VOLTAGE
3.5
3.8
320.0
1.010
5000 LUX
TA = +27°C
COMMAND = 00H
0 LUX
OSCILLATOR FREQUENCY (kHz)
OUTPUT CODE RATIO (% FROM 3V)
3.2
FIGURE 14. OUTPUT CODE FOR 0 LUX vs SUPPLY VOLTAGE
1.015
1.005
1.000
200 LUX
0.995
0.990
2.0
2.9
SUPPLY VOLTAGE (V)
2.3
2.6
2.9
3.2
3.5
SUPPLY VOLTAGE (V)
FIGURE 15. OUTPUT CODE vs SUPPLY VOLTAGE
15
3.8
319.5
319.0
318.5
318.0
2.0
2.3
2.6
2.9
3.2
3.5
3.8
SUPPLY VOLTAGE (V)
FIGURE 16. OSCILLATOR FREQUENCY vs SUPPLY VOLTAGE
FN6221.1
November 17, 2011
ISL29004
Typical Performance Curves (REXT = 100kΩ)
(Continued)
10
315
OUTPUT CODE (COUNTS)
SUPPLY CURRENT (µA)
VDD = 3V
COMMAND = 00H
305
5000 LUX
295
285
200 LUX
275
265
-60
-20
20
60
8
6
4
2
0
-60
100
VDD = 3V
COMMAND = 00H
0 LUX
-20
100
FIGURE 18. OUTPUT CODE FOR 0 LUX vs TEMPERATURE
FIGURE 17. SUPPLY CURRENT vs TEMPERATURE
330
1.080
VDD = 3V
COMMAND = 00H
1.048
5000 LUX
RANGE 3
1.016
200 LUX
RANGE 1
0.984
0.952
-20
20
60
TEMPERATURE (°C)
FIGURE 19. OUTPUT CODE vs TEMPERATURE
16
100
OSCILLATOR FREQUENCY (kHz)
OUTPUT CODE RATIO (% FROM +25°C)
60
TEMPERATURE (°C)
TEMPERATURE (°C)
0.920
-60
20
VDD = 3V
329
328
327
326
325
-60
-20
20
60
100
TEMPERATURE (°C)
FIGURE 20. OSCILLATOR FREQUENCY vs TEMPERATURE
FN6221.1
November 17, 2011
ISL29004
Optical Dual Flat No-Lead Family (ODFN)
MDP0052
0.10 C
2X
D
A
4
5
OPTICAL DUAL FLAT NO-LEAD FAMILY
4
MILLIMETERS
0.10 C
2X
SYMBOL
ODFN5
ODFN6
ODFN8
TOLERANCE
A
0.70
0.70
0.70
±0.05
A1
0.02
0.02
0.02
+0.03/-0.02
b
0.30
0.30
0.30
±0.05
c
0.20
0.20
0.20
Reference
D
2.00
2.00
3.00
Basic
D2
1.35
1.35
2.29
Reference
E
2.10
2.10
3.00
Basic
E2
0.65
0.65
1.40
Reference
e
0.65
0.65
0.65
Basic
e1
1.30
1.30
1.95
Basic
L
0.35
0.35
0.40
±0.05
NOTE
E
1
5
B
2
3
TOP VIEW
3
(D2)
e1
4
5
L TYP.
3 (E2)
3
2
1
PIN
#1 I.D.
b
e
0.10
3
NOTES:
1. Dimensioning and tolerancing per ASME Y14.5M-1994.
2. Exposed lead at side of package is a non-functional feature.
3. Dimension D2 and E2 define the size of the exposed pad.
4. ODFN 5 Ld version has no center lead (shown as dashed line).
3
(D2)
e1
4 5
5
6
3
(D2)
e1
7
6
8
L TYP.
L TYP.
3 (E2)
3
2
3
Rev. 5 2/07
CA B
BOTTOM VIEW
5 LD ODFN
(2.0x2.1 BODY)
3
2
(E2)
PIN
#1 I.D.
1
PIN
#1 I.D.
b
e
0.10
CA B
4
e
3
2
1
b
0.10
BOTTOM VIEW
6 LD ODFN
(2.0x2.1 BODY)
CA B
BOTTOM VIEW
8 LD ODFN
(3.0x3.0 BODY)
0.10 C
C
SEATING
PLANE
C
0.08 C
(ALL LEADS
& EXPOSED PAD)
SEE
DETAIL "X"
A
2
(C)
A1
SIDE VIEW
DETAIL X
All Intersil U.S. products are manufactured, assembled and tested utilizing ISO9000 quality systems.
Intersil Corporation’s quality certifications can be viewed at www.intersil.com/design/quality
Intersil products are sold by description only. Intersil Corporation reserves the right to make changes in circuit design, software and/or specifications at any time without
notice. Accordingly, the reader is cautioned to verify that data sheets are current before placing orders. Information furnished by Intersil is believed to be accurate and
reliable. However, no responsibility is assumed by Intersil or its subsidiaries for its use; nor for any infringements of patents or other rights of third parties which may result
from its use. No license is granted by implication or otherwise under any patent or patent rights of Intersil or its subsidiaries.
For information regarding Intersil Corporation and its products, see www.intersil.com
17
FN6221.1
November 17, 2011