Patent Publication Number: US-11020029-B2

Title: Multipurpose sensor port

Description:
REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of application Ser. No. 14/584,890, entitled “Multipurpose Sensor Port,” filed Dec. 29, 2014, which is a continuation of application Ser. No. 14/027,019, entitled “Multipurpose Sensor Port,” filed Sep. 13, 2013, which is a continuation of application Ser. No. 12/400,683, entitled “Multipurpose Sensor Port,” filed Mar. 9, 2009, and application Ser. No. 12/400,683 is a continuation of application Ser. No. 10/898,680, entitled “Multipurpose Sensor Port,” filed Jul. 23, 2004, which is now U.S. Pat. No. 7,500,950, and application Ser. No. 10/898,680 claims the benefit of U.S. Provisional Application No. 60/490,091 filed Jul. 25, 2003, entitled “Multipurpose Sensor Port.” The present application incorporates the disclosure of both of the foregoing applications herein by reference. 
    
    
     BACKGROUND OF THE INVENTION 
     A pulse oximeter is a physiological instrument that provides noninvasive measurements of arterial oxygen saturation along with pulse rate. To make these measurements, a pulse oximeter performs a spectral analysis of the pulsatile component of arterial blood so as to determine the relative concentration of oxygenated hemoglobin, the major oxygen carrying constituent of blood. Pulse oximeters provide early detection of decreases in the arterial oxygen supply, reducing the risk of accidental death and injury. As a result, these instruments have gained rapid acceptance in a wide variety of medical applications, including surgical wards, intensive care units, general wards and home care. 
       FIG. 1  illustrates a pulse oximetry system  100  having a sensor  110  and a monitor  120 . The monitor  120  may be a multi-parameter patient monitor or a standalone, portable or handheld pulse oximeter. Further, the monitor  120  may be a pulse oximeter  200 , such as an OEM printed circuit board (PCB), integrated with a host instrument including a host processor  122 , as shown. The sensor  110  attaches to a patient and receives drive current from, and provides physiological signals to, the pulse oximeter  200 . An external computer (PC)  130  may be used to communicate with the pulse oximeter  200  via the host processor  122 . In particular, the PC  130  can be used to download firmware updates to the pulse oximeter  200  via the host processor  122 , as described below. 
       FIG. 2  illustrates further detail of the pulse oximetry system  100 . The sensor  110  has emitters  112  and a detector  114 . The emitters  112  typically consist of a red light emitting diode (LED) and an infrared LED that project light through blood vessels and capillaries underneath a tissue site, such as a fingernail bed. The detector  114  is typically a photodiode positioned opposite the LEDs so as to detect the emitted light as it emerges from the tissue site. A pulse oximetry sensor is described in U.S. Pat. No. 6,088,607 entitled “Low Noise Optical Probe,” which is assigned to Masimo Corporation, Irvine, Calif. and incorporated by reference herein. 
     As shown in  FIG. 2 , the pulse oximeter  200  has a preamp  220 , signal conditioning  230 , an analog-to-digital converter (ADC)  240 , a digital signal processor (DSP)  250 , a drive controller  260  and LED drivers  270 . The drivers  270  alternately activate the emitters  112  as determined by the controller  260 . The preamp  220 , signal conditioning  230  and ADC  240  provide an analog front-end that amplifies, filters and digitizes the current generated by the detector  114 , which is proportional to the intensity of the light detected after tissue absorption in response to the emitters  112 . The DSP  250  inputs the digitized, conditioned detector signal  242  and determines oxygen saturation, which is based upon the differential absorption by arterial blood of the two wavelengths projected by the emitters  112 . Specifically, a ratio of detected red and infrared intensities is calculated by the DSP  250 , and arterial oxygen saturation values are empirically determined based upon the ratio obtained. Oxygen saturation and calculated pulse rate values are communicated to the host processor  122  for display by the monitor  120  ( FIG. 1 ). A pulse oximeter is described in U.S. Pat. No. 6,236,872 entitled “Signal Processing Apparatus,” which is assigned to Masimo Corporation, Irvine, Calif. and incorporated by reference herein. 
     Further shown in  FIG. 2 , the pulse oximeter  200  has a sensor port  210  and a communications port  280 . The sensor port  210  includes a connector and associated input and output signals and provides an analog connection to the sensor  110 . In particular, the sensor port  210  transmits a drive signal  212  to the LED emitters  112  from the LED drivers  270  and receives a physiological signal  214  from the photodiode detector  114  in response to the LED emitters  112 , as described above. The communication port  280  also includes a connector and associated input and output signals and provides a bi-directional communication path  282  between the pulse oximeter  200  and the host processor  122 . The communication path  282  allows the DSP  250  to transmit oxygen saturation and pulse rate values to the monitor  120  ( FIG. 1 ), as described above. The communication path  282  also allows the DSP firmware to be updated, as described below. 
     Additionally shown in  FIG. 2 , the pulse oximeter  200  has a micro-controller  290  and a flash memory  255 . The flash memory  255  holds the stored program or firmware that executes on the DSP  250  to compute oxygen saturation and pulse rate. The micro-controller  290  controls data transfers between the DSP  250  and the host processor  122 . In particular, to update the DSP firmware, the firmware is uploaded into the PC  130  ( FIG. 1 ), which downloads the firmware to the host processor  122 . In turn, the host processor  122  downloads the firmware to the micro-controller  290 , which downloads it to the DSP  250 . Finally, the DSP  250  writes the firmware to the flash memory  255 . 
     SUMMARY OF THE INVENTION 
     To update the firmware in a pulse oximeter, particularly firmware on an OEM PCB integrated into a host instrument, requires a circuitous path using multiple protocols and multiple processors developed by different companies. Some of the protocols and processor interfaces are non-standard, requiring custom programming for different instruments. This is particularly problematic when the instruments are part of an installed base at various medical facilities. Further, some pulse oximeter products, such as handheld products, may not have a communications port for connecting to an external computer, and firmware upgrades would typically require returning the instrument to the factory. 
     Every pulse oximeter has a sensor port, which provides access to a DSP via one or more signal paths. Therefore, it is desirable to utilize a sensor port for downloading pulse oximetry firmware to the DSP. It is also desirable to provide this sensor port capability in existing instruments without hardware modification. Utilizing a sensor port in this manner would alleviate an instrument manufacturer from having to provide download communication capability between a host processor and an OEM PCB and would allow easy field upgrades of all instruments, including handhelds. 
     One aspect of a multipurpose sensor port is a physiological measurement method comprising a sensor port adapted to connect with an analog sensor, and a digital data source connected to the sensor port. An identifier associated with said data source is read, where the identifier is indicative that the data source is connected to the sensor port in lieu of the analog sensor. Digital data is then received over the sensor port. In one embodiment, the digital data is compiled in a signal processor. Where the digital data are instructions executable by the signal processor, the data may then be written from the signal processor into a firmware memory. The instructions may be uploaded to a PC, which is attached to a PC interface that is attached to the sensor port. Alternatively, the instructions are stored into a nonvolatile memory that is in communications with the sensor port. In another embodiment, the digital data is processed as a physiological signal. 
     Another aspect of a multipurpose sensor port is a physiological measurement system having a sensor port adapted to connect to a sensor and a data source. A reader is configured to identify which of the sensor and the data source is connected to the sensor port. A data path is configured to communicate an analog signal associated with the sensor and digital data associated with the data source to a signal processor according to the reader. In one embodiment, a firmware memory is configured to provide instructions to the signal processor. The signal processor is programmed to download the instructions from the data source and store the instructions in the memory. The instructions are executable by the signal processor so as to extract a physiological measurement from the analog signal. The data source may be a PC interfaced to the sensor port, where the instructions are uploaded to the PC. Alternatively, the data source is a nonvolatile memory adapted to communicate with the sensor port, where the instructions being stored in a nonvolatile memory. 
     In another embodiment, a first physiological measurement is derivable by the signal processor from the analog signal, and a second physiological measurement is derivable by the signal processor from the digital data. In yet another embodiment, a drive path is configured to communicate stored data associated with a physiological measurement to a digital device connected to the sensor port. The stored data may be trend data and/or log data maintained in memory that can be accessed by the signal processor. In a further embodiment, a drive path is configured to communicate acknowledgement data in conjunction with the communication of the digital data. 
     Yet another aspect of a multipurpose sensor port is a physiological measurement method where a drive path is provided that is adapted to activate emitters so as to transmit optical radiation through a fleshy medium having flowing blood. A signal path is provided that is adapted to communicate a detector response to the optical radiation after attenuation by the fleshy medium, where the response is indicative of optical characteristics of the flowing blood. Output digital data is transmitted over at least a portion of the drive path. In one embodiment, the output digital data is read from a memory having trend data and/or log data. In another embodiment, input digital data is received over at least a portion of the signal path, and receipt of that input digital data is acknowledged with the output digital data. In a particular embodiment, the input digital data is stored for use as signal processing instructions. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a general block diagram of a prior art pulse oximeter system utilizing an OEM printed circuit board (PCB); 
         FIG. 2  is a detailed block diagram of a prior art pulse oximeter system; 
         FIGS. 3A-D  are general block diagrams of a multipurpose sensor port connected to an analog sensor, a digital data source, or both; 
         FIG. 4  is a general block diagram of a multipurpose sensor port having various digital data source inputs; 
         FIG. 5  is a block diagram of a multipurpose sensor port configured to download pulse oximeter firmware; 
         FIG. 6  is a DSP firmware memory map; 
         FIG. 7  is a detailed block diagram of a multipurpose sensor port embodiment and associated signal and data paths; 
         FIG. 8  is a flowchart of a digital data receiver routine; and 
         FIGS. 9A-B  is a schematic of a RS232 interface for a multipurpose sensor port. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Overview 
       FIGS. 3A-B  illustrate a pulse oximeter  300  having a multipurpose sensor port  301  connected to an analog sensor  310  and a digital data source  320 , respectively. As shown in  FIG. 3A , if the pulse oximeter  300  determines that an analog sensor  310  is attached to the multipurpose sensor port  301 , the multipurpose sensor port  301  is operated in an analog mode and functions as a typical sensor port, described above. As shown in  FIG. 3B , if the pulse oximeter  300  determines that a digital data source  320  is attached to the multipurpose sensor port  301 , the multipurpose sensor port  301  is operated in a digital mode and functions as a digital communications device. The data source  320  may connect to a sensor port interface  330  which, in turn, connects to the sensor port  301 . The sensor port interface  330  may be used, for example, to present a standard communications interface, such as RS-232, to the data source  320 . In one embodiment, when the pulse oximeter  300  is powered up, it reads an information element or other means of identification (ID) for the device connected to the sensor port  301 . The ID identifies the device as either an analog sensor  310  or a data source  320 . A sensor information element is described in U.S. Pat. No. 6,397,091 entitled “Manual and Automatic Probe Calibration,” which is assigned to Masimo Corporation, Irvine, Calif. and incorporated by reference herein. 
       FIG. 3C  illustrates a sensor port embodiment where a resistor value is a device ID. A resistor  303  is located in a device  302 , which includes a sensor  310  ( FIG. 3A ), data source  320  ( FIG. 3B ) or interface  330  ( FIG. 3B ). The sensor port  301  has a reader  304  that measures the resistor value. The reader  304  includes a voltage source  305  and a current measurement device  307 , such as a current-to-voltage converter. The voltage source  305  has a known voltage, which is applied to the resistor  303  when the device  302  is connected to the sensor port  301 . The current measurement device  307  senses the magnitude of the resulting current flowing through the resistor  303  so as to determine the resistor value and, hence, the device ID. 
       FIG. 3D  illustrates a pulse oximeter  300  having an analog sensor  310 , a digital data source  320  and a switch  360  connected to a multipurpose sensor port  301 . If the pulse oximeter  300  reads an ID that identifies mixed analog and digital, then the multipurpose sensor port  301  functions to transfer either an analog signal or digital data, as determined by the switch  360 . The state of the switch  360  may be determined by the data source  320 , the pulse oximeter  300  or both. In one embodiment, the pulse oximeter  300  transmits an identifiable waveform over an LED drive path  510  ( FIG. 5 ) that is recognized by the switch  360  as a change state command. In this manner, the pulse oximeter  300  may occasionally receive digital data from, or transmit digital data to, the data source  320 . 
     Applications 
       FIG. 4  illustrates various digital data source  320  and sensor port interfaces  330  that connect to a multipurpose sensor port  301 . In one application, a preprogrammed module  405  connects directly to the sensor port  301 . The module  405  has nonvolatile memory preprogrammed with, for example, upgrade firmware for the pulse oximeter  300 . The module  405  also has the associated electronics to readout the memory data and communicate that data to the sensor port  301 . In particular, the module  405  provides mechanical, signal level, and communication protocol compliance with the sensor port  301 . 
     As shown in  FIG. 4 , in another application, a PC  410  connects to the sensor port  301  via a PC interface  450 . For example, the PC  410  can be used to download firmware to the pulse oximeter  300 , as described with respect to  FIG. 5 , below. As another example, the PC  410  can be used to upload information from the pulse oximeter  300 , as described with respect to  FIG. 6 , below. In one embodiment, the PC interface  450  provides mechanical and signal level compliance with RS-232 on the PC side and mechanical and signal level compliance with the sensor port  301  on the pulse oximeter side, as described with respect to  FIGS. 9A-B , below. 
     Also shown in  FIG. 4 , a physiological sensor  420  other than a conventional pulse oximeter sensor is attached to the multipurpose sensor port  301 . A physiological sensor interface  460  drives the physiological sensor  420  and generates raw digital data to the sensor port  301 . In this manner, a pulse oximeter  300  can be advantageously extended to provide physiological measurements in addition to oxygen saturation and pulse rate. 
     Further shown in  FIG. 4 , a wireless data device  430  is attached to the multipurpose sensor port  301  via a wireless interface  470 . In this manner, the pulse oximeter can be advantageously extended to wireless data I/O and wireless networks. In one embodiment, the wireless interface  470  provides mechanical and signal level compliance with a wireless standard, such as IEEE-802.11, on one side and mechanical and signal level compliance with the sensor port  301  on the pulse oximeter side. 
     Additionally shown in  FIG. 4 , networked digital I/O devices  440  are attached to the multipurpose sensor port  301  via a network interface  480 . In one embodiment, the network interface  480  provides mechanical and signal level compliance with a network standard, such as Ethernet, on one side and mechanical and signal level compliance with the sensor port  301  on the pulse oximeter side. 
     Firmware Upgrade Port 
       FIG. 5  illustrates a multipurpose sensor port  301  configured to download pulse oximeter firmware  501 . The firmware  501  is uploaded to a PC  410  and downloaded over a standard communications bus  503  to a target pulse oximeter  300 . The standard bus  503  may be, for example, RS-232, IEEE-488, SCSI, IEEE-1394 (FireWire), and USB, to name just a few. A PC interface  450  translates the signal levels on the sensor port  301  to the signal levels of the standard bus  503 , and vice-a-versa. In particular, an output signal on the standard bus  503  is translated to a sensor port input signal  522 , and a sensor port output signal  512  is translated to an input signal on the standard bus  503 . 
     As shown in  FIG. 5 , the pulse oximeter  300  has a detector signal path  520 , a DSP  530 , a flash memory  540  or other nonvolatile memory and a LED drive path  510 , such as described with respect to  FIG. 2 , above. Data transmitted from the PC  410  is carried on the sensor port input  522 , over the detector signal path  520  to the DSP  530 , which loads the data into a flash memory  540 . Acknowledgement data is transmitted from the DSP  530 , over the LED drive path  510 , and is carried on the sensor port output  512 . 
       FIG. 6  illustrates a memory map  600  for the DSP flash memory  540  ( FIG. 5 ). The memory map  600  illustrates partitions for DSP executable instructions such as boot firmware  610 , signal processing firmware  620  and sensor port communications firmware  630  in addition to application data  640 . The boot firmware  610  executes upon DSP power-up. The boot firmware  610  initializes the DSP and loads either the signal processing firmware  620  or the communications firmware  630  into DSP program memory, depending on the device ID, as described with respect to  FIGS. 3A-D , above. The signal processing firmware  620  contains the oxygen saturation and pulse rate measurement algorithms, referred to with respect to  FIGS. 1-2 , above. The communications firmware  630  contains communications protocol algorithms, such as described with respect to  FIG. 8 , below. After completing its task of downloading firmware and/or uploading the applications data  640 , the communications firmware  630  loads the signal processing firmware  620  so that the DSP can perform pulse oximetry measurements. 
     Also shown in  FIG. 6 , the application data  640  includes trend data  632 , operational logs  634  and manufacturer&#39;s logs  638 , which can be advantageously uploaded to a PC  410  ( FIG. 5 ) or other digital device connected to the sensor port  301  ( FIG. 5 ). Trend data  632  contains oxygen saturation and pulse rate measurement history. Operational logs  634  contain, for example, failure codes and event information. Failure codes indicate, for example, pulse oximeter board failures and host failures. Event information includes alarm data, such as the occurrence of probe off and low saturation events. Manufacturer&#39;s logs  638  contains, for example, service information. 
       FIG. 7  illustrates a multipurpose sensor port embodiment  301  incorporating an LED drive path  510 , a detector signal path  520  and a DSP  530 , which function generally as described with respect to  FIG. 5 , above. The LED drive path  510  has a shift register  710 , a red LED drive  720  and an IR LED drive  730 . The shift register  710  has a data input  712 , a red control output  714  and an IR control output  718 . The DSP  530  provides serial control data on the shift register input  712  that is latched to the shift register outputs  714 ,  718  so as to turn on and off the LED drives  720 ,  730  according to a predetermined sequence of red on, IR on and dark periods. The detector signal path  520  has a preamp  740 , signal conditioning  750  and an ADC  760  that perform amplification, filtering and digitization of the detector signal  522 . The detector signal path  520  also has a comparator  770  that compares the preamp output  742  to a fixed voltage level and provides an interrupt output  774  to the DSP  530  accordingly. The comparator  770  allows the DSP to control the preamp voltage as a function of the level of the preamp signal output  742 , as described in U.S. patent application Ser. No. 10/351,961 entitled “Power Supply Rail Controller,” filed Jan. 24, 2003, which is assigned to Masimo Corporation, Irvine, Calif. and incorporated by reference herein. Advantageously, the comparator signal path also allows the DSP to accept serial digital data, as described with respect to  FIG. 8 , below. 
       FIG. 8  illustrates a serial data receiver  800  embodiment of one aspect of the communications firmware  630  ( FIG. 6 ). The data receiver  800  utilizes the detector signal path  520  ( FIG. 7 ) described above. A DSP internal timer is initialized to generate an interrupt at the incoming data baud rate. The timer interrupt periodically starts the data receiver  800  to determine and store a single bit. The data receiver  800  polls the status of the DSP interrupt input  774  ( FIG. 7 ), which is initialized to be level-sensitive and disabled. Thus, whenever the comparator  770  ( FIG. 7 ) is triggered, it will latch into a DSP interrupt pending register but will not generate an interrupt event. The timer service routine  800  polls the interrupt pending register  820 . The pending register value is determined  830 . If the value is a “1,” then a zero bit has been received  840 , else a one bit has been received  850 . The received bit is stored  860  and the timer reset  870 . 
       FIGS. 9A-B  illustrates an RS-232 PC interface embodiment  450  having an RS-232 connector  910 , a sensor connector  920 , a voltage regulator  930  and a transceiver  940 . The voltage regulator  930  draws power from either the RS-232  910  RTS (request to send) or DTR (data terminal ready) signal lines and provides regulated VCC power to transceiver  940 . The transceiver  940  operates on either of the sensor  920  red or IR drive signal lines to generate an RS-232  910  RXD (receive data) signal. The transceiver  940  further operates on the RS-232 TXD (transmit data) signal line to generate a sensor  920  detector signal. 
     A multipurpose sensor port has been disclosed in detail in connection with various embodiments. These embodiments are disclosed by way of examples only and are not to limit the scope of the claims that follow. One of ordinary skill in the art will appreciate many variations and modifications.