CA1193726A - Apparatus and method of determining fertility status - Google Patents

Apparatus and method of determining fertility status

Info

Publication number
CA1193726A
CA1193726A CA000413997A CA413997A CA1193726A CA 1193726 A CA1193726 A CA 1193726A CA 000413997 A CA000413997 A CA 000413997A CA 413997 A CA413997 A CA 413997A CA 1193726 A CA1193726 A CA 1193726A
Authority
CA
Canada
Prior art keywords
temperature
user
cycle
day
fertility
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000413997A
Other languages
French (fr)
Inventor
Howard Schneider
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OVIX Corp
Original Assignee
OVIX Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by OVIX Corp filed Critical OVIX Corp
Application granted granted Critical
Publication of CA1193726A publication Critical patent/CA1193726A/en
Expired legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B10/00Other methods or instruments for diagnosis, e.g. instruments for taking a cell sample, for biopsy, for vaccination diagnosis; Sex determination; Ovulation-period determination; Throat striking implements
    • A61B10/0012Ovulation-period determination
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01KMEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
    • G01K7/00Measuring temperature based on the use of electric or magnetic elements directly sensitive to heat ; Power supply therefor, e.g. using thermoelectric elements
    • G01K7/16Measuring temperature based on the use of electric or magnetic elements directly sensitive to heat ; Power supply therefor, e.g. using thermoelectric elements using resistive elements
    • G01K7/22Measuring temperature based on the use of electric or magnetic elements directly sensitive to heat ; Power supply therefor, e.g. using thermoelectric elements using resistive elements the element being a non-linear resistance, e.g. thermistor
    • G01K7/24Measuring temperature based on the use of electric or magnetic elements directly sensitive to heat ; Power supply therefor, e.g. using thermoelectric elements using resistive elements the element being a non-linear resistance, e.g. thermistor in a specially-adapted circuit, e.g. bridge circuit
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B10/00Other methods or instruments for diagnosis, e.g. instruments for taking a cell sample, for biopsy, for vaccination diagnosis; Sex determination; Ovulation-period determination; Throat striking implements
    • A61B10/0012Ovulation-period determination
    • A61B2010/0019Ovulation-period determination based on measurement of temperature
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/30ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S706/00Data processing: artificial intelligence
    • Y10S706/902Application using ai with detail of the ai system
    • Y10S706/924Medical

Abstract

Apparatus and Method of Determining Fertility Status ABSTRACT A fertility computer is disclosed having the ability to store information about a users past menstrual cycle history, basal body temperature, gynecological disorders, which along with certain prediction indicators is used to statistically predict when ovulation will occur. The prediction indicators are based on information concerning the current status of certain body indicators such as mucus change, spotting in the middle of a cycle or a sore throat. This information is processed in accordance with a predetermined program which ascribes certain values to the above parameters to predict the present fertility status of the user.

Description

HS81-lA
LRR/ls ~L~93~

Apparatus and Method of Determining Fertility Status Description ____ __ Techn cal Field This invention is in the field of prediction, detection and diagnosis of ovulation in female mammals and more particularly human females.

Bac g ound Art Ovulation prediction is important both from the view-point of birth control and enhancing fertility. Although much research has been done in the area of birth control and enhancing fertility, very few safe, easy to use and reliable methods or procedures, free of side e~fects, have resulted to date.
In respect to enhancing fertility, presently, a woman classified as infertile who wishes to become pregnant has .
two main alternatives. She can take fertility drugs which have significant undesirable side effects or she can attempt to predict her time of ovulation~ One method of detecting and timing ovulation is the recording of waking temperature at basal conditions, i.e., basal body temperature. A rise in temperature indicates that ovulation has occurred, thereby signifying that this is the time that sexual intercourse may result in a con-ception.
As indicated in U.S. Patent 4,151,~31, one problemwith basal body temperature measurement as an indicia for fertility status for a person desiring to become pregnant is that the indication does not occur until the peak time Ai, 3~7~6 of fertility is almost over. This is because a rise in basal body temperature is indicative of a rise in serum progesterone levels which is in turn indicative of ov~lla-tion. Unfortunately, the rise in body basal temperature may not occur for a day or t~o after ovulation has occurred.
Some researchers believe that the unfertilized egg may not survive longer than 12 hours. Since sperm are thought to be viable up to 72 hours in the female genital tract, it definitely would be advantageous to 10 know several days ahead of time when ovulation will occur.
In respect to the opposite case, birth control, V.S. Patent 4,010,738 contains an excellent summarY of the problem, as follows:
"For birth control purposes, the method of predicting the time of ovu-lation and abstaining from exposure to conception during the "fertile period"
surrounding that ovulation is generally referred to as the "rhythm method".
The "rhythm method" has not proven to be a reliable method of birth control, primarily due to the-inability of prior art methods to give advance "notice" of the onset of the fertile period. The desirability of improving the reliability of this method need not be discussed at length."
Lester's solution to the problem of predicting the time of ovulation, as described in U.S. Patent 4,151,831, 30 is to record and store basal body temperature measure-ments automatically and use such measurements to predict "the time of ovulation by a predetermined time interval, measured from the next predicted menstrual period by comparison" with the stored temperature measuremen-ts.

~37~

While this appears acceptable in theory, in actuality, the menstrual and/or ovulation cycles in many women are often not regular, thus a different mechanism is required than simply using a predetermined time inter-val from the next predicted menstrual cycle as suggestedby Lester. Furthermore, fluctuations occur in basal body temperature which are independent of serum progesterone levels. Although the prior art U.S. Patent 4,151,831 provides a mechanism to filter out the "noise" or inaccura-cies associated with any given temperature measurement, itdoes not provide a mechanism to filter out the noise asso-ciated with the temperature measurements finally arrived at, taken as a whole over a number of days. For example a sore throat will cause a small rise in basal body tem-perature. While normally an increase in basal body tem-perature indicates ovulation, in this case it would not.
Also, from the viewpoint of a woman who is fer-tile but does not want to conceive, the basal body temperature method of birth control only works after ovulation and so abstinence is required for about two weeks out of each menstrual cycle.
A need therefore exists for a simple, inexpensiye, non-invasive fertility status computer/indicator capable of accomodating to the particular menstrual cycle of the user and also capable of adap-ting to non-relevant fluctuations in basal body temperature (noise) measure-ments such as those induced by a sore throat or similar illness and which is capable of accurately predicting the time of ovulation in advance.

'7Z6 Disclosure of the Invention The present invention describes a method and apparatus which accurately predicts when ovulation is to occur. Accurate prediction of the time of ovula-tion is made on the basis of attributing values to avariety of parameters, specifically related to the user. These parameters comprise, in the main, 1) basal body temperature, 2) vaginal mucus change and 33 past menstrual cycle history. Basal body temperature 10 measurements for determining the time of ovulation have already been discussed in connection with the description of the background art. Vaginal mucus change refers to a change in the cervical mucus from a dry, thick consistency to a wetter, more elastic con-15 sistency. It has been established that most women cansense this monthly change if made aware of it. Since this change occurs a few days prior to ovulation, its occurence when properly combined with parameters 1 and 3 above, can serve as a basis for accurate forecast of 20 time of ovulation.
In order to accomplish the foregoing, the user is provided with a fertility computer which enables the user to store historical information about herself in electronic codes in a plurality of storage devices, 25 such as, bit registers. The information stored pertains to the following:
1) The past menstrual cycle history, i.e., duration of recent menstrual cycles.

l:~g3'i'~
2) Basal body temperature (BsT) history i.e., readings of the ten most rele-vant and recent BBT's.
3) Information indicative of gynecolo-gical disorders, or discrepancies, such as, a menstrual cycle greater than 40 days or less than 20 days or spotting in the middle of a cycle.
4) In~ormation about the user's normal menstrual cycle activity, such as, current cycle number for which the device is being used (CN), the average cycle length (CL), current day number of the current cycle (DC), current day of the week (DW), day of the c~cle (DM) resulting in a certain mucus level value (VM) from one to three, and the value of this particular mucus entry input, the number of valid tem-perature measurements taken and stored (TC) and the median BBT ~MT) which is a weighted average BBT for a certain part of the cycle.
The information stored in these regis~ers is then used, along with certain prediction indicators described below, to statistically predict when ovulation will occur.
The prediction indicators comprise a series of switches operable by the user to input the fertility computer with information concerning the current status of certain of her body parameters. These prediction indicators enable the computer to take into account 3~6 various gynecological disorders and irrevelant tem-perature readings and render a value judgment, much as a gynecologist is trained to do. Thus, these switches are used to indicate perturbations in temperature readings (such as may be caused by a sore throat), or the value or degree of mucus change, or spotting (i.e., blood in the vagina)in the middle of a menstrual cycle.
Also stored in the fertility computer are data from computed values of a) fertility status FS, b) preg-nancy status PR, and c) cycle error status ER. This datais in the form o~ electronic signals, such as binary data bits ranging, for example, from 0 to 255. A zero would indicate that the fertility status is lowest and a 255 that it is highest. The value FS indicates how likely it is for conception to result if intercourse occurs, PR is an assessment of whether the user is pregnant based on such factors as whether ovulation has occurred and~ if so, has basal body temperature failed to drop and whether another period has commenced. The ER is an indication of the possibility of gynecological disorder. The typical factors used in computing ER are spotting(or bleeding in the middle of a cycle), a cycle that extends beyond 40 days or is less than 20 or whether there was a cycle error in the previous cycle.
~ microprocessor within the fertility computer is programmed to process the above items of inEorma-tion in a predetermined manner and at the user's command to display either current fertility status, pregnancy status or cycle error status.
In summary, therefore, the apparatus of the invention comprises apparatus and processes for indicat-2~;

ing and displaying the present fertility status of a female subject. It does this by storing information in respect to the female user's past history of length of cycle, basal body temperature and possible gynecolog-ical disorders plus her current menstrual cycle status,basal body temperature, fertility status and gyne-cological disorders. All of this information is processed in accordance with a predetermined program which ascribes certain values to each of the above parameters in order to predict the present fertility status of the user.
Thus, there is provided, in accordance with the invention, a quick, convenient, inexpensive and reliable method and apparatus for determining fer- i tility status for use either as a birth control mechanism or as a device for enhancing fertility~
These and other advantages will become apparent from the followiny description.

Brief Description of the Drawings Fig. 1 is a perspective view showing the exterior configuration of a preferred embodiment of the inven-tion.
Fig. 2 is a block -diagram of the invention.
Figs. 3a-3k is a flow-chart showing the logic steps associated with the invention.
Fig. 4 depicts the logic symbols l~sed in Fig. 3.
Fig. 5 is a perspective view showing the extexior configuration of an alternate embodiment of the inven-tionO
Fig. 6 is a block-diagram of the embodiment of Fig. 5.

:~g3~7~;

Fig. 7a-7c is a flow chart showing the logic steps associated with the alternate embodiment of Figs. 5 and 6.
Fig. 8a is a perspective view showing the exterîor configuration of an alternate embodiment of the inven-tion.
Fig. 8b is a front plan view of the exterior of the fertility computer of Fig. 8a.
Fig. 8c is a front view of a decal used on initial 10 energization of the computer.
Fig. 9a is a block diagram of an embodiment of Figs. 8a-b.
Fig. 9b is an alternate block diagram of an embodi-ment of Figs. 8a-b.
Fïg. 10 is a sectionali~ed view of a temperature probe useful in the embodiment of Figs. 8a-b.
Fig. 11 is a block diagram of the signal condition-ing logic.
Fig. 12 is a schematic of the power steering 20 network 255a.
Fig. 13a-13ww is a logic flow chart showing the pro-cess by which the fertility computer of Fig. 9b operates.
Fig. 14 is a diagramatic illustration of an embodiment of a mucus probe for use in the apparatus 25 of Figs. 8a-b.
Fig. 15 is a perspective illustration of an alternate embodiment of the mucus probe of Fig. 15.
Fig. 16 is a schematic illustration of the interior of Fig. 15.
Fig. 17 is a diagramatic illustration of a preferred form of te.nperature probe for use in the invention.

, :L~L93'~

g Fig. 18 is a schematic of the temperature probe of Fig. 17.
Best Mode for Carr~ing Out the Invention Definitions For convenience, as used herein, the followincJ terms, symbols and abbreviations are defined and summarize~ to mean: .
Numerical No. Bits Symbol Description Limits Required 0 DW day of week, Mon=l, Sun=7 0-7 3 DC day of cycle, first day=l 0-41 ~CL average cycle length minus 20 20.0-35.0 6 C(l)- C(l) is cycle 1 month ago C(12) C(12) is cycle 12 months ago each Yariable holds the length of that particular 0-7 3x12=36 cycle below the average cycle length i.e., C(n)=0 if length C~n)> =CL
C~n)=3 if CL-C(n)=3 C(n)=7 if CL-C(n)>7 DM day of cycle last 'mucus change' input 0-41 6 ~vM value of last 'mucus change' input 0-3 2 ~IT median teMperature 0-255 B
T(l)- T(l) is most recent temp. input T(10) T(10) is temp input of approx. 10 days ago 2 bi~s per variable data stored as follows:
high order bit - 1 if temperature cross~d threshold low order bit - 1 if discrepancy level 1 entered 0-3 xlO=20 CN cycle number (need when new unit) 0-3 2 TC t~mperature cour~ter (use with T() array) 0-15 4 Fl flag 1 - cycle error, DC 40 days 0-1 F2 flag 2 - cycle error, DC 20 days 0-1 F3 flag 3 - spotting 0-1 F4 flag 4 - previous cycle had Fl, F2, or F3 set 0-1 F5 flag 5 - temperature rise complete 0-1 F6 flag 6 - most reccnt day had P-value set 0-1 F7 flag 7 - temperature drop completc 0-1 1 I.T la~.t temperature input entered 0-255 8 LP last period input entered 0-1 LM last mucus change input entered 0-3 2 LD last discrepancy input entered 0-2 2 Till)- as aboYe 0-7 2x4=8 T(14) F8-F14 flags 8-14 0-1 ?-~
its (I6 .~

37~

Symbol Descriptioo Nurnerits 11equlred ^~^DI discrepancy value input (switch 13) 0-2 2 MI mucus value input (switch t4) 0-3 2 PI period value input (switch J5) 0-1 CI clear current/last input (switch 11) 0-3 2 SI ùisplay F-status inpl~t (switch t6) 0-1 TT temperature value measured (A~'D 11) 0-25S 8 TI temperature entry inyut (switch t2) 0-1 SS sensitivity value measured (~/D 12) 0-255 B
0, RR timing value (A/D 13) 0-255 8 8D battery value (A/D t4) 0-255 8 SN switch no. hit 0-6 3 FS fertility status (red LED 11) ' 0-255 B
PR pregnancy status (red LED t2) 0-255 8 ER error status (red LED 13) 0-255 8 FD DW to flash corresponding to coming period 1-7 3 DF differential value 1-~1 6 TV temporary vari2ble . 0-255 B
01 temporary flag 1 0-1 Q2 " 2 0-1 Q3 ~ 3 0-1 U4 ~ 4 0-1 LC temporary loop counter 0-63 6 2 5 NOTES:
To 6ave space when "read" CL add 20 and when "write" CL subtract 20 To do so takes 4 bits if CL is to vary from 20-35, however, 6 bits are provided for a '~seudo-decimal' point. This will il-crease the accuracy of subsequent average calculations.
In summary, CL is read as follows: CL=2t)~iNT(CL~.S) ~^ The input VM is entered whenever the dry to wet cervical muc~1s cha~e.
is sensed;
a "l" is entered if the user thinks change occurred.
a "3~ is en~ered if the user is very sure change h8s vcc~ ~d.
35^^~ A discrepancy level 1 is entered if taking temperature a few h~ r!:
later than normal, etc. and a discrepancy level 2 if user wake6 ~Ip with a sore throat, etc.

..

~37Z~

The term "numerical limits" means the value inputs that may be entered into storage. The number of bits used to store the value inputs are indicated adjacent each limit.

External Configuration Turning now to Fig. 1, there is shown a preferred embodiment of the external configuration of the fer-tility computer.
The fertility computer 40 is enclosed in a small 10 case 41. This case includes in the interior, the various computer chips and printed circuit boards making up the heart of the computer and, in addition, contains batteries for supplying power to the electronic chips. Mounted on the outside of the enclosure 41 are six momentary push-15 bu-tton switches 44, 46, 48, 50, 52 and 54. A yellow LED
light (light emitting diode light3 6~ is provided to indicate whether or not the fertility computer and the battery are operating properly. This light will be "off"
if the device is not operating properly.
S~ven yellow LED- lights 70, 72, 74, 76, 78, 80 and ~2 are provided to display the day o~ the week. Monday is ~ displayed by light 70, Tuesday by light 72 and so on ; to Sunday, which is light 82. These lights are also employed to indicate when the user is plus or minus seven 25 days from the beginning of an expected period, in which case, the appropriate LED will flash.
A green LED 42 is provided which flashes during temperature measurement so that the user is prompted to maintain the temperature probe in her mouth. Three red 30 LED's 56, 58 and 60 are provided to indicate respec-tively the fertility status ~FS), pregnancy status (PR) and error status (ER). At a level zero input, the LEDs are "off", at a level 63 input the LEDs flash at a one ,. .

~372~

cycle per second rate and at a maximum level of 255, the L~Ds flash at a four cycle per second rate.
Switches 44, 46, 48, 50, 52 and 54 are respectively the clear current/last entry switch, take temperature measurement switch, discrepancy entry switch, mucus entry switch, period entry switch and display fertility status entry switch.
An On-Off switch 1 is provided to switch the power from the batteries (not shown) to the Eertility computer 10 40. A temperature probe 64 is also coupled to the fer-tility computer 40 via cable 62 to enable basal body temperature measurements from temperature sensor 66 to be input to the fertility~computer.
Instructions for using the device may be conveniently 15 printed in the space provided-at 5.
Functional Description The internal electronics for the fertility compu-er 40 are shown in block diagram form in Fig. 2.
When the fertility computer 40 is turned on by the 20 "On/Off" switch 1, the battery 2 voltage is applied to all the structures shown in Fig. 2. Register groups 3, 4, 5 and 6 are well known non-volatile storage registers in that the battery voltage is applied to these components even when the fertility computer 40 is "off", and so, they do not lose their contents. This is presently the most economical route to take although advances in microtechnology will soon produce economical non-volatile registers that require no standby power source. Upon power initiation, the 30 microprocessor 9 follows a general self-test algorithm which ensures that all components are in working order.
Assuming that the latter is true, the microprocessor indicates this to the self-test circuit 7 which will, if the voltage from battery 2 is sufficient, indicate 35 correct operation via the self-test indicator 8. Indi-cator 8 is a yellow LED (light-emitting-diode) which flashes at approximately lHz if all is functional.
The microprocessor 9 is coupled via line 9a to an oscillator 10 and a programmable timer 11. The timer serves to count a number of cycles from the oscillator and lets the microprocessor 9 know; thereby serving as a clock mechanism to insure proper timing of signals through the microprocessor. Also coupled to the micro-processor is a data/adaress bus 12, a RAM (random-10 access-memory) storage 13 and ROM (read-only-memory) program storage 14. Although program storage can be accomplished in RAM, as is the case in larger, general purpose computer systems, for smaller, more specialized electronic devices as used herein; it often proves more 15 economical to store the progràm permanently in a form of ROM, such as, PROM, EPROM, EEPROM, etcO RAM 13 is used to store intermediate results of computations and is required by the microprocessor 9 because the latter can only work on one operation at one time. It 20 is possible that if discrete logic building blocks were used instead of the microprocessor 9 then the RAM 13 may not be necessary.
The I/O (Input/Output) bus 15 is a typical feature of microprocessor systems and serves to route 25 the I/O signals to and from microprocessor 9. After the self-test algorithm, which is programmed into the micro-processor, is executed by the fertility computer, the microprocessor 9 checks t~ see if there is any input - from the expansion interface socket 30 through S/C
(signal conditioner) #4 numbered 17 in Fig. 2. The sig-nal conditioners transform the input signals from the external devices to a signal which can be handled by the I/O bus 15 and vice versa. Also, the signal con-ditioners accomplish low-level processing as required.

~37~t~

The expansion interface socket 30 allows the micro-processor 9 to be connected to a variety of devices.
Although these may include additional sensory probes, additional I/O devices, such as a voice circuit for blind people perhaps, it generally will be used by a doctor to access and display, and change if necessary, the contents of register groups 3, 4, 5 and 6. For example, instead of the fertility computer 40 having to learn on its own a woman's gynecological and physical lO history, a doctor (or a woman user if she was capable) would enter this information directly into the register groups. Likewise, on an office visit to her physician, the doctor could attach his general pllrpose computer to the expansion interface socket 30 and examine the 15 con-tents of the register groups.
f there is an input from S/C X4, then the micro-processor sequentially dumps the contents of register groups 3, 4, 5 and 6 into a contiguous area of storage memory in the device which is interfacing with the expan-20 sion interface socket 30. The external device (notshown) then displays, prints or modifies, or any com-bination of these operations, the information in its RAM
area. The external device can then allow, or make by it-self, any changes in the contents of its R~ area which now 25 hold the contents of register groups 3, 4, 5 and 6. I~hen it is ready, the external device then sequentially loads the expansion interface socket 30. S/C X4 ~17~ indicates this to the microprocessor 9 which then sequentially taXes the data it is receiving from the expansion interface 30 socket 3n and loads it sequentially into register ..

372~
-15~

groups 3, 4, 5 and 6. Other variations of inputting an external device might include an e~ternal device and a corresponding algorithm in the fertility computer capable of addressing and thus accessing specific registers in the various register groups 3-6. Further-more, S/C #4 17 could be adapted to recognize various external attachments and indicate this to the micro-processor 9 so that the latter could choose the appro-priate algorithm to follow, e.g., a certain algorithm for use with the physician's general purpose computer and another algorithm for use with an external vocal~
ization circuit.
Unique to the fertility computer is the F-bus 26. This bus connects the microprocessor 9 to the lS register groups 3, 4, 5 and 6. Register groups 3 ard 4 consist of twelve and ten byte-wide registers re~pec-tively. Register group 5 consists of seven byte-wide registers used as flags. Register group 6 consists of eight byte-wide re~isters. The size of these register groups could be reduced even further, as indicated by thé storage space requirements shown above. Register group 3 stores information concerning the length of the twelve most recent menstrual cycles Cl-C12. I~hile there are a variety of possible formats which coul~ be used, 2~ in the embodiment being described herein, if the cycle length CL is equal to or greater than the average cycle length, a value of zero is stored in the appropxiate register in register group 3. If the difference of the average cycle length minus the cycle length in question, is equal to or greater than seven, then a value of seven is stored, otherwise a value e~ual to the dif-ference is stored in regis~er group 3.

3 7~

Register group 4 stores information concerning the basal body temperature readings of the ten most relevant and recent days. Again, a variety of formats are possible but the one used in this embodiment is as follows: a zero is stored if the temperature readings have not crossed threshold (Note: Threshold is defined as the condition when the appropriate difference be-tween MT and TT is greater than the value of SS.), a one is stored iE the temperature readings have not crossed threshold but a discrepancy level one (i.e., discrepancy button 48 hit once) has been entered, a two is stored if the threshold has been crossed and no discrepancy has been entered and a three is stored if the threshold has been crossed and discrepancy level one entered.
It should be emphasized that the fact that the temperature readings are coupled with the discrepancy entries,forms part of the mechanism previously described, which enables inaccurate temperature measurements to be discriminated against as a whole and filtered out.
Register group 5 serves as a grouping for seven one-bit flag registers. A "flag" is a value stored in the register which indicates the occurrence or non-occurrence of an event. Flag Fl is set if a cycle is greater than forty days. Flag F2 is set if a cycle is less than twenty days. Flag F3 is set when spot-ting occurs during a cycle. Flag F4 is set if either of the previous three flags were set during the pre-vious month. Flag F5 is set if a temperature rise indicating ovulation is achieved. Although not shown in Fig~ 2, this ~lag F5 could be attached to an indi-cator which would tell the user that ov~llation had occurred. Flag F6 is set if a period level one input has been entered into the microprocessor 9 from s~itch
5 (52) of input device 29. Flag F7 is set if a basal 3~72~i body temperature drop occurs after the ovulatory tem-perature rise has been achieved.
, - - - ~ Register group 6 contains various miscellaneous registers required for the operation of the fertility computer 40. CN is the present cycle number, e.~., if CN
is equal to two and then a new cycle begins, CN is incre-mented by one to a new value of three. CL is the average cycle length which, as shown later, is really a weighted average in order to filter out irrelevant cycles. DC
10 is the current day number of the current cycle. DW
is the current day or the week.
Although various elegant techniques, as later discussed, can be used to advise the user that it is time for another basal body temperature reading, for 15 reasons of economy, the following day of the week sys-tem is used in this embodiment.
Indicators 28 indicate what aay of the week it is.
Seven yellow LED's are used, 70, 72, 74, 76, 78, 80 and 82 (Fig. 1), corresponding to each day of the week. It is recommended that the user record her basal body tempera-ture daily. Therefore, if the user wakes up onFriday morning, for example, she will see that the day of the week indicator 28 indicates that the day of the week is Thursday. Thus the user will know she 25 must take her basal body temperature. As will be explained later, to do this, the microprocessor 9 automatically increments the DW register (or if it previously was Sunday, sets it back to a value of one, corresponding to Monday) of stack register 6. Thus, 30 when the microprocessor 9 later commands S/C ~5 21 to display the day of the week corresponding to the value in DW of 6, the indicators 28 will now, to continue the example above, indicate Friday, and so, the user will know for the rest of the day that no further tempera-35 ture measurements are required.

~9372~i DM in register 6 is the day of the cycle that most recently resulted in a mucus level one to three input entry. VM is the value of this particular mucus input entry. Together, DM and VM form part of the mechanism in the present invention which allows accurate predic-tion of when ovulation is to occur, not simply when ovulation has already occurred or a prediction of when ovulation is to occur by a predetermined time interval, as is the case with the prior art.
The medical literature indicates that a few days before ovulation is to occur, there is a change in cervical mucus from a dry, thick-consistency to a wetter, more elastic consistency. Most women can sense this monthly change if made aware of it and 15 so can indicate that it is occurring to the micropro-cessor 9 via an input device 29, e.g., a ~eypad. If the user is not sure of this change in consistency of the cervical mucus, she can make use of an optional vaginal probe 108, which is especially designed to 20 automatically measure such changes. The prior art (specifically U.S. Patent Nos. 4,013,066, 3,926,037, ~,151,833, 3,749,089 and 4,036,212) aive examples of the mechanisms and structures required in such a probe. Thus, the combination of DM, VM in register 6, 25 the input device 29 and (optional) vaginal mucus probe 108, along with the microprocessor 9 as the con-trolling element, form a structure which serves in the present invention to predict when ovulation will occur on the basis of the status of dynamic body para-30 meters-.,, ~, ~33'72~

--lg--TC is used by the microprocessor 9 in conjunctionwith register group ~ and serves to tell which is the last register in register group ~ containing valid in-formation. This is necessary because when temperature values must be stored in register group 4, first register Tl is used. Then the next day the contents of Tl are shifted to register ~2 while the new present day contents are entered into Tl. At this point, TC
would contain a value of two indicating that only Tl and T2 are filled with valid information. TC is neces-sary, since the filtering out of irrelevant tem-perature measurements precludes a one to one relation-ship between the day of the cycle offset at some relevant day and the number of registers in group 4 filled with relevant contents. ~ is the median tem-perature and is the weighted average temperature for a certain part of the cycle. The particular weighting system will be shown in connection with Fig. 3. The use of a weighted average tends to enhance the filtering mechanism for avoiding irrelevant tempera-ture readings. Together, the group of registers 3, 4, 5 and 6 are used in a statistical sense to form a mechan-ism which statistically predicts when ovulation is to occur. A system is provided to combine this statis-tical mechanism with the mucus-change mechanism des-cribed before, in order to allow the most accurate prediction of when ovulation is to occur.

Loqic Description The remaining items shown in Fig. 2 may be best described in connection with their function, as shown in the Logic Flow Charts of Fig. 3. This Flow Chart shows the step-by-step operations which are performed by the apparatus in Fig. 2 in response to various , - 1~937;~i inputs and as controlled by the program stored in memory. The symbols used are previously defined above. The reference numerals will be to elements in Figs. 1 or 2.
Before proceeding to Fig. 3, we must briefly turn to Fig. ~ which shows the logic symbolism used in Fig. 3. As can be seen in Fig. 4, the logic of 4(a) is equivalent to 4(b~ and the iogic of 4(c) is equivalent to 4(d). Thus, in following the Fig. 3 chart, if the answer to the question/value inputted at a node is "true/present", then an arrow mar~ed y (yes) would be followed. Conversely, if the answer/value is "false/not present", then an arrow marked n (no) would be followed.

15 Housekeeping Logic Referring now to Section A cf Fig. 3, this shows how the Housekeeping routine is implemented. When the power is turned on to the fertility computer 40 by ON-OFF switch 1, a program in the microprocessor 9 directs the input buffers to be cleared and enables the data registers to be addressed. The battery voltage is checked and if correct, LEU 68 lights up~
Through the F-bus 26, the microprocessor 9 accesses register DW of group registers 6 to determine if it con-tains a non-zero value. If it does contain the value of zero, this indicates that the fertility computer has not been used before. If so, the micro-processor 9 places a starting value of 28 in register ; CL of group 6 and sets flag E4 of group 5. The user 30 then enters, through input device 29, the desired day of the week which the microprocessor 9 will then store as input data in register Dl~ of 6.

.....

~3'~

Input Logic Referring now to Section B of Fig. 3, the next thing the fertility computer does is display or indi-cate via indicator 28, the day of the week correspond-ing to the value of DW in group register 6. At thispoint, the fertility computer asks the user if she wishes to simply find out her fertility status or if she wishes to record her basal body temperature or other~
relevant body parameters. If the former is chosen, then 10 the microprocessor 9 jumps to the series of algorithms used to determine fertility status which are discussed below in connection with Section D of Fig. 3. Other-wise, the microprocessor 9 indicates to the user via the recording indicator 31 that a temperature measure-15 ment is in order. Indicator 31 is simply a LED.While a number of ways are suggested in which human body temperature can be measured, the present embodi-ment uses a simple temperature sensing probe 32, such as, an inexpensive thermocouple, thermistor, or 20 temperature sensitive semiconductor. An inexpensive temperature sensor can be used because the structure of the fertility computer, and in particular register group 4, is arranged to process relative differ_nces in daily basal body ternperature rather than absolute 25 temperature values. If accurate absolute ternperature readings are required, then an expensive temperature sensor with an accuracy of l/10-1/20F is required.
This rather rigid requirement is dispensed with in the present invention because, as mentioned above, the 30 structure of the fertility computer is arranged to process relative differences in temperature. ~ether .

. .

the temperature probe 3~ indicates 94F or 99F is unimportant. Rather, the significance in a temperature reading lies in its relationship with its neighbors in group 4, i.e!, day to day repeatability is the impor-tant criteria, so that when a change in temperature doesoccur, it can be noted.
Although the medical literature indicates that it is best to measure basal body temperature per vagina or per rectum, and although this approach may be taken 10 quite easily with the present embodiment, the embodi-ment also allows the user to record oral basal body temperatures. The error rate of temperature readings taken sublingually, as opposed to vaginally or rectally is probably somewhat higher. However, due to the 15 extensive signal conditioning and filtering capabili-ties of the present invention, this should not be a problem in actual practice. While not shown in the present embodiment, it would be possible to have an algorithm which would allow the user to alternate 20 from oral temperature readings to vaginal temperature readings whenever she desired to do so. As it stands now, the present embodiment of the fertility computer requires that the user measure vaginal temperature or oral tem-perature, but not both during the course of a single 25 cycle.
As anyone who is skilled in the art of heat trans-fer recognizes, thermal equilibrium does not occur instantaneously but rather can be approximated only after a certain number of time constants. So that 30 there is consistency in day to day temperature measure-ments some means o~ alerting the user to keep the temperature probe in a functional position or a ~9;~t72~

certain time period is required. For reasons of economy in the present embodiment, this is accomplished by recording indicator 31 which is a simple LED which stays on or flashes until sufficient time has elapsed for a valid temperature recording to be taken. The recording indicator 31 may also be used with other probes, for example, with the vaginal mucus probe 30, the indicator telling the user to keep the probe in a functional position until a valid reading is ootained. S/C #2 19 10 not only converts the analog signal from the tempera-ture probe 32 to a digital signal which is acceptable to the I/O bus 15 but is responsi~le for the first level of filtering out of irrelevant temperature read-ings. While the prior art suggests a multitude of 15 approaches for analog to digital conversion, for reasons of economy, an inexpensive capacitor-charging-ramp technique can be used. Although this technique pro-duces non-linear results, it is very reliable and repeat-able. An algorithm can be used by the microprocessor 20 9 to correct for these non-linearities. However, the point to be émphasized is that such a technique is suitable for use with the fertility computer because register group 4 and other structures therein are adapted to consider changes in day to day basal body 25 temperatures rather than the absolute values of the temperature readings.
S/C ~2 19 performs the first level of filtering out of irrelevant temperature readings. When the temperature probe 32 indicates that it is within a 30 certain distance of normal body temperature (e.g , ninety-degrees) S/C ~2 19 indicates this to the ~:~g;~'7;2g~ `

microprocessor 9. Thus the microprocessor 9 can begin timing the period required for thermal equili-brium to be reached. At the end of this period S/C ~2 19 is programmed to measure the temperature reading.
If the reading ls an unreasonable one, i.e., too low or too high, then S/C ~2 19 may take a series of temperature measurements and average them before returning a value to the microprocessor via I/O
bus 15. As well, S/C ~2 19 checks to make sure that 10 during the period of attaining of thermal equilibrium there are no significant "up/down" fluctuations in tem-perature indicating that the temperature probe has been moved from its functional position. If the latter occurs, then S/C #2 will repeat the thermal equili 15 brium buildup and may sample more than one temperat~re reading.
After S/C ~2 l9 returns a valid temperature measurement to the microprocessor 9 via the I/O bus r 15, the microprocessor 9 through the same bus turns 20 -the recording indicator 31 off and so the user knows that it is now permissible to remove the temperature probe from the functional position. The loaic for the preceding procedure is shown in Section B along the path from SN=6.
At this point (Section B line b - SN=0 input?~
the microprocessor 9 stores the temperature value measured in R~M 13 in the area described as TT. The user is now expected to enter information concerning the current status of various of her body parameters 30 in-to the fertility computer through input device 29.

~g37;~

As previously stated, the input device 29 consists of six momentary contact pushbutton swltches. These switches, together with the various register groups, form a structure which enables ovulation to be pre-dicted ahead of time based on the current status ofvarious body parameters, accounts for various gyne-cological disorders, and allows filtering out of irrelevant temperature readings already arrived at.
Switch SW3 (4~) is called "Discrepancy" and is pressed 10 once if there is a small discrepancy such as waking up late and twice, if there is a large discrepancy, such as waking up with a sore throat or a fever. S/C ~1 (18) is designed to ignore a level three or higher discrepancy input entry (i.e., if the switch SW3 is pressed three 15 or more times S/C #1 (18) considers it pressed only twice). If a discrepanc~ level of two is entered, ~hen the current temperature reading TT is not used in the computations. This is an important part of the filter-ing mechanism. If a discrepancy level one is entered, 20 this is noted together with the current temperature.
(The logic for this SW3 switch is shown in Section s of Fig. 3 at line SN=3).
Switch SW4 (50) of input device 29 is the "mucus change" switch. It is pressed when the user senses a 25 change in her cervical mucus consistency. S/C ~1 (18) is adapted to consider a mucus change input level four or greater as a mucus change input level three (i.e., it serves the user no purpose to press SW4 more than three times. For this logic, see Section B of Fig. 3 30 line SN=4). Together with DM and VM of group 6, SW4 forms an important structure which allows accurate pre-diction of the time of ovulation. As mentioned above, if the user is unable to sense this change, then the consistency of the cervical mucus may be determined by using (optional) vaginal mucus probe 108 with the appropriate algoxithms.
Switch SW5 (52) is the "period" switch. This switch SW5 is pressed whenever the user notes blood per vagina. Although it serves the obvious purpose of alerting the fertility computer to the commencement of a new menstrual cycle, along with the DC input of 10 register group 6 and register group 5, it forms a structure which is capable of recognizing certain gynecological disorders such as t-oo long or too short a menstrual cycle. (The logic for SW5 is shown in Section B Fig. 3 at path SN=5?).
Switch SWl (44) is the "clear" switch and is pressed if the user made a mistaXe and wants to erase something entered or start over again. (See SN=l? Fig. 3 Section B and the logic on line d commencing with CI> 0?
for the logic function of clear switch SWl). Switch 20 SW5 (54) is the "display" switch and in this case is pressed once the user has finished entering the neces-sary information concerning the current status of her body parameters. (See SN=6? Fig. 3 Section B).

Cycle Management At this point, we are ready to discuss the "cycle manAgement" logic at line "a" of Section C of the Flow Chart, labelled "Cycle Management", where the DW
register of group 6 is incremented by one (or set to one if previously containing a value of seven). In 30 this manner, the DW register is set at a value cor-responding to the correct day of the week. Next, the ~3~7~i DC register of group 6 is incremented by one so that it contains a value corresponding to the current day of the menstrual cycle. The structure of the DC register is such that it does not increment past a value of forty-one. The inputs entPred above through input device 29 are placed by the micropro-cessor 9 into certain areas of RAM 13. If the mucus change level entered above is level one or greater, then the microprocessor 9 stores the level of the mucus change in register VM of group 6 and at the same time, stores the values of DC and DM oi register group 6.

Cycle 40 Days Plus We are now at the point in the Flow Chart labelled Section C (cycle 40 days plus?). This is where the system begins to account for gynecological disorders, in this case accounting for cycles longer than 40 days.
The microprocessor 9 examines the contents of register DC of 6. If a value of forty-one is found in DC of 6, .
then this means something is wrong, i.e., the menstrual cycle is too long and thus the microprocessor 9 sets flag Fl of 5 and then checks the RAM 13 to see if a level one period value was entered "today". If so, then the microprocessor 9 checks to see if flag F6 of 5 is set.
If this flag is not set, then the microprocessor 9 sets it. If this flag F6 was found to be set, then this indicates that a period level one was also entered yes-terday. This indicates that a new menstrual cycle has begun. Thus, it is necessary for the microprocessor 9 to follow the following routine:

~372~;

i. Calculate a new average cycle length such that CL = .95CL + (.05)(41).
ii. Reset registers DM, ~M and MT
of 6 to zero.
iii. Set flag F4 of register group 5 but reset all the other flags of 5.
iv. Shift the contents of register group 3 one register to the right.
v. Place the value of zero into regis-ter Cl of group 3 since the just completed cycle was longer than average.
vi. Place the value of two into DC of group
6 since this is the second day of the new cycle.

New Cycle 15Next, referring to Section C of the Flow Chart labelled (New Cycle) the logic adapted to deter-mine if a new cycle is occurring is shown. The micro-processor 9 checks the DC register of 6 and -the RAM area 13 to see if a new menstrual cycle is beginning. If the value of register DC of 6 is eight or less, then this entir~ step is skipped because it is likely that any period values of level one occurring during the first eight days of the menstrual cycle are represen-tative of the ongoing period rather than indicating 25 that a new menstrual cycle is beginning or that a spot-ting event has occurred. If a period level one was not ;entered today and yet flag F5 is set indicating that a ~9;~

period level one was entered yesterday then the micrG-~rocessor 9 checks via the F-bus 26 to make sure that the value of DC of 6 is not less than the value of CL
of 6 minus two because if this is true, then it indi-cates that spotting has occurred and thus the micro-processor 9 sets flag F3 of 5. If the day of the cycle is close to the average cycle length, i.e., DC
is not less than CL minus two then this occurrence of a period level one value one aay and not the next, is 10 moré likely representative of an oncoming menstrual cycle rather than spotting. In either case, since a period level one was not entered on that aay (today), the microprocessor 9 resets flag F6. On the other hand, if a period level one was entered that day (today), 15 then the microprocessor 9 checks to see if flag F6 of 5 is set, i.e., if there was also a period le~el one entry the previous day (yesterday). If not, then flag F6 of 5 is set; but if flag F6 of 5 was already set then this indicates two days in a row of period level one ~ntries, therefore indicatins a new menstrual cycle. Thus, the following routine, as shown on the right-hand side of Fig. 3 Section C (New Cycle), is followed as shown in the Flow Chart co~nencing at DM=VM=MT=0 column 4:
i. Reset VM, DM and MT of 6 to zero.
ii. Shift the contents of register group 3 one register to the right.
iii. If flag F4 of 5 is set then reset it to zero since this indicates that there was a cycle error one cycle ago and a new Inenstrual cycle has since passed ~L ~ 937~

iv. If flags Fl or F2 or F3 of group 5 are set then set flag F4 of 5 now so that a record is kept of the fact that a cycle error occurred in the menstrual cycle which is now terminating v. ~eset all the flags of register group 5 but if flag F4 is set then allow it to remain set.
vi. If the value of DC of 6 is smaller than twenty then this indicates a short cycle, i.e, a possible gynecological disorder, therefore, set flag F4 of 5, place a seven in Cl of 3 since this is a very short cycle, compute a new average cycle length (CL) such that CL = .95CL + (.05)(20) and place a two in DC of 6 since today is the second day of the new menstrual cycle.
If the value of DC of 6 is areater than or equal to twenty, then the length of the cycle which is terminating is not considered to repre-sent a cycle error, therefore, continue with this routine.
vii. Compute a new cycle average such that CL - (.90).CL + .lODC.
viii. If the value of register CN of 6 is less than three then increment register CN. The CN
register is used by the fertility computer to keep track of the first three cycles of use of the fertility computer and so forms part of the structure which allows the fertility computer to compensate for having a dearth of information stored about -the user which is necessary for accur-ate prediction of the time of ovulation.

~37;~

ix. If the length of the cycle which is terminating is seven days or more shorter than the average cycle length, i.e., CL minus DC is greater than seven, then the value of Cl is set at seven, otherwise the value of Cl is equal to CL minus DC (both registers of Group 6) unless the difference is a negative number, in which case Cl is set equal to zero, i.e., indi-cating a cycle length equal to or greater than the average cycle length.
x. Register DC of 6 is given a value of two since this is the second day of the new menstrual cycle.
Another way of looking at the logic of Section C
(New Cycle) is that in this routine we want to deter-mine if a new cycle has occurred. The first column of Section C checks to see if the day of the cycle is 8 or less. If so, then any spotting that would occur is ~ due to the present period so the processor ~roceeds ; 20 directly down column l of Section C to Section D
"set Ql=l". On the other hand, if the day of the cycle is greater than 8 days, it's t'ne 9th day or greater, the computer checks to see if a new cycle is occurring.
The first thing checked is if PI is equal to l. (See column 2) In other words, was one of the keys pressedcorresponding to period "today". If it was not pressed, then the next thing checked is "Was the period value input switch pressed yesterday?" i.e., was F6 equal to 1. F6 is the flag which indicates the PI button ~as pressed yeaterday.

-3~-Next, .in column 2, assuming PI was pressed yesterday, then F6 was set yesterday, and if that is true and there's no period today, the computer checks to see if the day of the cycle is smaller than the average cycle length minus 2. If this is true, F3 is set because it indicates spotting. On the other hand, if the user is pretty close to the expected day of the next cycle, in.other words DC
is not smaller than CL-2, where CL is the average 10 cycle length, then itls not really spotting, it may indicate an oncoming period.
After this check is made, F6 (the flag indicating that a period happened yesterday~ is reset because there was no period today; so F6 is equal to 0 and the ; 15 processor proceeds to column 1 of Section D. On the other hand, referring to column 3, if there was a period today and if F6 was set indicating was there a period yesterday, we proceed to column 4. If F6 wasn't set, then we proceed down column 3 and set F6 : 20 equal to 1. In other words, the flag which indicates that a period happened today is set, so if this happens again tomorrow we ~now that there was a period yester-day also.
What the computer is doing in simple terms, is 25 determining if there are two days in a row when the user is having a period. If there are two days in a row, then it means a new menstrual cycle has star~ed which is what is ïndicated at the top of column 4. If the a.nswer to "F6 equal to 1?" is "yes", then we proceed to column 4 It means there was a period today, there also was a period yesterday, thus a new menstrual cycle is beginning. If a new menstrual cycle is beginning, then ~ ~ 9 1 3 ~ ~ ~

there are a few things the microprocessor must set.
The DM, VM and MT registers are cleared out, i.e., set to zero and the cycle numher registers 3 are incremented by one.
Next, before using the value of CL, F~ is set to zero. The reason F4 is set to zero is it's a new month no~. If there was any cycle error indicated the previous month, this clears it out. Next, the computer checks to see if there were any errors this 10 month. In other words, is Fl, F2 or F3 equal to 1? Or, was the period greater than 40 days (Fl is set) less than 20 days (F2 is set), or did spotting.occur in the middle of a period (F3 is set). If that did happen, then F4 is set again (see Column 5), so that next month the 15 computer knows an error occurred in the previous month.
Next, the other flags are cleared because a new menstrual cycle is commencing and the computer starts from fresh. Now, referring to column 4, the computer checks to see was this a menstrual period which was less 20 than 20 days~ Again, this is a procedure which provides for a mechanism to account for gynecological disorders.
If the answer is "Yes, the cycle was 1ess than 20 days", then we proceed to the right at column 6 and compute an average cycle length CL of .95 times the previous average 25 cycle length CL plus .05 x 20; where 20 is the cycle length this month.
On the other hand, if this month, the cycle length was greater than 20, in other words it was a more nor-mal cycle, the computation is as shown in ~lumn 4 wherein 30 the weighting favors the present cycle length. For example, if the present cycle length is 27, then the average cycle length is computed as 90-~ o~ the previous cycle length plus 10~ of DC wherein DC is 27.

3~

Continuing in column 4 of the New Cycle Cl is then set. If the average cycle length minus DC is qreater than 7 then Cl is set at 7. On the other hand, if everything was normal, if the condition is that DC is smaller than 20 is false, that is if the day of the cycle is greater than 20, it's a normal length cycle, a new cycle average is computed in column 4.
Next, the CN register is checked to see if CN is equal to 3 in order to keep track of what the cycle num-ber is during the first few cycles of use of the fertility computer. The reason for this i9 that the computer is an artificial intelligence devic-e. It learns on its own.
Until about 3 months, the machine has not learned enough about the user to make very precise judgments. This is similar to a woman going to a gynecologist. She must come back a few times before the doctor can know enough about her to decide on her condition. The same thing occurs with the computer. Before the micro-processor can make an intelligent judgment, it has toaccumulate sufficient information on the user. ~ut, so that the machine can be used in the first three months of operation, a compensation factor is employed by keeping track of what the CN is. If a CN is smaller than 3, then when figuring fertility status, the com-puter errs on the side of safety. This means that there will be more days of the month that a woman may have to abstain if she wishes to avoid pregnancy.

~3'i'~

The first month, there may be 10 or 12 days that she must abstain. However, by about 3 months, if the woman has fairly regular cycles, it should only be 4 to 6 days; which is a very acceptable figure.
Next, the computer checks to see if the difference between the average cycle length ana the current day is greater than 7, i.e., is it 1 week or more? If it is, then Cl, the length of this month's cycle, is set to 7. On the other hand, if the day of the cycle is 10 greater than CL, in other words itls a long cycle, then Cl is set to 0. Finally, if it's in the middle ~DC is not greater than CL and CL-DC is not greater than 7) then Cl is set equal to CL~ the length of the cycle, minus DC, the day of the cycle. In other words, if 15 the average cycle length is 28 days and today's cycle was 26 days, then 28 minus 26 or 2 is stored in Cl.
When all this is accomplished, we are now to the point where DC can be set to 2 since there have been two periods in a row that occasioned two PI's at 20 level one. Since the day of the cycle begins on the first day there's blood, i.e., the first day a period occurs; therefore, today must be the second day by definition.

_ertility Status Routine We have now reached Section D (F stat routine) of Flow Chart Fig. 3. It is at this point in the opera-tion of the fertility computer that the cycle error status ER, pregnancy status PR, and of course, fertility status FS, of the user are computed. If the user were using the fertility computer simply to view her cycle error, ~3~

pregnancy or fertility status, then the operation of the fertility computer essentially begins at this point. The symbol "x" on the diagram indicates that the direct mode of operation branches in here.
In the RAM 13 of Fig. 2 are three byte-long areas of contiguous memory which are labelled ER, PR and FS.
These areas of RAM 13, i.e., ER, PR and FS hold values corresponding to the cycle error status, the pregnancy status and the fertility status, respectively. In the 10 present embodiment, the various statuses can vary from a value of zero to two-hunared-and-fifty-five. If a particular status is zero, then i~s respective indicator~ a simple LED, is in the "off" status. If a particular status is two-hundred-and-fifty-five, then the indicator LED
15 (either 56, 58 or 60 of Fig. 1~ is made to flash at its maximum rate of about four Hertz. At intermediate status values, the corresponding LED is made to flash at inter-mediate rates. The RAM 13 areas for storage of ER, PR
and FS in the present embodiment, are one-byte long, 20therefore it is not possible to increment them past two-hundred-and-fifty-five; however, it is apparent that if desired, additional storage space can be provided.
The first thing the computer does is check to see if any of the flags Fl-F3 have been set indicating pos-2-5sible errors. Through the F-bus 26, the microprocessor 9 checks to see if any of flags Fl, F2, F3 or F4 of 5 are set. ~s indica-ted in Section ~ of the Flow Chart, column ~.~,.g~

1, if either of flags Fl, F2 or F3 are set then the ER value of RAM 13 is incremented by two-hundred-and-twenty-three. If flag F4 is set; then the ER value of RAM 13 is incremented by one-hundred-and-twenty-seven (column 2). The purpose of this step is toincrease the ER value of RAM 13, i.e., the cycle error status; ir any of the fla~s of group registers 5 have been set indicating that a cycle error has occurred.
Next, the microprocessor 9 searches through 10 register group 3 using an algorithm which finds the most recent cycle which had the sho~test cycle length but was not seven or more days shorter than the average cycle length, i.e., the algorithm finds the smallest n where Cn is largest but wherein Cn does not contain a 15 value of seven. (Note: The structure of register group 3 is such that the larger the contents of a certain register then the shorter the leng-th of the cycle which it represents. It should also be understood that iE the fertility computer is built from discrete logic circuits 20 then the above step, as well as other steps described in this description, could be accomplished with logic gates forming a comparator circuit and without the need for an algorithm.) Once the desired cycle is found, the micro-processor 9 checks to see if it is within the last five 25 cycles, i.e., n = <5, because if the shortest cycle occurred more than five months ago, it is permissible to find and use the next shortest menstrual cycle. The contents of the particular register chosen above is placed by the microprocessor 9 into the RAM 13 area 30 called TV, meaning Tempoxary Variable. The TV represents the value of the user's shortest cycle length and is phy-sically stored in RAM 13. It represents in essense the dif-~erence between the number of days of the shortest cycle 3t7~

length and the average cycle length. For example, the com-puter essentially scans through previous cycles and ~inds that four months ago the user had a cycle length which was only 24 days while her average cycle length is 27 days.
Her shortest cycle was 3 da~s shorter than her averaqe cycle length. In this case, a TV=3 is put into RAM 13.

C mpute Differential ~ eferring now to Section E of Flow Chart Fig. 3, the microprocessor 9 then checks register yroup 3 to lO see if any menstrual cycles recently occurring were really short, i.e, are the conte~ts of Cl or C2 or C3, equal to seven. This and the previous step are im-portant in accurately predicting the time of ovulation.
If the user previously had short menstrual cycles then 15 statistically there is good reason to believe that this may happen again. If the more rigid method of using a fixed, predetermined time interval from the beginning of the menstrual cycle in order to predict ovulation is used, then there is a good chance that on occasion the 20 predicted time of ovulation will be after ovulation has already taken place~ an event that could prove unfortunate to a woman using such a device for pur-poses of contraception. In contrast, the flexible statistical method of predicting time of ovulation 25 used by the present invention, is combined with a method of predicting the time of ovulation based with a method of predicting the time of ovulation based on the current status of various body parameters to allow the most accurate prediction of the time of ovu-30 lation. Thus, if either of Cl or C2 or C3 are equal toseven, the microprocessor 9 increments the value of TV
in RAM 13 such that if TV was previously less than four (see column 3) it is incremented by three, otherwise, ~372~

it is incremented by two (see column 2)~ Next, the microprocessor 9 once again checks r~gister group 3 to see if in the past there were any very short cycles, i.e., do any two of the registers of 3 cor-responding to four or more cycles ago have values ofseven stored in them. If they do, then the micropro-cessor 9 increments the TV of RAM 13 by two if the TV
previously was less than four, otherwise by one. ~n explanation, the TV is incremented somewhat more when 10 a very short cycle occurs more recently. Although there is a chance it may happen again, if a very short cycle or two occurred nine ~onths ago, there is a smaller probability than if`a very short cycle occurred only two months ago.
As previously mentioned~ unless the re~ister groups 3-6 of the fertility computer 4~ are previously pro-grammed, for example, via the expansion interface socket 30 and I/O bus 15, using an external device with the user's gynecological and other histories, then there 20 must be a mechanism to compensate for the fertility computer's ignorance of its user's characteristics dur-ing the first few months of use. Thus, if the value of the CN register of 6 is one then TV of RAM 13 is incre-mented by two, if the CN is equal to two then the TV
is incremented by one. Other similar sorts of compen-sation may be employed.
It should now become apparent that the more likely the user is to have a very short cycle or the larger the dearth of statistical information accumulated on the user then the larger the value of TV will be. I~ith this in mind, the microprocessor 9 now computes what is called the "differential" as follows:

9~b i - Fetch the value of CL from register 6.
ii - Subtract fourteen from the value of CL.
iii - Subtract from the above intermediate result the value of TV in RA~ 13 iv - S~btract three from the above inter-mediate result and place the new result in the area of RAM 13 labelled DF.
v - If the value of DF is less than five then place the value of five in the DF of RAM 13.
The "differential" DF is part of the mechanism which allows the fertility computer to predict the time of ovulation. Note that it is related to the average cycle length, i.e., the value stored in the CL register of 6. If the user has short cycles on the averaae, then 15 the differential is smaller. This is important because the differential tells the fertility computer on what day of the current menstrual cycle to be alert for the reasonable probability of the earliest possibility of con-ception resulting from intercourse. Since ovulation is 20 normally fourteen days before the next menstrual cycle, fourteen days are subtracted from the average cycle length to inaicate on what day of the current cycle ovulation is statistically most likely. Since the medical literature indicates that even women with regular menstrual cycles 25 may ovulate a day or two earlier than expected, and since sperm may survive two to three days in the female genital tract, a ~alue of three is also subtracted from the cycle length to give the _arliest day of the current cycle on which to expect conception if intercourse results.
30 Furthermore, if the TV in RAM 13 is non-zero, then this too must be subtracted from the average cycle length, thus producing a smaller differential which indicates that conception resulting from intercourse may occur even , ~9~

earlier. For example, if the user has an average cycle length of twenty-eight days, and a value of one in TV of RAM 13, then her differential is 28-1-14-3, or ten. That is, statistically the fertility computer indicates that the S u~ser may conceive, if intercourse occurs, as early as after the tenth day of her current menstrual cycle. It is important to remember that this is a statistical predic-tion of the time of ovulation and that the fertility com-puter uses this result along with ~i) the current status 10 of dynamic body parameters, and (ii) the consistency of the cervical mucus in order to accurately predict when ovulation will occur and uses this prediction in the com-putation of fertility status. If a cycle error occurs, then the error status is incremented, as described above, 15 and although not shown, it may be desirable to incorporate any cycle errors which have occurred into the TV of RAM
13 or directly into the differential such that the latter is reduced even further.

20 Update Temperature Base We are now at Section F of the Flow Chart of Fig. 3, which has nine principal columns as shown. ~t this poin-t, the microprocessor 9 must update the contents of register group 4, in other words, bring the basal 25 body temperature measurements up-to-date. Of course, if the user is at the time simply using the ~ertility computer to check her fertility or other statuses, i.e., and she has not entered her basal body temperature and other relevant parameters, then this step is skipped 30 entirely by the fertility computer. Internal flag Ql enables the temperature update to be skipped. But assuming an up-date is being entered/ the mi~roprocessor 9 via the F-bus 26 checks to see if flag F7 of 5 is set. If it is set, then this means the rise in basal ~L9~2~

body temperature associated with ovulation and the subsequent drop which occurs if the ovum is not fertili~ed have already occurred, and thus, the routine of Section F can be skipped. Also (see column 3) if the value of register DC of 6 is two or less then it is too early to expect a rise in basal ~ody temperature associated with ovulation and too unstable to compute a median temperature and so the routine of Section F step would be skipped. The microprocessor 9 then (~ee column 4) compares the value of register DC of 6 with the differential arrived at above, i.e., DF of RAM-13. If the current day of the cycle (DC of 6) i5 less than or equal to the differential (DF o~ 13) then it is quite unlikely that ovulation and hence a rise in basal body tempera-ture has occurred at this time, because it is now near the end or after the user's period and thus, serum pro-gesterone levels have aropped and consequently so has the basal body temperature. Thus, since at this time and continuing until one day after the differential, it is quite unlikely that the basal body temperature is elevated, an average (albeit weighted) basal body temperature is computed and stored in register MT of 6 (see column 9). If today's discrepancy level entry was a two, then as part of the filtering mechanism today's basal body temperature is not stored in regis-ter group 4 nor is it used in the computation of the average non-elevated basal body temperature, i.e., this whole step is skipped (see column 8). If the ~icropro-cessor 9 finds that the value of register TC of 6 is zero(see column 9) then this means that today is the first day that an average temperature is being computed, and so, to start the process off, the absolute value of the ~L937;~à

temperature measured today is retrieved from RAM 13 by the microprocessor 9 and placed in the MT register of 6. If the value of register TC of 6 is less than ten, then it is incremented by one. Now the average non-elevated basal body temperature is computed. In doing so, the filtering mechanism takes into account whether a discrepancy level one was entered by weight~
ing today 1 5 temperature measurement less if the latter is true.
On the other hand, if the current day of the cycle is greater than the differential, i.e., the value of register DC of 6 is greater than DF of RAM 13 but the rise in basal body temperature associated with ovula-tion has not occurred yet, i.e., flag F5 of 5 is no~
set, then today's temperature reading is simply filtered and stored in register group 4. The following routine - is followed ~column 5).
i~ If the value of DC of 6 is equal to the value of DF of RAM 13 plus one, then set TC of 6 20 to zero. tTC is reset }~ecause the point in cycle has been reached where temperature values are stored in register group 4 and register TC of 6 is adapted to contain a value corresponding to how many valid telipera-ture readings have been stored in register group 4 25 for this portion of the cycle.) ii. If today's discrepancy level ~ntered was equal to two then the remainder of this entire step is skipped because the temperature reading is unfit to be used.

1~937%t~
~4-iii. Shift the contents of register group 4 by one register to the right.
iv. If the value of register TC of 6 is less than ten, then increment register TC of 6 by one.
v. If the absolute value of today's temperature reading minus the value of register MT of 6 (the non-elevated averaged basal body temperature~ is greater than a certain threshold value (which is speci-fied in the program storage area 14 and is a function of the sensitivity setting input 33) then set the high order of the two bits stored in register Tl of ~.
vi. If a discrepancy level one input was entered today then set the low order bit of the two bits used in register Tl of 4.
If, on the other hand, flag F5 of register group 5 is set, then this indicates that the rise in basal body temperature associated with ovulation has occurred.
However, since the microprocessor 9 determined above that flag F7 of 5 was not set, two things must be done by the fertility computer. First, during the three days following the rise in basal body temperature, this new elevated temperature must be measured each day for three days so that a new elevated basal body temperature aver-age can be stored in register MT of 6. As above, this temperature averagè is weighted in favor of those days when a zero level discrepancy input is entered. Second, starting four days after the completion of the rise in basal body temperature, i.e., four days after flag F5 of 5 becomes set, the absolute value of the daily basal body temperature measured is compared with the value of register MT of 6. As before, if the measured tempera-.. ..
7%6 ture crosses threshold (i.e., the difference of the value of MT of 6 minus the absolu-te value of today's measured basal body temperature is greater than a certain threshold value which is speciEied in the pro-gram storage area 14 and is a function of the sensitivitysetting input 33) then the high ~it of the two bits used in register Tl of 4 is set. (NOTE: Register Tl of 4 is empty because,as above,the contents of regis-ter group 4 have been shifted by one register to the 10 right with register TC of 6 keeping track of how many valid temperatures have been stored after flag F5 of 5 was set.~ If a level one discrepancy input was entered today, then the low order bit of the two bits used in register Tl of 4 is set. It should be mentioned 15 that as before, if a discrepancy level two input was entered today, then as part of the filtering mechanism the temperature reading is considered unfit and thus, the entire step is skipped.

Compute Fertility Status Now that the temperature measurement register group 4 has been updated, the Eertility computer can move on to the next step and compute the fertility status Section G.
Although the day of the week was previously incremented, the new day of the week has not been displayed yet. Thus, 25 the microprocessor 9 fetches the value of register DW of 6 through the F-bus 26 and sends this value through the I/O bus 15 to S/C #5 (21) which causes the LED corres-ponding to the appropriate day of the week to go on.
The fertility status is calculated mainly from the 30 day of the cycle equal to the differential DF to the day of the cycle when flag F5 of 5 is set. Since flag F5 ~93'7~

of 5 is not set until at least two days after ovulation, it is presumed that after this day, the ovum is no longer capable of being fertilized and thus the user's fertility status is zero. Before the day of the cycle (i.e., DC< DF) equal to the differential DF it is unlikely, based on statistical assumptions, that ovulation will occur.
However, since on occasion, ovulation may occur quite early in a woman who normally has regular men-strual cycles, a structure exists in the present inven-10 tion to correlate changes in the status of variousdynamic body parameters with the user's fertility status.
In the case of the prototype fert~ility computer being described, if before cr on the day of the cycle equal to the differential the value of DM of 6 is greater 15 than or equal to four, then the fertility status, i.e., FS of RAM 13 is incremented by a multiple of thirty-two where the number of multiples is given by the value of register VM of 6. (See column 3.) On the other hand., if the day of the cycle is such that it is greater 20 than the value of the differential DF and if the basal body temperature rise is not complete yet, i.e., the value of DC of 6 is greater than the value of DF of RAM 13 and flag F5 of 5 is not set, (See column 1 Section G at DC~ DF and F5=0?~ then computation of 25 the fertility status is somewhat more complicated.
In this sense, the computer represents a more realistic point of view. During this part of the cycle there is a degree of uncertainty, you could be fertile or you could not. And this is important, first for ) the couple that wants to have a child, so that during the day of peak fertility they should try to have intercourse many times for the best possible results, while perhaps, if the fertility light is blin~ing a little bit less, there is not sufficient reason to expend all that energy. Secondly, for someone using this device as a contraceptive, it is important also to know the relative degree of fertility. If, for example, the user is a single woman who doesn't want to get pregnant at all, and the light is on even a little bit, she should use another type of contracep-tive and not take any chances if she wants to get to 99~ reliability. But, if the user is married and doesn't desire children for a few more years, but not to the extent of abstaining ten days a month, she may choose to abstain only three or four days a month when the fertility status is at maximum.
The microprocessor 9 first checks register group 4 to see if there are at least two temperature measure-ments which have crossed threshold (See column 2).If two such temperature measurements are not found, then it appears that ovulation has not occurred yet so that the ovum is no longer viable and thus the user must be alerted to her fertile status. The fertility status, or FS of RAM 13, is thus incremented a certain amount based on the following factors:
more so if a cycle error occurred last month, i.e, flag F4 of 5 is set (F4=0?), if the current day of the cycle is closer to the statistically expected time of ovulation (DC ~CL~ 3), if a mucus change input was entered after the day of the differential, i.e., the value of register DM of 6 is greater than DF of RAM 13 (DM~ DF~) !

''' ' .

~Lg~
.

the greater the level of the mucus change input, i.e., the value of register VM of 6 and the more recent the day the last mucus change input was entered, i.e, the greater the value of register DM of 6.
The above can be seen in the flow chart Section G
at column 2 where the value of FS is initially deter-mined by one of four equations depending on whether the day of the cycle is greater or less than CL-14-3 and whether F4=0 as follows:
Equation 1:
F4=0?=YES
DC> CL-14-3?=NO
Then FS-FS+16.~DC-(DF*l)]

Equation 2:
. _ F4=0?=YES
DC~ CL-14-3?=YES
Then FS-FS+32.[DC-(DF+l)]

Equation 3: -F4=0?=NO
DC~ CL-14-3?=NO
Then FS--FS+32.(DC-DF) Equation 4:
F4=0?=NO
DC> CL-14-3?=YES
Then FS=FS+64.(DC DF) ~93'72~i On the other hand, if the microprocessor 9 has found two temperature measurements which have crossed threshold it proceeds to column 3 and employs the algorithm shown to determine whether or not a temperature rise indicative of ovulation has occurred. This algorithm is the last component in the mechanism which filters the temperature measure-ments. Basically, it requires that in order Eor the conclusion that ovulation has occurred to be reached there must be three recent temperature measurements in a row which have crossed threshold or at least four recent elevated temperature measurements with perhaps a nonelevated measurement stuck in the middle. Additionally, the requirements of the algo-rithm become more rigid if the current day of the cycleis still several days before the statistically expected day of ovulation or if there are level one discrepancy inputs alongside the various temperature measurements.
If the fertility computer determines that a basal body temperature rise indicative of ovulation has occurred then ~See column 5 or 3a or 3b) flag F5 of 5 is set, register TC of 6 is reset to zero, and since ovulation occu~red at least two days-ago the fertility status, or FS of RAM 13, is kept at zero. If the fertility computer does not think that ovulation has occurred for cer~ain, then the fertility status will be computed as before, but it will be somewhat less depending on the probability that ovulation might have already occurred two days ago, which would be based on the number of elevated temperature measurements, when they occurred and how many discrepancy level one inputs are associated with them.

~93~7;~

Compute PR Status If flag F5 of 5 is set indicating that ovulation has taken place but flag F7 of 5 is not set indicating that basal body t~emperature has not returned to base-line yet, then the fertility computer must determinethe user's pregnancy status, as shown in Section H of the Flow Chart. If the ovum is fertilized success-fully, then the serum progesterone level remains ele-vated and so does the basal body temperature. If the value of register TC of 6 is not greater than five ~TC ~ 5?), i.e., if at least six days have not passed since it was determined that the-basal body temperature was elevated indicating that ovulation had occurred two days before, then an insufficient number of -temperature readings have been stored in register group 4 and so this step is skipped entirely today. If there are a sufficient number of temperature readings stored in register group 4 then the microprocessor 9 checks the latter to see if there are three recent depressed tem-- 20 perature measurements or four recent depressed measure-ments with an elevated one in the middle. As above, if more temperature measurements are encountered which correspond to a discrepancy level one input then the fertility computer is less likely to indicate that the criteria ror return to baseline basal body tempera-ture have been met. If the fertility computer deter-mines that a return to baseline basal body temperature has occurred! then flag F7 of 5 is set and the preg-nancy status, or PR of ~AM 13 is kept at zero since the return to baseline basal body temperature indicates that successful fertilization of the ovum did not take place. On the other hand, if the current day of the cycle exceeds the average cycle length by two days (DC> CL+l) and a return to baseline basal body tem-perature has still not occurred, then it is possible that successful fertilization did take place. In this case, the pregnancy status, i.e., PR of RAM 13 is incremented in multiples of twenty where the number of multiples is given by the number of days the current day of the cycle, i.e., the value of register DC of 6, exceeds the average cycle length~ i.e., the value of register CL of 6.

Next Period and Disp ay The fertility computer now determines, as shown in Section I of Fig. 3, if the user is expected to have a period within one week of the current day of the cycle, i.e., if the value of register DC of 6 is within seven days of the value of register CL of 6. If so, then the day of the week of the commencement of the expected period is equal to the value of register CL
of 6 minus the value of register DC of 6 plus the value of register DW of 6. If a negative result or a result greater than seven is obtained, then the microprocessor -9 adds seven or subtracts seven to the previous result to give the day of the week the next period is to begin on. The microprocessor 9 then instructs S/~ #5 (21) via the I/O bus 15 to indicate on indicator 28 that this day of the week is the expected commencement of the next period, in which case, an LED corresponding to the particular day of the week begins to flash.
The microprocessor 9 now accesses to the RAM 13 3~ via the data/address bus 12 and fetches the values of ER, PR and FS in RAM 13. The microprocessor 9 then ~7~

transmits these values, via the I/O bus 15, to S/C #7 (~5), S/C ~8 (24) and S/C #9 (23), respectively and the error status, preynancy status and fertility status are respectively indicated on indicators 36, 35 and 34.
As mentioned before, indicators 36, 35 and 34 consist of one red LED each. If the particular status value is zero then the particular LED is turned off. If the particular status value is maximum then the par-ticular LED flashes at the maximum rate of about four Hertz. If the particular status value is intermediate then the particular LED flashes at an intermediate rate.
In order to extend battery ~ life if the user does . not turn off the On/Off siwtch 1, then the micropro-cessor 9 will automatically do so after a certain time interval, as determined by the program storage area 14 and the programable timer 11.
Tahle 1 below lists readily available sources for parts to manufacture the fertility computer herein described.

372~i The item numbers refer to the block diagram, Fig. 2.
A n~nber in parentheses indicates how many of the part are required. Note the following abbreviations:
TI = Texas Instruments, YSI = Yellow Springs Instruments, A-B = Allen-Bradley.
Item Description Manufacturer _art 1 On/Off Switch, SPST Alcoswitch SLSA-120 2 Battery, 4 C cells Eveready (4~ ~93 10 3Non-volatile memory register Fairchild F4731 6 " " " "
7Self-test circuit (2 parts) Motorola lN4730 15Motorola LM 339
8 Self-test indicator (LED) TI TIL224
9 Microprocessor Intel 8080 Oscillator " 8224 11 Timer " 8253 20 12 Interconnection wiring "
13 RAM Signetics 82S09 14 ROM Intel 2716 Interconnection wiring 30E~pansion interface socket TRW DEC-9S
25 17 Signal conditioning #4 TI SN75451B
18 S/C ~1 TI SN7414 19 S/C ~2 National ADC0808 S/C #3 " "
21 S/C #5 TI SN75497 30 22 S~C #6 " "
23 S/C ~9 " "
24 S/C ~8 " "
S/C #7 " "
26 Interconnection wiring 35 27 S/C #10 National ADC0808 28 Day-of-week LED display TI (7) TIL224 29 Keyboard switches . Alcoswitch(6) MSP-103C
108 Mucus probe, as described in body of application 31 Recording indicator LED TI TIL234 40 32 Temperature probe YSI 44106 33 Sensitivity setting A-B RP103U
potentiometer 34 Fertility status LEV TI TIL228 Pregnancy status LED " "
45 36 Cycle error status LED l "

.
Equivalents In describing the present embodiment, very little attempt has been made to discuss possible variations.
Alternate aspects of the present invention are now presented in a more comprehensive manner.
Since the fertility computer can interface with a digital general-purpose computer it could be used to form the structure of the following devices or be used in coordination with the following devices and/or in
10 the embodiment of the following devices or any com-bination of them: alarm clocks, wristwatches, time-pieces, articles of clothing, calculators, biorhythm computers, horoscope computers, eyeglasses, or in embodiments suitable for use with animals. If combined 15 with a radio, for example, the radio could play a tune while a temperature measurement is being taken. Or if combined with an alarm clock, the latter could remind the user not to miss a temperature reading.
It should be mentioned that the same factors which 20 determine fertility status i.e., mucus change and BBT
change, also determine ovulation status. Accordinyly, it is contemplated that the apparatus herein rnay be equally employed to determine whether ovulation has occurred.
The possible input and output devices, whether built into the fertility computer or attached through the expansion interface socket, include the following and any combinations thereof: a stand-alone device which can access or change the internal registexs, 30 a device to allow any general purpose computer to access or change the internal registers, multi-colored LED's or other point-viewed light sources or devices changing the intensity or color of light viewed such as LCDs, alphanumeric displays, alphanumeric or graphics printers, chart recorders, aural indicators, such as voice circuits, tones and alarms, additional indicators indicating the status o~ whatever internal register desired, tactile indicators, temperature pro~es Eor use in any body cavity or for use by skin contact or for use in body folds, input switches of a mechanical or electro-static or resistance change or capacitators or magnetic nature being sealed or not, ultrasonic probes, probes 10 which help detect ovulation by changes in the body's bio-electrical potentials, probes which help detect ovula-tion by changes in the vaginal and~or cervical fluid and mucus physical properties, probes which help detect ovu-lation by change in biochemical properties (for example, 15 an increase in glucose concentration of the cervical mucus), timing devices, calculator keypads, compute~
terminal keyboards, or speech-recognition input.
The basic structure of the fertility computer shown in Fig. 2 may be enhanced by providing more registers 20 and additional RAM along with the appropriate algo-rithms to enable it to do the following or any combina-tion thereof: use by more than one user, storage of the actual or coded temperature measurements for extended periods of time, diagnostic gynecological computer, 25 storage of the actual or coded cycle lengths for extended periods bf time, redundant flag and miscellaneous resis-ters, redundancy of all registers, redundancy of battery, redundancy of all parts, user aid (i.e., instructing the user how to use the device~.

'2~i ~ he preferred embodiment of th~ pxesent invention described above should prove to yield the most accurate results concerning the user's fertility status. How-ever, for reasons of simplification and resultant economy, the fertility computer described above may be stripped of some of its features, although still retaining the spirit of the present invention. For example, consider the alternate embodiment of the fertility compu-ter presented below.
Fig. 5 depicts an arrangement of the components of the alternate embodiment of the invention comprising a simplified version of the fertility computer 101. An LED 103, preferably red in color,~is "on" if the user's fertility status, as computed-by the fertility computer, 15 is in the significant range; i~ is "off" if the fertility status is deemed to be insignificant by the computer.
Switch 104 is used to turn the unit "on" or "off".
Switches 105, 107, 109 and 111 allow the user to enter information to the fertility computer. Instructions on 20 how to use the device are displayed in a prominent loca-tion 118.
Fi~ 6 is a block diagram of an economy version of the fertility computer. The battery voltage is constantly applied to shift register 164 via buss line 162 so that 25 the contents of register 164 remain non-volatile. The voltaye from battery 152 is applied to the remainder of the circuit via buss line 161 and is volatile in that "on/off" switch 151 may connect or disconnect the battery 152 to buss line 161~

..

~3~

A microprocessor 159 is used as the controlling element in this circuit~ although as mentioned previously, discrete logic circuits could be substituted to do the same function. A data bus 191 connects the micropro-cessor 159 to working read/write RAM memory 171 andread-only program storage memory 172. An input/output buss 193 connects the microprocessor 159 to input switches 177 and output indicator 179. Signal conditioner #1 ~181) receives inputs from the keypad 177 and outputs them onto the I/0 buss 193. ~ignal conditioner #2 (183) receives an input from I/0 buss 193 and outputs it to the fertility status indicator 179 which is a red LED.
~ The microprocessor 159 is cohnected to the 8-bit shift register 164 via the F-~uss 185. The 8-bit shift register 164 is divided into four groups of 2-bit values, called Ml, M2, M3 and M40 Ml 141 corresponds to the data entered most recently while the contents of M4 144 would correspond to data entered four days ago, for example. Register group 164 is shifted by two bits to the right each day. If the "mucus change" switch, SW4 of 177 is pressed, then the high order bit of the appropriate two-bit register is set. If the "discrepancy"
switch, SW3 of 177 is pressedr then the low order bit of the appropriate two-bit register is set. This is described in further detail below in connection with the logic charts.
Table 2 below lists typical components available for constructing the circuit depicted in Fig. 6.

~L193~7~6 Component Reference Number iII ' Supplier h 5 Fig 6 Description Part Number 151 On/off SPST switch Priority One Elec-tronics, CAL-ST
152 Battery 4C cells Eveready E93 159 Microprocessor Motorola ~MC6808P
160 1.00 MHz crystal Priority One Elec-tronics, ~XTL 1.000 164 8-bit shift register(CMOS) Motorola ~4014-B
171 1024 x 1 RAM Motorola ~2102AN-2 172 1024 x 8 EPROM Motorola #27~8 177 Momentary-contact push- Jameco #Kl9 button switches 179 Red LED Priority One Elec-tronics #LED -.
181 Line receiver Motorola #MC1489P
183 Line driver Motorola #lYC1488P

Sample components which are both inexpensive and readily available are listed in Table 2.
Fig. 7a-c depicts the iogic utilized in the economy 20 fertility computer of Figs. 5 and 6. Section A is used to allow the user to enter information on the status of one of her dynamic body parameters, in this case the quality and quantity of her cervical (or in some cases, oral) mucus. As previously mentioned, during most of -59~

the menstrual cycle, the cervical mucus is considered dry or tacky, but as ovulation approaches, there is a change in the quality of the mucus to a wetter, more elastic consistency, and often an increase in ~uantity also results. When the user e~periences this "change in mucus" switch SW4 of 177 (Fig. 6) is pressed, and hence, the condition SN=4 in column 2 is true and thus MI in shift register 164 is set to one, as indicated in column 3. Similarly, if a user is not e~actly sure 10 of her cervical mucus status due to an on-going period, vaginal infection, intercourse the previous night, etc., then the discrepancy s~itch SW3 of 177 is pressed, and hence condition SN=3 in column 2 is true and thus DI is set to one, as shown in column 3. If the user ma~es an 15 error in entering information,e.g. she hits the wrong key, then the clear switch SWl of 177 is pressed, and hence the condition SN=l in column 2 is true and thus DI and MI are reset to zero, as shown in column 3. When the user finishes entering the appropriate information she presses the display switch SW2 of 177, and hence, the condition SN=2 is true and thus, as shown in Fig. 7a, the logic progresses to section B on Fig. 7b.
The function o section B is to store the information entered in storage register 164. First, the register 25 group 164 is shifted two bits to the right, such that M~=M3, M3=M2, M2=Ml and Ml is cleared. Then the high order bit of Ml is set if MI is equal to one, and the low order bit of Ml is set if DI is equal to one. The logic then progresses to section C on Fig. 7c.

~3'~26i The fertility status of the user is computed in accordance with the logic of Fig. 7c Section C. If there has been a change in mucus noted over the last four days, i.e., if the high order bit is set in either Ml or M2 or M3 or M4, then the fertility status, FS, is set to 255, as shown in column 2. If there has been a discrepancy noted over the last two days, i.e., if the low order bit is set in either M1 or M2, then the fertility status, FS, is set to 255, as shown in column 10 2. If the fertility status, FS, is zero then the fer-tility status indicator 179 remains off, but if it is e~ual to 255, then it is turned o~.
In this manner above-described, a simple, relatively inexpensive device is provided wherein fertility status 15 is computed taking into account information with respect to: (1) the status of a user's body parameters indlcating the onset of ovulation, i.e, mucus change and (2) certain discrepancy factors which might indicate unreliability of -measurements in (1) above. This information is stored 20 in memory and the information in (1) is weighted in accordance with (2) and then used to predict fertility status.
The invention has been shown in detail above in an economical but accurate embodiment and in a stripp~ed 25 down economy embodiment. Below is shown an embodiment, which reduces cost by making use of advanced semi-conductor products but includes many additional features. A variable listing (Table 3) and a flowchart (Figure 13) similar in style to those above are pro-30 vided herein to enable one skilled in the art-to construct a fertility computer with the following additional features:

i. advanced self-test freatures, as shown in Figures 13a, 13b and 13c.
ii. a low-power timer (207) allowing memory (208) to be reset automatically by the microprocessor (204) if the invention is not used by the user for an ex-tended period of time, as shown in Figures 13a, 13kk and 13ll.
iii. a low-power timer (207) allowing the user to obtain only one basal body temperature (BBT) value per day and to automatically enter skipped days into the memory (208), as shown in Figures 13d and 13e.
iv. a mechanism to smooth out erratic temperature transients as shown in Figures 13v, 13w, 13x, 13a, 13mm and 13aa.
v. a mechanism such that if the user opens her mouth during temperature taking the computer allows temperature to bould up to its pre-existing level before continuing to count away the seconds to the aproximately 5 minutes the probe must remain in the mouth, as is shown in Figures 13g, 13h and 13j.
vi. a mechanism to require full temperature measurements only during certain days of the menstrual cycle, obviousoly of convenience to the user, as shown in Figure 13g.
vii. a mechanism using low-power timer (207) to adjust measured BBT values in relation to the time of waking and to discard those BBT value obtained when the user wakes up too late, as shown in Figure 13w, 13n and 13o.
viii. a mechanism to allow the user to take her BBT (basal body temperature) upon waking, then turn the unit "off" to extend battery life, and then later, at her convenience turn the unit "on" to press the appropriate factor buttons 219, 220, 221, 222, 223, 224 or 225, as shown in Figure 13e and 13f.

~3i7~

ix. a mechanism which automatically varies the BBT threshold level; the threshold is appropriately adjusted for women with large or small BBT ovulatory rises as shown in Figure 13ff and 13z. Threshold is also reduced toward the end of the menstrual cycle if ovulation has not yet occurred, as shown in Figure 13jj.
x. a mucus probe 315 shown in Figure 14 which may be connected to microprocessor 254d to allow an objective measurement of mucus quality.
Since these advanced features make for a more costly invention also below is shown in Figure 17 a temperature probe 400 which incorporates a custom chip 413 in order to replace costly components require~ in signal conditioner #3 127.
Referring now to Figures 8a and 8b, a preferred embodiment of the external configuration of the advanced version of the ferility computer 287 is shown.
The fertility computer 287 is enclosed in a small case 288. This case includes in the interior, the various computer chips and printed circuit-boards making up the computer and, in addition, contains batteries that power the computer. A rotatable lid 289 is attached to the case 288 by a hinge 283 Mounted on the case 288 of the computer are eight momentary pushbutton switches 258, 259, 260, 261, 262, 263, 264 and 265. An ON-OFF power switch 251 and seven LED
~Light Emitting diode) lights, 266, 267, 268, 269, 270, 271 and 272 are also disposed on case 288. Protruding through the case is a cable 282 which connects the temperature probe 274 to the fertility computer 287.
When not in use, the temperature probe 274 rests in two holders 284, 285 attached to the cover 289.

~93~

As may be seen more clearly in Figure 8b, screws 297 hold a printed circuit board containing the above mentioned indicator lights, input switches and internal electronics. For cosmetic reasons screws 297 are mounted flush and may be covered with a label or with print. The front panel of the case is divided into three areas 291~ 299, and 298 which enclose various switches ar,d indicator lights~ Legends are provided 292, 293 and 294 correspond respectively to areas 291, 299 and 298. Arrows 290 below the legends direct the user to the sequence of operation of the invention.
This sequence of operation may also be described in labelled instructions (not shown). An emblem 296 indicative of the product and/or company name is mounted on the same surface as the switches and indicator lights.
Such an emblem 296 may also be mounted or printed on the reverse side of lid 289. Although lid 289 is shown in Figure 8a mounted on one end of the case 288, the hinges 283 may be positioned elsewhere so that the lid mounts and flips over one of the sides of the case.
The green LED 266 "Take Temp" flashes during temper-ature measurement to prompt the user to keep the temper-ature probe in her mouth. Five red LED's 267, 268, 269, 271, 272 indicates, respectively, low battery, computer working (works), fertility, pregnancy and ovulation~
The remaining LED 270 is green and indicates infertility.
Switches 258, 259, 260, 261, 262, 263, 264 are, respectively, period, up, stress, sick, hot/cold, mucus, and clear. These buttons are used to enter ~ata relevant to the computer's algorithm. Switch 265, display, is pressed to obtain the current fertility status.

~g~7~!~

Gen_ral Functional Description A yeneralized view of the intexnal electronics for the fertility computer 287 are shown in block diagram form in Figure 9a.
When the fertility computer is turned "on" by moving the On-Off switch 201 to the "on" position, the voltage from battery 202 is applied to all of the structures in Figure 9aO Even without switch 201 being "on", however, power is normally applied from battery 202 through lead 202a and returns 205a to the timer oscillator 206, programmable timer 207, and RAM (Random Access Memory-variable storage) 208. Power in the "off"
condition of switch 201 is supplied to the oscillator 206 and timer 207 so that the computer's cloc~ may be left running and to the RAM 208 so that the program variables stored there may be maintained. Alternati~ely, the RAM 208 could be replaced by some sort of non-volatile memory. However, such devices are presently not economical. Instead, current technology is used to economically produce memory devices that draw negligible power when not being accessed.
Once energi7ed, the microprocessor 204 follows a general self-test algorithm to ensure that all components are in working order. Several features embodied in the self-test are the checking of the switches, the reading of the battery voltage and per-forming arithmetic operations on the RAM 208 and ROM
209. Furthermore, to demonstrate to the user that all of the LED's 210, 211; 212, 213, 214, 215 and 216 are functional, they are sequentially turned "on" and then "off" by microprocessor 204. After a successful test, the "WORKS" LED 212 will remain lit and the "r.ow BATTERY" LED 211 will be unlit or "off".
Although some microprocessors do not require an external oscillator, the most ~eneralized case is shown 937~

in Figure 9A. Oscillator 203 provides microprocessor 204 with an appropriate clock. The microprocessor 204 is also connected via line 218 to the programmable timer 207,the RAM 208 and the ROM 209. The timer 207 counts cycles from its own oscillator 206 and is polled by the microprocessor 20~ whenever the present time is needed; the RAM 20~ stores the variables necessary for computing fertility status.
As previously noted, to ensure that the time is always kept and accumulated data is not lost, power is applied to the timer 207 and the ~AM 208 through the power steering networ~ 205a when the power switch 201 is "off". The main function of the power steering network 205a is to allow power to flow to the timer oscillator 206, the timer 207 and the RAM 208 from either the user-replaceable battery 202 or the permanent battery 205 at all times. Thus, even when the user must replace the bat-tery 202, neither the time nor the algorithm variables are lost.
Although the same oscillator could be used for both the timer 207 and the microprocessor 204, separate oscillators have proven better insofar as power con-sumption is concerned. Generally, the faster a circuit runs, the more power it dissipates. ~ecause most current microprocessors require a minimum clock frequency well above one reasonable for low power operation of a count-ing circuit such as the timer 207, it is more practical to incorporate a separate low frequency oscillator 206 for the timer 207.
In the fertility computer, the program is kept in ROM 209 Although prograrn stora~e can be accomplished in RAM, as is the case in larger, general purpose corn-puters, for small, more specialized computing machines it is often more economical to store the program .

..3'~

permanently in a form of ROM (Read Only Memory) such as PROM
(programmable-), EPROM (Erasable Programmable-), EEPROM
(Electrically Erasable Programmable-), etc.
The I/O (Input/Out) bus 217 is a typical feature of microprocessor systems. Its function is to route the I/O signals to and from the microprocessor 204. The signal conditioners 217a 217b, 227, ~2~, 231, 233 and 23~b transform the input signals from external devices to signals which can ~e handled by the I/O hus 217 and vice 10 versa. Also, the signal conditioners accomplish low-level processing as required.
The contents of the RAM (variable storage) 208 may be accessed through the expansion interface 23~c.
If there is an input from signal con~itioner #7 234b, 15 the microprocessor is instructed to do one of a variety of functions. The external device (not shown) connected to the expansion interface 234c may ask the fertility computer to dump the contents of the ram 208 so that a physician may examine the collected data. Other func-tions possible through the expansion interface 234care modifying stored data, res.e~ting or initializing of the unit, modification of`algorithms used or, as will be described below, attachment of a mucus tester 315.
The temperature probe 228 could be any one of a number Of different temperature sensor devices. It could be a thermocouple, a thermistor, or a temperature sensitive semiconductor. An inexpensive sensor may be used because, as previously discussed, in the present invention, the algorithm necessary for fertility computation requires only relative differences in body basal temperature.
In contrast, if accurate absolute temperature readings were required, an expensive sensor with an accuracy of 0.05 to 0.1 degrees fahrenheit would ~e required. However, whether the temperature probe 228 measures 94 degrees or 99 degrees 35 is irrelevant. Rather, the signifigance in a temperature ` ~93';i~

reading lies in its relationship with readings taken on previous days. Day to day repeatability, not absolute accuracy is the important factor.

Table 3 DescriptionS

For convenience, as used here in the following terms, symbols and abbreviations are defined and summarized to mean:
Symbol Description -Bl value of discrepancy 1 input (switch #259, 260 B2 value of discrepancy 2 input (switch ~261, 262) s3 value of mucus input (switch ~263~
B4 value of period input ~switch #258) B8 Threshold 15 B9 Size of temperature rise B10 Size of Drop at end of cycle. Used in testing - for pregnancy.
BT Baseline temperature C(l~- C(l) is length of cycle 1 month ago.
20 C(8) C(8) is length of cycle 8 months ago.
each variable holds the length of that particular month's cycle CN Cycle number (need when new unit) CVT Compressed form of MlM and MlS
25 DC Day of cycle, first day - 1 DF Differential value (lst fertile day by calendar) DO Day of ovulation E(l)- Last 5 waking times (saved in compressed CVT
E(5) form--in CVT form, 1 count = 10.66 actual minutes~ ~

Symbol Description ESC Set if battery is low but still above absolute lower limit F4 Flag 4 - cycle error, last cycle greater than 40 days F6 Flag 6 - period occurred on most recent day (B4 value set) F9 Flag 9 - temperature pending F10 Flag 10 - mucus this cycle lQ Fll Flag 11 - unit initialized with cycle lengths, but no temperature taken yet.
This flag is set at the factory before the user first turns on the unit and remains on until the day immediately following the day on which the unit was first turned on.
FS Fertilitv status. Small value represents high fertility; large value represents low fertility.
20 HT High temperature - plateau value. Used in testing for pregnancy.
h Temporary counter i Temporary counter j Temporary counter 25 k Temporary counter M2 Internal equivaient to DC
M4M MlM and MlS minus 24 hours (used for real M4S time clock reset) M5 Temporary counter of days, used to normalize RTCM and RTCS

~ ~g~3 Symbol Description .. _ MlOM Time of waking minutes (stored in case of "back to sleep") MlOS Time of waking second (stored in case of "back to sleep") M20 Day (stored in case of "back to sleep") MlM Normalized RTCM and RTCS
MlS
N2 Number of "2" 's founa in T(l) to T(4) Pl Value of period input (switch ~258) 10 PR Pregnancy status (red LED 271) Ql Flag - if not set, this~is a display status only execution; no temperature is taken.
QT Quick temp if set (used for testing and debug) RN R~M save of RR
15 RPT Repeat, override RTC if set (used for testing and debug) RR Count of the number of reaaings in the . . measurement loop (A/D ~1) 254d RT Value of latest temperature reading 20 RTCD Unprocessed (raw) real time clock davs RTCH Unprocessed (raw) real time clock hours RTCM Unprocessed (raw) real time clock minutes RTCS Unprocessed (raw) real time clock seconds SS Sensitivity value measured (A/D) ~2 254d . --~o--Slvmbol Description T(l)'- Flags associated with last 9 readings (If discrepancy 2 is pressea, the temperature is not stored~
5 T(9) 0 Baseline/No discrepancy 1 See text 1 Baseline/Discrepancy 1 for further 2 Rise/No discrepancy 1 in~ormation 3 Rise/Discxepancy 1 TC Temperature counter (used with T(n) array~
10 TR Compensation value. Incremented at ovulation if temperature rise was unusually large.
TT Temperature val.ue measured (~/D ~0) 25~d TTO Temperature reading (stored in case of '1back to sleep") 15 ~T Usual time of waking V(l)- V(l) is most recent temp input V(9) V(9) is temp 9 readings ago XT Maximum temperature readiny so far . , , 7~;

..
In an actual implementation of the fertility computer, the electronics would be integrated in a somewhat different way than in the generali~ed computer o~ Figure 12a.
Oftentimes, IC's (integrated circuits) are designed to singlehandedly perforrn several different ~unctions. ~ir-cuits built around such chips generally used less parts, are more reliable, and are easier and cheaper to manufac-ture.
For example, in production prototypes, the internal 10 electronics have been built as shown in Figure 9b. The microprocessor 204, the microprocessor oscillator 203, the ROM 209, and most of the signal conditioning logic 227, 229 of Figure 9a has been replaced by a single-chip computer 254, an MC68705R3, manufactured by Motorola 15 Semiconductor Products Inc.
Instead of having an external I/G bus 217, the single-chip computer has three I~O ports 254a, 2S4b, 254c. Each I/O port has eight lines all of which may be individually set up as either a~ output line or an input line. Output 20 lines may be set either "on" or "off" under program control.
The state of the input lines may be read under program control.
In the present embodiment all t~e l~nes of I/O port C
254c are configured as "inputs" and are connected directly to the switches 258 etc. All the lines of I/O port B
254b are configured as "output" lines and are connectea to the status LED's 266 etc. I/O port A 254a is used as 2 bi-directional data bus to communicate with the ram/timer chip 257.
A feature of the micro-computer 254 is an on-chip A/D
(analog to digital) converter 2S4d with four inputs. Before an analog signal tsuch as the temperature or 1QW battery voltage inputs) may be processed by the micro-computer 254, it must first be converted to a digital format. By having this function performed within the microcomputer 254, much 35 o~ the external signal conditioning logic of Figure 9a , ~3'~

(227, 229, 231, 233~ in the generali~ed computer version is eliminated.
The micro-computer 25~ also has an on-chip oscillator eliminating the need for a separate oscillator. Alternately, either a crystal 253 or a simple RC network (not shown~
may be used. MicrocQmputer 254 also has a small amount of scratchpad RAM (not shown~ which is used to temporarily hold the value of various variables.
The other multi-function chip incorporated into the embodiment of Figure 9b is the programmable timer/R~M 257.
The timer chosen is also manufactured by Motorola Semi-conductor Products and is numbered MC14818. As it is a C`MOS
(Complementary Metal Oxide Semiconductor) device, it requires very little current when not being accessed.
15 Thus, to fulfill the requirements for a nonvolatile-RAM
and a continuously running clock, the chip is always sup-plied power through network 255a.
Preferably, the temperature probe 274 is built as sho~n in Figure 10. The main component of the temperature probe 274 is a thermistor 280. A thermistor is a ty~e of resistor whose resistance changes with its temperature. The therm-istor 280 is mounted in a round machined stainless steel-tube 279 and is held at the tip of the tube by epoxy 281.
The epoxy 281 is also used to secure the cable 282 to the 25 tube 279.
The signal conditioning logic 273 (see Figure 11) is made up of a reference voltage 290, a Nationa] Semi-conductor, Inc. LM336Z2.5 and an LM324AN quad operational amplifier 291, also manufactured by National. The basic function of the signal conditioning logic is to convert the resistance of the thermistor 280 into a voltage that can be measured by the microcomputer 254. Components 290 and 291 are chosen for their temperature stability.
In Figure 12, the power steering network 255a is 35 illustrated. It comprises two diodes 293 and 299 con-nected on one siae to respective batteries 252 and 255.

~93~7'~

Current may flow through the steering diode 293 from the user-replaceable battery 252 or, if the battery 252 is being replaced, through steerin~ diode 294 from the permanent battery 255. During normal use little or no current is drawn from the permanent battery 255, therefore its lif~-time is approximately~equal to its shelf life~ The battery 255 presently used is a miniature lithium battery with a shelf life o over 5 years.
When the user first opens the case of the computer 287, 10 the front panel is covered with a removable "first day"
label 2g5 (Figure 8c) with a short description of the pro-cedure for the first day of use. For proper initialization, the ilnit should be first energized on the first day o~
the user's period. The "first day" label assists in assuming 15 that this happens. As shown in Figure 8c, the "firs~ day"
label 287 covers the normal switch labelling leaving~instead, a series of numbers adiacent to each of the switches.
To initialize the unit, the user presses the switch with the label corresponding to the number of days in the user's 20 shortest period. The "ovulation" LED 272 will flash to ac~nowledge that the data has been entered properly. On subsequent days, the unit is used normally, as described belot~ .
In case the user accidentally presses the wrong 25 button or if the device is otherwise misused on the first day, there are other ways in which to have the computer 287 start as if it has been turned on for the first time.
If twenty days have passed since the aevice was last turned on or i the cycle length was initialized and the unit 30 was not used within 36 hours, the comput~r is reset to irst day status. Additionally, for debugging purposes, if RPT is set and three days have passedl the unit is also reset to first day status.
~ After turning the unit on and the successful com~le- ~
35 tion of the unit's self-test, the user must take her tempera-ture. Although medical literature indicates that it is best ~lg3~

to measure basal body temperature per vayina or per rectum, one may also take the basal temperature orally. The error rate of temperature readings taken sublingually, as opposed to vaginally or rectally is probably somewhat hi~her. However, au~ to the extensive signal conditioning and filtering capabilities afforded by the present inven-tion, this should not be a problem. To assure proper measurement, the fertility computer requires that the user measure vaginal temperature or oral temperature, 10 but not both during the course of a single cycle~
Also to ensure accurate and consistent temperature measurements, the ~ertility computer requires that the temperature probe reach a certain level of thermal e~ui-librium before taking a final reading. A flashing LED 266, "Take Temp" prompts the user to keep the temperature 15 probe 274 in her mouth. Once sufficient time has elapsed for a valid temperature recording, the "Take Temp" LED
266 extinguishes.
After the temperature measurement is complete, the user has the option of pressing any of the four factor 20 input buttons -- "Up" 259, "Stress" 260, "Sick" 261, "Hot/Cold" 262 --, the "Period" button 258, or the "Mucus" button 263. Any or all of these buttons may be pressed as required. If any button is pressed by accident, the "Clear" button 264 may be pressed, erasing all buttons 25 pressed so far.
If the user desires, she may take her temperature in the morning and enter the factor information later in the day. This is the "Back to sleep" option.
The "Period" button 258 is pressed on any day the 30 user has menstrual flow or bleeding of any kind: The period button pressed two days in a row causes the fertility computer to start a new cycle.

~3~æ~

The "Up" button 259 is pressa~ on any day the user accidentally gets up, eats, drinks or smokes before taking temperature.
The "Stress" button 260 should be pressed on any day that the user feels worry, exci~ement, tens;on or if her daily routine has been upset by travel or other unusual circumstance.
The "Sick" button 261 should be pressed any time that the user feels ill, feverish, "hungover" (especially from alcohol) or is taking strong medication.
The "Hot/Cold" button 262 is pressed any day that the user feels slightly (yet uncomfortably) warm or chilly.
The "Mucus" button 263 is used to inform the fertility computer of the presence of cervical mucus. The 15 change for which the user is looking for is mucus from a previously dry, thick consistency to a wetter, more elastic form. Studies have shown that, once made aware of this change, most women can be taught to detect it. The button should only be pressed the first day mucus is present.
The final s~ep-, after all of the requisite symptom buttons have been pressed, is for the user to press the "Display" button 265. Once "Display" 2~5 has been pressed, the fertilitycomputer performs its calculations, records the entered data and displays its results on 25 one more of the four LED's: "Fertile" 269, "~nfertile" 270, "Pregnant" 2~1, or "Ovulation" 272 (o~ulation ha's occurred).
The remaining items shown in Figure 8b may be best described in connection with their function, as shown in the logic flow charts of Figure 13. The flow chart shows 30 the step-by-step operations which are performed by the apparatus in Figure 12b in response to various inputs as controlled by the program stored in ROM 254e. The symbols used are as previously defined in Table 3; the reference numerals are as elements in Figures S or 9b.

. _ 3~

- It is important to note here that the following description does not explain in intricate detail the flowcharts of Figure 13. Parts ana details relatively unimportant to the understanding of the operation of the fertility computer have usually been either abbreviated or left out completely~ However, they are present in Figure 13 and one skilled in the art should be able to understand these minute details.
For example, due to the way in which the timer/Ram 257 is configured, certain correction factors and/or translations between the computer's time and the timer's time must be performed. These conve~sions are obscure and not relevant to the claims of this patent. Similarly left out in the description of operation are the details 15 of reading out of and writing to the non-volatile ram.
Note that each time a write to the ram must take place, the R~M "checksum" must be recomputed.
Before proceeaing to Figure 13, we must brie~ly turn to-Figure 4 which shows the logic symbolism used in 20 Figure 13. As can be seen in Figure 4, the logic of 4(a) is equivalent to 4tb) and ihe logic of 4(c) is equivalent to 4(d). Thus, in the following Figure 13 chart, if the answer to the ~ues~ion/value inputted is "true/present", then an arrow marked y (yes) would be followed. Conversely, if the answer/value if "false/not present", then an arrow marked n (no) would be follo~ed.
Before starting the self-test, the microcomputer init;alizes all of the I/O port lines to be either inputs or outputs, as is shown in Figure 13a. As previously dis-cussed, port A is used as a bi-directional data bus to $he timer/ram, port B as an output port to the LED's and port C as an input port from the switches.

~3'~

The self-test begins by trying to ascertain whether the RAM is functioning properly, as is shown in Figures 13a and 13b. Although a variety of more complicated tests could have been performed, a simple test that checks to see if all unused bits can be set ana reset is employed.
After testing the RAM the microcomputer calculates "checksums" of both the ROM and the~non-volatile RAM and compares them to pre-computed values, as is shown in Figure 13a, 13Oo and 13rr.
The analog to digital (A/D) converter 254d is tested by checking two internal voltage points, VRH and VRL, as is shown in Figures 13b, 13c and 13nn. These o~rrespond to, resPectively, the maximum reading and the minimum read-ing on the A/D converter.
The final test is the reading of all of the switches so as to make sure that none are shorted, as is shown in Figure 13c.
Provided that the above tests are successful, the LED's 266, 267, 268, 269, 270, 271 and 272 are lit and 20 extinguished in sequence, as is shown in Figure 13c. If however, an error is encountered, the OK lamp 268 is flashed ataporoximately 2 hertz and the program halts, as is shown in Figure 13a, 13b, 13c and 13ww.
The next thing that the microcomputer 254 does is to 25 determine if the present energization of the unit should be considered as if it were the first use of the device.
There are three cases in ~hich first day status should be granted, as is shown in ~igure 13d. They are: (1) If twenty days have passed since last use, (23 If the unit 30 has been initialized by the user but not used in 36 hours, or (3) If RPT = 1 and three days have passed since last use.

~r~

Providing that one of the first day conditions is met, as is shown in Figure 13a, the microcomputer 254 scans the keyboard, as is shown in Figure 13kk, 13uu and 1311, waiting for the user to press the key corresponding to her shortest cycle. Once pressed, the microprocessor in micorcomputer 254 fills the array of eight cycle lengths with this value ~this is user initialization), as is shown in Figure 13kk, 1311 and 13ss. Every time a cycle ends, the olaest cycle length is removed and the new cycle length stored. Thus, even if the user enters a shortest cycle time that is wrong, the unit slowly adapts.
To acknowledge that initialization is complete, the "Fertile" LED 269, labelled as "~hank you" on the removable first time use lable 295 is lit, as is shown in Figure 13kk.
To facilitate debugging, if flag RPT = 1, the real time clock is over ridden and a-new day begins each time that the unit is powered up, as is shown in Figure 13d.
Otherwise, the computer uses the timer 257 to determine the present time.
Flag 11, if set, indicates that the unit has been initialized but no temperature has been taken yet, as is shown in Eigure 13d. If flag 11 is set, and M2, the day within the cycle, is also initialized or set to 2, the 25 computer then continues on and takes the temperature.
If flag F9 is set, however, the temperature has already been taken ("back to sleep" option) and the unit goes directly to the "key scan" routine and waits for "factor key" input, as is shown in Figures 13f ana 13 1.

30 No mal Us_ In nor~al use, the present waking time is compared to the median of the last five waking times E(l) E(5) to ascertain whether the waking time is within a reasonable .

- . ;

13 ~ 3rj~
., .

time ~plus or minus 6 hours) of the "average awakening time" MlOS, MlOM, M20, as is shown in Figure 13e, 13mm, 13pp and 13vv. Normally, the program continues and takes the temperature, as is shown in Figure 13g.
If, however, the time of awakening is not within the designated window, the computer skips the temperature reading, jumping directly to the calculation of fertility, as is sho7~n in Figure 13q.
If the present day M2 is day 2, 3 or 4, or if ~C minus DO (number of days since ovulation) is between 1 and 14, inclusive, the temperature reading is skipped, as is shown in Figure 13g. Instead, the "Take Temp"
LED 266 stays on for approximately e-ight seconds before continuing on and calculating the fertility status.
The A/D routine RTT, as is sho~rn in Figure 13i, 13mm and 13nn, samples the temperature every eighth of a second, and returns the median. The first temperature taken is stored as the temperature ST, as is shown in Figure 13g. If the "quicktemp" flag QT is set, this value is ret7~r~ed immediately, as is shown in Figure 13h.
Readings TT are at first taken until they rise above ST. Subse~uently, RR reaaings are taken, the highest of which is saved (XT) and returned as the basal tenperature TTO. A count of the number of readings ,aken so far is kept in i. The threshold RR is set by a resistor divider connected to the A/D input Xl. This is shown in Figures 13g, 13h, 13i, 13j, 13k and 13nn.
If any reading is below the bottom range of the computer, the temperatuxe reading routine is started from the beginning, as is sho~7n ii Figures 13g and 13h. This helps prevent extraneous measurements from occurring ~ue to the thermometer being removed from the mouth or vagina by accident. Similarly, if a reading is .2 degrees celsius below the previous high ~reading, the count "i" holds .
. . - . .

.

until the reading starts to rise again, as shown in Figure 13d. ~owever, if more than approximately four minutes go by and the readings have not begun to rise again, the routine stops and returns the previous high value XT, as shown in Figures 13j and 13k. This procedure permits the temperature reading time to be kept at a minimum and prevents major day-to-day-timing variations.
If approximately 2 minutes pass and the readings have not risen above the first reading ST, the "Take Temp"
10 LED Z66 blinks to inform the user that the probe is either not in~ the mouth or is shorted or open-circuited, as is shown in Figure 13h.
Although methods other than the one described above could have been used to arrive at the basal temperature, 15 this technique most closely tracks thermometers normally used for this purpose.
Note that the battery voltage is checked every time the temperature is sampled, as is sho~n in Figure 13m and 13n. If low, the routine exits and blinks the "Repl Bat"
20 LED 267.
The key scan routine loops, as is shown in Figures 13m and 13u, to determine if any of the factor input switches "Period" 258, "Up" 259, "Stress" 260, "Sick" 261, "Hot/Cold" 262 is pressed, a discrepancy 2 results and B2 25 is set. If either "Up" 259 or "Stress" 260 have been pressed, a discrepancy 1 results and Bl is set. The "~iucus" 263 button sets B3, the "period" 258 sets B4. Any time the "Clear" 264 button is pressed, all flags Bl, B2, B3 and B4 are reset.
Pressing the "Display" button 265 causes the micro-computer to leave the key scan loop, as is shown in Figure 13 1.
Now that all of the factor buttons have been pressed, the computer "rolls" the last five ~aking times, as is 3'~

shown in Figure 13 1 and 13q. That is, E(5), the -oldest time, is aiscarded and E(4) becomes E(3~, etc (e.g. E(5)=E(~), E(4)=E(3), E(3~=E(2), E(2)=E(l), E(l)=Today~s time o~ waking).
If Fll is set; that is, if it is the second day of operation --- the day of the first temperature reading -- DC, the day counter, is set to day 2, and the real time clock (a series of factors used to convert the time as monitored by the timer 257 to an internally useful clock), is reset as is the waking time stack ( E(l~-E(5) ~, as is shown in Figures 131, 13mr 13pp, 13tt and 13vv. Normally, however, both day counters DC and M2 are incremented, as is ~hown in Figure 13 1.
If the time of awakening~was more than 3 hours off from the usual time of waking UT, a discrepancy 2 is automatic~lly entered, as is shown in Figure 130. If off ~y more than 1.5 hours but less than 3 hours, a discrepancy 1 is entered, as is shown in Figure 13n.
To help correct for minor differences in waking time, small correction factors are either added to or sub-tracted from the temperature reading TT, depending on whether the time was late or early, respectively, as is shown in Fiqure 13n and 130.
A new cycle occurs if it is after day eight of the cycle and a period occurred today (flag B4 set) and a period occurred yesterday (flag F6 set), as is shown in Figure 13p. Also, TC, the temperature reading counter is set to zero, re-initializing the base temperature array, as is shown in Figure 13p. Similarly, the cycle length stack C(n) is rolled, as is shown in Fi~ure 13p and 13t, and the mucus flag flO, day count CN and day of o~ulation DO are reset, as is shown in Figure 13q and 13r. The time cycle number CN is also decremented, as is sho~.7n in Figure 13q.

7~i If this cycle DC was longer than forty dayst F4, the cycle error flag is set, as is shown in Figure 13q.
The first fertility calculation to be performed is the differential value DFt the first fertile day of the calendar. In order to calculate the differential value DF, the shortest cycle SC must be picked from the cycle length array ~(n), as is shown in Figure 13s.
The differential value DF is equal to the length of the shortest cy~le SC minus 17 (DF=SC-17), as is shown in F'i~ure 13t. If DF is less than six, the DF is set to six, as is shown in Figure 13u.
Providea that this preceeding execution is not for "display only" as flagged by Ql, the unit continues on and proce~ses today's temperature. Because a slight fever may exist without the user being aware of it, the computer checks to see if the temperature is exces-sively high, as is shown in Figure 13v. The criterion used is whether the present temperature is greater than 1.5 degrees fahrenheit above the median of the stored temperatures V(n). If so, a discrepancy 2 B2 is flaaged~
invalidating the reading. If discrepancy 2 B2 has not yet been set, as is shown in Figure 13w, further calcula-tions ensue.
If the day of ovulation has already occurred, the day's temperature reading TT is pushed onto the tempera-ture stack V(n~, as is shown in Figure 13x and 13q.
In this case, the temperature is shortened from nine values to only four. These values will be used later in calculating whether the user is pregnant.
If the day of ovulation has not occurred (DO--255) the present day's temperature TT is pushed onto the temperature V(n) stack and the present day's "T" value 7Z~

is pushed onto the T(n) stack, as is shown in Figures 13x and 13q. The "T" va]ue is a value from 0 to 3 which describes the conditions surrounding the temperature reading. It helps the temperature rise algorithm match patterns of discrepancies with the rise of temperature due to increased progesterone (ie, ovulation). Note that if discrepancy 2 occurs no temperature reading is stored and thus no "T" value is necessary for it.
The values and interpretations of the "T" values are0 summarized both here and in the variable definitions:
0 Baseline & no discrepancy 1 1 Baseline & discrepancy 1 2 Rise & no discrepancy 1 3 Rise & discrepancy 1 Provided that there are more than 5 readings in the T(n) stack, the program continues and calculates the median of the "low" temperatures in V(n) as is shown in Figures 13y, 13aa and 13mm. "Low" temperatures are defined as temperatures that have baseline "T" values0 associated with them.
The sensiti~ity SS in detecting a rise is set by an e~ternal resistor ratio connected to the A/D, as is shown in Figure 13z and 13nn. The threshold level B8 is calculated from a sum of SS and TR, as is sho~7n in Figure 13z. TR is a compensation value used to help adjust for unusually large temperature rises due to ovulation. If the temperature reading TT minus the base temperature BT is greater than the threshold B8 (e.g. TT-BT>=B8), a rise is flagged in T~n) as is shown in Figure 13aa.
The degree of fertility is determined in four ways as follows: (Note that the degree of fertility FS
is HIGHER if the value FS is LO~ER. The same relation L9 ~r7~

-8~-is true for pregnancy value PR. The values range from ~ for a maximuJn indication to 12 for a minimum indication.) (1) Set minimuln fertility if day is one, two or three days before the differential value DR, as is shown in Figure 13aa.
(2) Set moderate fertility if mucus flag F6 is set, as is shown in F~gure 13bb.
(2~ If day is DF or later, look for two straight rises in temperature in T(n). If such is found, set moderate fertility, as is shown in Figure 13bb, 13cc and 13ee.
(4) Also, if day is DF or later, look for a pattern of three straight rises orr as is shown in Figure 13ee, to help allow for occasional extraneous measurements, any three out of four days of rises within Dl set. If any of these are found, set infertile (ovulation has occurred), as is shown in Figure 13ff. Otherwise set ma~imum fertility, as is shown in Figure 13cc and 13dd.
If ovulation has occurred, the unit sets the day of ovulation DO equal to the present day M2 and resets the temperature array counter TC, as is shown in Fiaure 13ff. Next, the microcomputer calculates the amount of compensation TR necessary, as is shown in Figure 13Ef. If a small temperature rise has occurred, the compensation value TR does not change.
The pregnancy flag PR is set if twenty-three days have passed since ovulation and the temperature is still high, as is shown in ~lgure 13gg. sl0 stores the amount ~f ~h~ ~ost-ovulatorY drop in temperature. There are two levels of pregnancy. After twenty-three days, the preg-nancy level is set to 6, after twenty-eight days, the pregnancy level is set to 3. The lower the level, the more definite the appraisal.

After all calculations are through, the fertility computer displays its decisions, as is shown in Figures 13hh, 13ii and 13jj. I~ their respective flags are set, "Fertile" LED 269, "Pregnant" LED 271 and "Low Bat"
~ED 267 flash at a rate proportional to their urgency.
That is, if a woman is extremely fertile, the "Fertile"
LED 269 will flash fàst; i~ she is mildly fertile, it will flash slowly. If the computer decides that a woman is pregnant after twenty-three days, the "Pregnant" LED ~71 will flash moderately; after twenty-eight days, it will flash rapidly. Two LED's~ "Infer-tile" 270 and "Ovulation" 272 remain on continuous~y when their flags are set, as is shown in Figures 13i and 13h, respectively.

Mucus Probe Figure 14 is a schematic diagram of a mucus probe 315 which may be connected to microcomputer 254 ~Figure 9b or microprocessor 204 (Fig. 9a) to allow an objective measurement of mucus quality. As described earlier mucus samples from the vagina underyo cyclic changes in their spinnbarkeit, ie, the amount of Jnucus thread which can be stretched without breaking.
An increase in spinnbarkeit has been shown to precede ovulation.
In the embodiment of the invention previously described, the user presses the ~5UC~S button 224 (Fig~ 9a) or 263 (Fig. 9b) to tell the microcomputer 254 or microprocessor 204 that she is e~periencing a wetness in her vagina inaicative of increased cervical mucus secretion or spinnbarkeit. It ~ould be highly desirable to include with the fertility c~mputer a device ~hich would automatically assess mucus ~uality.
~ Such a device 315 is presented in schematic ~orm in Figure 14. A mucus sample 333 is placed bet~een ~37~i plates 320 and 321 and adheres thereto. As plate 321 is moved by handle 335 in the direction of the arrow the mucus sample 333 is thereby stretched. Slider 326 attached to handle 335 moves along resistance wire 325 thereby lowering the electrical resistance across leads 322 and 323. However, when the mucus sample 333 is ~inally stret-ched to the point where it snaps, there is no longer any electrical continuity between plates 320 and 321 and therefore the resistance between leads 322 and 323 now in-creases to a value which may be regarded as infinite.Spring 325 returns plate 321 to its original position aiter testing is over. The resistance of resistance wire 325 should be much greater than the resistance of the mucus sample 333 in order to keep variations in resis-tance measured across leads 322 and 323 down to aminimum due to variations in the electrical resistance of various mucus samples being used.
Preferably in a fertility computer which includes the mucus tester 315, leads 322 and 323 are attached, either permanently or via a connector, to expansion interIace 234c (Fig. 9a). The resis~ance across leads 323 and 322 ~orms half of a resistor ladder across which a voltage is applied. The voltage drop across leads 322 and 323 is therefore proportional to ~he resistance between these leads. Recall that, as the mucus sa~ple 333 is stretched, slider 326 moves closer to lead 323 and so the resistance between leads 322 and 323 decreases and, in accordance with Ohm's law, therefore so does the voltage drop. Signal conditioner ~7 234b (Fig. 9a) or equivalently any analog input port of microcomputer 254(Fig. 9b) converts the analog voltage arop to a binary number, typically bet~een 0 and 255. ln Fig. 9a, this diaital sianal in binary units is sent to microprocessor 204 via bus 217~ -~ .g~7~i Therefore, as the mucus sample 333 (Fiy. 14) is stretched microprocessor 204 receives lower numbers from sig~al conditioner #7 234b. Normally, the pro-gram stored in ROM 209 causes the microprocessor 204 to respond as shown in Figure 1~ except that when the MUCUS button 224 is pressed by the user, the micro-processor 204 records binary numbers from signal condi-tioner ~ 234b periodically, typi~ally every millisecond, saving the last value in RAM 208. If the binary number received from signal conditioner ''7 234b is equal to 255 (assuming that 255 is the higher limit) then this indicates an open circuit between leaas 322 and 323 indicating in turn that mucus sample 333 has snappea, and the microprocessor 204 then ~etches from RAM 208 the binary number previously recorded from signal con-ditioner ~7 234b. If this binary number is below a value which has been determined by experimentation to indicate ~hat the quality of the mucus (the spinnbarkeit) indicates that ovulation is near; then variable B3 is set.
Figure 15 depiets a physical embodiment oE the ex- - -ternal eonfiguration of the mucus tester 315 shown pre~
viously in sehematic form in Figure 14. Mucus tester 315 is a probe that can be inserted into the vagina to `25 assess cervieal mueus quality. Metal reeeptacle 341 receives the cervieal mueus and eorresponds to plate 320 of Figure 14. Plate 342 slides along groove 343 whieh allows a mucus sample to be stretehed without making con-tact with probe housing 344. A projection 347 is provided in housing 344 indicating the correct depth of insertion of probe 340. The lead wires o probe 340 form cable 345 and attaeh to the expansion interfaee 234e (Fig. 9a) of the fertility eomputer via connector 346.

~3~

The mucus probe 34~ o~ Fi~ure 15 can function as - described for Figure 14 or it can be somewhat more automatic as shown schematically in Figure 16 (wherein like parts are correspondingly numbered in FigO 15 and 16). Plate 342 is moved automatically by miniature electric motor (typically a DC or direct current motor) 360 via scxew shaft ~62 and coupling 34~ and 345. If a probe 340 such as shown in ~igure 16 is used then the program stored in ROM 209 (~ig. 9a) is such that when the user presses the MUCUS button 22~, the microprocessor ~04 tells the expansion interface 234c to apply a voltage across leads 352 and 353 thereby turnin~ the motor 360 and thereby advancing plate 342. The resistance between leads 351 and 354 (attached to the plates holding the mucus sample~ is converted to a binary number in the same fashion as described for Figure 14. ~hi.le motor 360 is turning, the microprocessor is recording every millisecond, as indicated by timer ~06, in RAM 208. I~en a binary number equal to 255 is recorded, indicative o~ an open circuit between leads 251 and 254 which indicates in turn that the mucus sample has snapped, the microprocessor 204 tells expansion in~erface 234c to stop motor 360.
The microprocessor 204 then fetches the value indicating the lenyth of time it took to snap the mucus sample from RAM 208. If this value is above a value which has been determined by experimentation to indicate that the quality of the mucus indicates that ovulation is near, then variable B3 is set, as it would be in previous embodiments by merely pressing MUCUS button 224.
I~icroprocessor 204 then tells the expansion interfaee 234e to apply a reverse voltage across leads 352 and 353 for the same period of time as ~as recorded in RAM 208 plus an additional millisecond or two thereby returning plate 342 to its starting position.

, ~3~

~ lthough mucus tester 315 is des;gned for use in conjunction with the embodiments of the fertility computer ~ ~escribea in the present invention, mucus tester 315 may serve as the main component of a stand-alone fertility indicator. In the case of the latter, the resistance of e]ement 325 is-adjusted so that when ~he mucus sample 333 is stretchea intact past a point determined by experimentation indicatin~ that ovulation is likely;
the resistance between leads 322 and 323 is low enough to allow sufficient current to flow, for examPle, to set a latch which in turn causes as indicator (e.g.
an LED labeled FERTILE) to turn on.
Alternative embodiments of tne mucus tester 315 than depictea in Figures 14, 15 a~d 16 would involve similar principles of operation but other technologies could be used to determine the position of the moveable plate 321 attached to handle 335 at the time the mucus sam ple 333 snaps. ~or example, polari~ed light could be shone through the mucus sample ana a suitable detector would note a change indicating that the mucus sample had snapped. For example, the resistance element 325 could be xeplaced by an inductive position sensor.
As mentioned earlier, the embodiment of Fig ga will be costly to manufacture. Therefore it is desirable to produce such an embodiment in the most economical format possible. One way of accomplishing this is to replace the costly analog circuitry of signal conditioners ~3 227 in Figure 9a or 273 in Figure 9b In these embodiments the small day to day temperature changes in the user's mouth (or vagina or xectum) are indicated by changes in the resistance of a thermistor 280. Since these temperature changes are small in comparison ~ith the day to day ambient temper-- ature changes, the components used in signal conditioners ~3 227 must be such that day to day ambient temperature pl~

-9o -fluctuations will not introduce day to day error in ~ the amplification and digital conversion of the small resistance changes of ~hermistvr 280.

~emperature Probe' Therefore it is necessary to use costly resistors and operational amplifiers with very low temperature coefficients. As an alternative to these costly components the temperature probe 400 as shown in Figure 17 may be used. ~`he probe 400 contains in its tip a thermistor 414 and a miniature low voltage capacitor 417, both connected to a custom integrated circuit 413.
These components are embedded in epoxy or some other electrically insulating structural material. Four wires 412 attach to the cus~om chip 413 and form cable 411 of the temperature probe 400. Heat shrin~able tubinq 416 or some similar protective material is placed at t}le junction of cable 411 and probe housing 410. Probe housing 410 can be maae of stainless steel or some other biologically inert material. Guides 415 allow the user to position-the probe the same distance under her tongue every day. This latter feature may be important in obtaining consistent basal body temperature readings since different positions of the probe in ihe mouth may cause different temperature readings. Although not shown in Fiyure 17, for ease of manufacture, probe housing 410 may be constructed of two parts, i.e., a long cylindrical portion through which wires 412 are passed and a separate tip portion in which components 413, 414 and 417 are placed. ~ires 412 would be attac}led to chip 413 and the two portions of the probe glued or otherwise held together. Custom chip 413 would most likely be in a slim flatpack configuration or possibly 21~i -gl-a TO5 can configuration. Although it is conceivable - and space-saving to attach wires 412 and components 41~
and 417 directly to the die of custom chip 413, this may prove more costly than buying chip 413 in a standard packaging configuration. It should be mentioned that since inexpensive temperature stable capacitors are available, it might not be necessary to incorporate capacitor 417 in probe 400 but rather have it eontained with the other components of the fertility computer.
As well, it may prove cos-t-effective in the future to incorporate thermistor 414 in chip 413, either as a thermistor element or as circuitry ~unctionally equivalent to a thermistor.
The block/schematic diagram of temperature probe 400 including custom chip 413 is presented in Figure i8. Custom chip 413 is an integrated circuit specifi-cally designed for use with the present invention.
~any companies fabricate such integrated circuits.
One such company is Interdesign, Inc. of Sunny~ale~
Cali~ornia.
Power and ground are supplied to chip 413 via leads 465 and 466 respectively. Thermistor ~14 is at-tached to chip 413 via leads 463 and 464. Capacitor 417 is attached to chip 413 via leads 451 and 462.
The circuitry of chip 413 replaces, as was men-tioned above, the bulk of the costly temperature stable circuitry of signal conditioner 3 227 (Fig. 9a). Note also that since the circuitry of chip 413 and capacitor 417 will be Placed in the user's mouth during operation, 3n wide ambient temperature day to day swings are elimi-nated or minimized. Rather the circuitry of chip 413 and capacitor 417 e~periences the same small day to day basal body temperature changes as does thermistor ~14. ~herefore the thermal stability requirements of the circuitry of chip 413 and capacitor 417 is only ~;~937~6 that they cause ultimately insignificant changes in voltage output ~ompared to the resistance changes of thermistor 414. These are very mild thermal stability requ;rements allowing the construction of a relatively simple, and hence,r inexpensive custom chip 413. Note also that a Zener diode 510 (or equivalent circuitry which is used for voltage reference devices) is included in chip 413 and thus is also protected from wide am~ient temperature swings. Hence, a fairly temperature stable reference voltage is applied to resistors 501 and 503.
Thermistor 414 and resistor 501 form a resistance ladder across which the reference voltage Vss from Zener diode 510 is applied. Changes in temperature are thus manifested as changes in voltage applied to ampli-fier 502 which in turn feeds lnto amplifier 508 whichproduces an analog voltage across lead 468. ~his analog voltage is related to the temperature measured by thermistor 414. The circuitry described so far would be adequate to replace signal conditioner 273 of Figure 9b with the analog voltage pro~uced on lead 468 going directly to input ~0 of the analog section of microco~nputer 254d (Fi~. 9b). Although not shown in ~igure 9b, a reference voltage is often needed for proper operation of the analog to digital converter 254d of microcomputer 254. This reference voltage can be obtained from lead 467. Thus wires 412 would be connected to leads 465, 466, 467 and 468 of the custom chip ~13.
~o~ever, in order to economize further without taking from functionality of the present invention, it is possible to use an ordinary microcomputer-or micro-processor without an analog to digital converter built in, e.g., microprocessor 204 of Fig. 9a, with the circuitry of custom chip 413 competely replacing the ~g37~6 -g3-function of signal condition #3 227 (FigO 9a). In ~ this alternative case wires 412 would be connected to leads 4~5, 466, 4~9 and 470 of custom chip 413. The temperature taking routine software stored in ROM 209 (Fig. 9a) would be such that software sub-routines are called allowing analog to digital conversion o~ the analog voltage across lead 468 (Fig. 18). A pulse from microprocessor 204 via bus 217 (Fig. 9a) is applied to lead 469 of chip 413 (Fig. 18) thereby momentarily closing digital switch 512. As a result, capacitor 417 is charged to approximately the reference voltage of Zener diode 510. The analog voltage signal on lead 468 (ie, the output of amplifier 408) is fed to one input of comparator circuit 515. The voltage drop across capacitor 417 is fed to the other input of comparator circuit 515. ~en the voltage drop across capacitor 417, which is constantly discharging through resistor 514, goes below the analog voltage signal from amplifier 508, there is a pulse or change in the output state of comparator 515 appearing at lead 470.
In Figure 9a, the microprocessor 204, making use of timer 206, stores in RAM ~08 the number of milliseconds between the initial pulse from pulsing lead 469 until receiving a pulse from lead 470. The longer the time between pulses is; the lower the analog voltage (ie, the voltage on lead 468) being measured will be. A
table of values, determined by experimentation or calculated, is stored in ROM 209 and allows micro- -processor 204 to convert milliseconds measured into an equivalent temperature reading. Alternately, it is possible for microprocessor 204 to use eguations stored in ROM 209 to perform time to temperature conversions.
Althou~h desired, absolute linearity in temperature conversion is not crucial since, as will be recalled, 72~;

i.t is the repeatability of day to day measurements ~hich ~ is especially important in the present invention. ~Other than the subroutines usea to measure and convert time into temperature the temperature taking software in ROM 209 remains similar to the temperature taking software of Figure 13 described above.
Those skilled in the art will be able to ascertain, using no more than routine experimentation, other equivalents for the method and apparatus above described~
Such equivalents are intended to be included within scope of the following claims.

.

Claims (34)

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
1. A fertility computer comprising:
(a) storage means for storing data indicating:
(i) the day of the week, DW;
(ii) the day of a menstrual cycle, DC;
(iii) a user's average cycle length, CL;
(iv) the day of a menstrual cycle in which mucus change occurred, DM;
(v) the relative value of the change in (iv);
(vi) a plurality of the most recent BBT readings of the user T(1)-T(N);
(vii) the number of menstrual cycles in which the computer has been used by the user, CN; and (viii) a plurality of discrepancy indicators F1-F(n).
(b) data processing means for utilizing the above data to provide an indication to the user of current fertility status;
(c) switch means operable by a user for inputting data with respect to a user's menstrual cycle parameters, basal body temperature, and physical disturbances into said data processing means;
(d) a temperature sensor which is precise but not necessarily accurate for producing an analog temperature signal indicative of the user's basal body temperature;
(e) converter means for converting said analog signal to a digital signal; and (f) display means for displaying to the user whether or not the temperature sensor is in a functional position and when it is permissible to remove the sensor from the functional position.
2 . The apparatus of Claim 1 wherein the fertility status is computed by ascribing different values to such data depending upon:
(a) the likelihood of a discrepancy, or (b) the user's average cycle length, or (c) the relative value of the mucus change.
3 . The apparatus of Claim 1 wherein the discrepancy indicators are one or more of the following:
(a) a cycle of more than 40 days or less than 20 days;
(b) spotting within a cycle
4 . The apparatus of Claim 1 wherein a factor in -the computation is whether or not a BBT rise or drop has been completed.
5 . Apparatus comprising:
(a) storage means for storing information with respect to a subject's:
(i) menstrual cycle parameter(s);
(ii) body parameter(s) indicating that ovulation is imminent;
(iii) body parameter(s) indicating occurrence of ovulation; and (b) a battery powered microprocessor coupled to an oscillator circuit, a read-only-memory (ROM), a permanent memory consisting of a low power random-access-memory (RAM) device to which the battery power is constantly applied and which is used to store numeric representations of the items mentioned in (a) above, for accessing such stored information and utilizing such information to determine the fertility status of a subject, in accordance with the logic states in said read-only-memory (ROM) which ascribes values to such information;

(c) switch means operable by a user for inputting data with respect to a user's menstrual cycle parameters, basal body temperature, and physical disturbances into said microprocessor;
(d) a temperature sensor which gives values which are repeatable over a period of not necessarily more than thirty days and which is not necessarily accurate for producing an analog temperature signal indicative of the user's basal body temperature;
(e) converter means for converting said analog signal to a digital signal;
(f) display means for displaying to the user whether or not the temperature sensor is in a functional position and when it is permissible to remove the sensor from the functional position; and (g) a housing upon which includes affixed directions for use of the apparatus in determining fertility status of the user.
6 . The apparatus of Claim 5 wherein a diode network is provided which preventsone set of batteries from supplying power to the data processing means until thevoltage from the other set of batteries drops below a predetermined level.
7 . The apparatus of Claim 5 wherein a capacitor is substituted for one set of batteries.
8 . The apparatus of Claim 5 wherein verification of the functionality of the stored data is provided.
9 . The apparatus of Claim 5 wherein verification of power is provided.
10. The apparatus of Claim 5 wherein verification of input switches and output indicators is provided.
11. The apparatus of Claim 5 wherein a signal is given by the data processing means to the user to increase the length of time the temperature probe must remain in a body orifice if the temperature probe is removed from the orifice during temperature taking and then put back in.
12. The apparatus of Claim 5 wherein a true temperature reading signal is givento the user only on certain days of the menstrual cycle.
13. The apparatus of Claim 5 wherein the days on which true temperature readings are requested are:
a) day S to day DO
b) day W + 15
14. The apparatus of Claim 5 wherein means are provided in the data processing means for disregarding transient temperature readings from the probe.
15. The apparatus of Claim 5 wherein the user may:
a) take temperature readings upon waking and then turn the unit off;
b) enter symptom buttons at any time of the day by turning the unit 'on' and pressing the desired button(s).
16. The apparatus of Claim 5 wherein a basal body temperature threshold value is established and used in the determination of ovulation occurrence and is automatically adjusted in relationship to the magnitude of the user's ovulatory basal body temperature rise.
17. The apparatus of Claim 5 where the basal body temperature threshold value used in the determination of ovulation occurrence is automatically lowered towards the end of the menstrual cycle.
18 . The apparatus of Claim 5 wherein a timer is provided to initialize the non-volatile memory to that typical of a new unit if the unit is not used for a certain period of time.
19 . The apparatus of claim 5 including means for compensating the values usedin computing in accordance with the number of days the user does not use the unit.
20. The apparatus of claim 5 including means to allow the recording of no morethan one basal body temperature reading per day.
21. The apparatus of Claim 5 including means for adjusting the recorded basal body temperature in relation to the number of hours earlier or later the user woke up and used the device than she would normally.
22. The apparatus of Claim 5 including means to automatically tag the temperature reading with a discrepancy 1 if the user used the unit a predetermined number of hours earlier or later than usual.
23 . The apparatus of Claim 5 including means to automatically discard temperature readings if the user used the unit a predetermined number of hours earlier or later than usual.
24 . A self contained system for indicating a user's fertility status, comprising:

(a) a housing;
(b) an electrical power source inside said housing;
(c) switches mounted on said housing including a first switch to be pressed when the user senses blood per vagina indicative of a new period, a second switch to be pressed when a dry to wet change in the cervical mucus is sensed by the user and a third switch to be pressed when a disturbance in physical condition such as feeling ill is sensed by the user;
(d) a temperature sensor coupled to the housing comprising a thermistor which need not measure temperature accurately but only in a repeatable fashion;
(e) display means indicating (i) correct operation of the system and/or (ii) suitable power (iii) that the temperature sensor is still to be kept in a functional position within the mouth, (iv) the probability that the user is in the fertile phase of her menstrual cycle and/or (v) the probability that the user is pregnant (f) a permanent memory consisting of a low power random-access-memory (RAM) device to which electric power is constantly applied and which is used to store among other data the current day of the menstrual cycle, lengths of a certain number of previous menstrual cycles if they exist, and values related in a predictable fashion to a number of previous or current temperature readings;
(g) a microprocessor coupled to an oscillator circuit, a read-only-memory (ROM), and said random-access-memory (RAM) and input-output signal conditioners where said microprocessor interacts with the various elements it is attached to in accordance with a controlling algorithm preprogrammed in the ROM;
(h) temperature measurement and logic means to convert measured temperature of the temperature sensor to a digital signal related to the observed temperature and indicate to the user to keep the temperature probe in a functional position and to provide a signal to said display means until a certain period of time and/or certain thermal equilibrium is achieved.
25 . The system of claim 24 including logic means for giving lesser or zero value to the digital signal representative of observed temperature if said third switch is pressed.
26 . The system of claim 24 including logic means to disregard input from the first switch at the initial portion of the menstrual cycle.
27. The system of claim 24 including logic means to indicate that a new period is starting if the first switch has been pressed on at least two consecutive days.
28. The system of claim 24 including logic means to avoid obtaining and/or storing temperature measurements during the initial part of the menstrual cycle.
29. The system of claim 24 including logic means to allow computation from the stored cyclic information of a differential value which indicates the beginning of the fertile phase of the menstrual cycle and where said differential value ismade smaller by previous menstrual cycles of short duration and by determinationthat the stored information is indicative of a relatively new unit and where said differential value is not used to determine the start of the fertile phase if the second switch is pressed during an appropriate time of the menstrual cycle but at a day of the current cycle smaller than the said differential value.
30. The system of claim 24 including logic means to interpret stored temperature measurements to determine fertility status and ovulation wherein a user's temperature measurements taken on days of cycle smaller than the differential value are used to construct a representative baseline temperature and at days ofa cycle equal or greater than the differential value, a day's temperature measurement is interpreted as elevated if it exceeds the representative baselinetemperature by a preset threshold value which value is in turn determined by a sensitivity value, and wherein a certain number of days after ovulation determination has been completed the day's temperature measurement is interpreted as depressed if the temperature measurement is exceeded by a representative baseline temperature value constructed from temperature measurements immediatelyfollowing ovulation by a preset threshold value which is in turn determined by said sensitivity value, and wherein ovulation is determined to have occurred if three recent temperature measurements are interpreted to have been elevated where said elevated temperature measurements occur consecutively or within a duration of four or five days and wherein a certain number of measurements are associatedwith no disturbances and a certain number are associated with disturbances and aminority are not interpreted as elevated, and wherein the indication of no fertility or infertility is given to the user after ovulation determination is complete, where an indication of pregnancy is given to the user if the day of cycle is greater than the expected menstrual cycle length and several recent temperature values are not interpreted as depressed in a consecutive fashion.
31 . The system of claim 24 including logic means to disregard input from the second switch at the initial portion of the menstrual cycle.
32 . An electronic apparatus for indicating a user's fertility and pregnancy status according to claim 24 further comprising means for determining and indicating the start of the next menstrual cycle.
33 . An electronic apparatus for indicating a user's fertility and pregnancy status according to claim 24 further comprising logic means to indicate low and maximum probability of fertility and/or pregnancy.
34 . The system of claim 24 including self-test circuitry and logic means to determine whether circuit elements, including the electric power source and random-access-memory, are functional and convey this information to the user viasaid display means.
CA000413997A 1981-11-12 1982-10-22 Apparatus and method of determining fertility status Expired CA1193726A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US320,227 1981-11-12
US06/320,227 US4465077A (en) 1981-11-12 1981-11-12 Apparatus and method of determining fertility status

Publications (1)

Publication Number Publication Date
CA1193726A true CA1193726A (en) 1985-09-17

Family

ID=23245442

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000413997A Expired CA1193726A (en) 1981-11-12 1982-10-22 Apparatus and method of determining fertility status

Country Status (6)

Country Link
US (1) US4465077A (en)
EP (1) EP0093149A4 (en)
JP (1) JPS58501895A (en)
AU (1) AU9058882A (en)
CA (1) CA1193726A (en)
WO (1) WO1983001735A1 (en)

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61500003A (en) * 1983-02-24 1986-01-09 バイオセルフ・インタ−ナショナル・インコ−ポレ−テッド Human fertilization period assessment device
US4700711A (en) * 1985-11-22 1987-10-20 Renco Corporation Ultrasonic detector with integral confidence tests
GB2186977A (en) * 1986-02-25 1987-08-26 Benytone Corp Fertility indicating thermometer
US4803625A (en) * 1986-06-30 1989-02-07 Buddy Systems, Inc. Personal health monitor
US4788984A (en) * 1987-01-30 1988-12-06 Procare Industries Ltd. Method and kit for use in conceiving a child of a desired gender
GB8903626D0 (en) * 1989-02-17 1989-04-05 Unilever Plc Methods and devices for use therein
US5209238A (en) * 1989-08-17 1993-05-11 Sundhar Shaam P Electronic ovulation monitor
US5088037A (en) * 1990-03-23 1992-02-11 Anthony Battaglia Portable rescue administration aid device
US5043888A (en) * 1990-04-12 1991-08-27 Uriarte Jorge E Fertility indicator
IL97115A (en) * 1991-01-31 1995-11-27 Yissum Res Dev Co Fertility probe
US5301681A (en) * 1991-09-27 1994-04-12 Deban Abdou F Device for detecting cancerous and precancerous conditions in a breast
GB9217808D0 (en) 1992-08-21 1992-10-07 Unilever Plc Advisory method
GB9217864D0 (en) 1992-08-21 1992-10-07 Unilever Plc Monitoring method
AU5631798A (en) * 1992-08-21 1998-05-21 Unipath Limited Monitoring method
GB9217865D0 (en) * 1992-08-21 1992-10-07 Unilever Plc Monitoring method
US7613590B2 (en) 1992-11-17 2009-11-03 Health Hero Network, Inc. Modular microprocessor-based power tool system
US20010011224A1 (en) 1995-06-07 2001-08-02 Stephen James Brown Modular microprocessor-based health monitoring system
US6196970B1 (en) * 1999-03-22 2001-03-06 Stephen J. Brown Research data collection and analysis
US8027809B2 (en) 1992-11-17 2011-09-27 Health Hero Network, Inc. Home power management system
US5307263A (en) 1992-11-17 1994-04-26 Raya Systems, Inc. Modular microprocessor-based health monitoring system
US7624028B1 (en) 1992-11-17 2009-11-24 Health Hero Network, Inc. Remote health monitoring and maintenance system
US5832448A (en) 1996-10-16 1998-11-03 Health Hero Network Multiple patient monitoring system for proactive health management
US8078407B1 (en) 1997-03-28 2011-12-13 Health Hero Network, Inc. System and method for identifying disease-influencing genes
US8095340B2 (en) 1992-11-17 2012-01-10 Health Hero Network, Inc. Home power management system
US5956501A (en) 1997-01-10 1999-09-21 Health Hero Network, Inc. Disease simulation system and method
US9215979B2 (en) 1992-11-17 2015-12-22 Robert Bosch Healthcare Systems, Inc. Multi-user remote health monitoring system
US5951300A (en) 1997-03-10 1999-09-14 Health Hero Network Online system and method for providing composite entertainment and health information
US6330426B2 (en) 1994-05-23 2001-12-11 Stephen J. Brown System and method for remote education using a memory card
US8078431B2 (en) 1992-11-17 2011-12-13 Health Hero Network, Inc. Home power management system
US6968375B1 (en) 1997-03-28 2005-11-22 Health Hero Network, Inc. Networked system for interactive communication and remote monitoring of individuals
WO2001037174A1 (en) 1992-11-17 2001-05-25 Health Hero Network, Inc. Method and system for improving adherence with a diet program or other medical regimen
CZ285706B6 (en) * 1993-07-02 1999-10-13 Unipath Limited Method of monitoring fertility stage
US7141212B2 (en) 1993-11-12 2006-11-28 Inverness Medical Switzerland Gmbh Reading devices and assay devices for use therewith
US5660176A (en) 1993-12-29 1997-08-26 First Opinion Corporation Computerized medical diagnostic and treatment advice system
US5594638A (en) * 1993-12-29 1997-01-14 First Opinion Corporation Computerized medical diagnostic system including re-enter function and sensitivity factors
US5935060A (en) 1996-07-12 1999-08-10 First Opinion Corporation Computerized medical diagnostic and treatment advice system including list based processing
USRE43433E1 (en) 1993-12-29 2012-05-29 Clinical Decision Support, Llc Computerized medical diagnostic and treatment advice system
US5724968A (en) * 1993-12-29 1998-03-10 First Opinion Corporation Computerized medical diagnostic system including meta function
US6206829B1 (en) 1996-07-12 2001-03-27 First Opinion Corporation Computerized medical diagnostic and treatment advice system including network access
US6927064B1 (en) 1994-06-29 2005-08-09 Inverness Medical Switzerland Gmbh Fertility computing method
US6451619B1 (en) 1994-06-29 2002-09-17 Inverness Medical Switzerland Gmbh Monitoring methods and devices for use therein
US5626133A (en) * 1995-08-11 1997-05-06 Johnson; Mary A. Gestational computer
US7305348B1 (en) 1996-02-20 2007-12-04 Health Hero Network, Inc. Aggregating and pooling health related information in a communication system with feedback
US5914271A (en) * 1996-04-19 1999-06-22 Actimed Laboratories, Inc. Fertility test
EP0833160B1 (en) * 1996-09-27 2002-02-13 Unilever Plc Monitoring methods
ATE231971T1 (en) * 1996-09-27 2003-02-15 Inverness Medical Switzerland TEST KIT AND DEVICES
US5763860A (en) * 1996-12-10 1998-06-09 Denis; Diane T. Gestational calculator
US7584108B2 (en) 1996-12-23 2009-09-01 Health Hero Network, Inc. Network media access control system for encouraging patient compliance with a treatment plan
US6032119A (en) 1997-01-16 2000-02-29 Health Hero Network, Inc. Personalized display of health information
CN1252877A (en) 1997-03-13 2000-05-10 第一咨询公司 Disease management system
GB9807134D0 (en) 1998-04-02 1998-06-03 Unilever Plc Test methods devices and test kits
US20080004915A1 (en) 1998-09-25 2008-01-03 Brown Stephen J Dynamic modeling and scoring risk assessment
TW390799B (en) * 1998-10-19 2000-05-21 Opto Tech Corp Indicator for menstrual cycle
NZ520461A (en) 2000-02-14 2005-03-24 First Opinion Corp Automated diagnostic system and method
US20020069191A1 (en) * 2000-10-11 2002-06-06 Ellis Eve E. Method and system for electronic self-monitoring of menstrual cycles
US6838993B2 (en) * 2002-02-22 2005-01-04 Bioalert Systems, Inc. Early warning system and methods for detection of a bioterrorism event
DE10253335A1 (en) * 2002-11-14 2004-06-09 Oneworld Lifestyle Products Ag Pregnancy and family planning device
US7260480B1 (en) * 2003-04-07 2007-08-21 Health Hero Network, Inc. Method and system for integrating feedback loops in medical knowledge development and healthcare management
US7399276B1 (en) 2003-05-08 2008-07-15 Health Hero Network, Inc. Remote health monitoring system
US7780595B2 (en) 2003-05-15 2010-08-24 Clinical Decision Support, Llc Panel diagnostic method and system
US9081879B2 (en) 2004-10-22 2015-07-14 Clinical Decision Support, Llc Matrix interface for medical diagnostic and treatment advice system and method
GB0608829D0 (en) * 2006-05-04 2006-06-14 Husheer Shamus L G In-situ measurement of physical parameters
GB0617451D0 (en) 2006-09-05 2006-10-18 Medical Prediction Ltd
US8315746B2 (en) 2008-05-30 2012-11-20 Apple Inc. Thermal management techniques in an electronic device
US8306772B2 (en) * 2008-10-13 2012-11-06 Apple Inc. Method for estimating temperature at a critical point
US20100191544A1 (en) * 2009-01-27 2010-07-29 Adam Bosworth Protocol Authoring for a Health Coaching Service
US20100280838A1 (en) * 2009-05-01 2010-11-04 Adam Bosworth Coaching Engine for a Health Coaching Service
US8560479B2 (en) 2009-11-23 2013-10-15 Keas, Inc. Risk factor coaching engine that determines a user health score
WO2011070577A2 (en) * 2009-12-09 2011-06-16 Fridenson, Arie An ovulation sensing and analyzing system
WO2011139405A1 (en) * 2010-05-07 2011-11-10 Conscious Cycles Llc System for tracking female fertility
US8998822B2 (en) 2011-03-14 2015-04-07 Valley Electronics Llc Portable preprogrammed thermometer for indicating fertility status
US8834389B2 (en) 2011-11-25 2014-09-16 Tepsync Temperature based fertility monitoring system and related method
WO2013162750A1 (en) * 2012-04-27 2013-10-31 Ovatemp, Llc Systems and methods for monitoring fertility using a portable electronic device
JP6091981B2 (en) * 2013-04-25 2017-03-08 オムロンヘルスケア株式会社 Menstruation scheduled date calculation device and program
WO2015147174A1 (en) * 2014-03-28 2015-10-01 株式会社エムティーアイ Ovulation day prediction program and ovulation day prediction method
US10575829B2 (en) 2014-09-03 2020-03-03 Earlysense Ltd. Menstrual state monitoring
WO2016039795A1 (en) * 2014-09-12 2016-03-17 Yono Health Inc. Temperature measuring device
US11328152B2 (en) * 2019-06-17 2022-05-10 Pixart Imaging Inc. Recognition system employing thermal sensor
JP6711456B2 (en) * 2017-04-27 2020-06-17 株式会社村田製作所 Body temperature measuring device
WO2018209087A1 (en) * 2017-05-10 2018-11-15 Humane, LLC System and apparatus for fertility and hormonal cycle awareness
US20190083044A1 (en) * 2017-09-17 2019-03-21 Earlysense Ltd. Apparatus and methods for monitoring a subject
WO2019126607A1 (en) * 2017-12-22 2019-06-27 Robert Bosch Gmbh Core temperature sensor with thermal conductivity compensation
CN109009234B (en) * 2018-05-25 2021-08-20 上海夏先机电科技发展有限公司 Method for evaluating contraception, easy pregnancy and excellent pregnancy based on user information
US11771406B2 (en) * 2020-08-12 2023-10-03 Apple Inc. In-bed temperature array for menstrual cycle tracking

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3406015A (en) * 1965-02-01 1968-10-15 Raymond O. Foster Means for detecting the fertile period
US3675640A (en) * 1970-04-09 1972-07-11 Gatts J D Method and apparatus for dynamic health testing evaluation and treatment
US3749089A (en) * 1971-10-26 1973-07-31 L J Derr Ovulation monitor
US3982423A (en) * 1972-10-24 1976-09-28 Ovutime, Inc. Mucus testing processes and devices
US4013066A (en) * 1974-05-23 1977-03-22 Ovutime, Inc. Processes for menstrual cycle phase determination
US3924609A (en) * 1974-07-02 1975-12-09 Robert Friedenberg Detector device and process for detecting ovulation
US3986494A (en) * 1974-10-30 1976-10-19 The Trustees Of The University Of Pennsylvania Method of predicting and detecting ovulation
US4010738A (en) * 1974-10-30 1977-03-08 The Trustees Of The University Of Pennsylvania Method of predicting and detecting ovulation
US3926037A (en) * 1975-03-14 1975-12-16 Ovutime Inc Processes and devices for determining properties of bodily mucus
JPS522356A (en) * 1975-06-24 1977-01-10 Casio Comput Co Ltd Electronic desk calculator
IT1041291B (en) * 1975-08-21 1980-01-10 Raggiotti G BODY TEMPERATURE CONTROL AND INDICATION DEVICE
US4036212A (en) * 1975-12-22 1977-07-19 Karuhn Richard F Method of predetermining time of ovulation in women and in animals to control conception
US4151833A (en) * 1976-04-20 1979-05-01 Polishuk W Z Method and apparatus for detecting the onset of ovulation
US4151831A (en) * 1976-11-15 1979-05-01 Safetime Monitors, Inc. Fertility indicator
US4148304A (en) * 1976-11-29 1979-04-10 Bmd Development Trust Device for measuring ovulation
US4119089A (en) * 1977-02-02 1978-10-10 Trustees Of The University Of Pennsylvania Method of predicting and determining ovulation by monitoring the concentration of volatile sulfur-containing compounds present in mouth air
JPS53145445A (en) * 1977-05-21 1978-12-18 Esu Matsukurei Ian Viorhythm computer
DE2803152A1 (en) * 1978-01-25 1979-07-26 Hans Rueckstaedter Data recording pregnancy prevention instrument - includes cassette with medical data, electrical thermometer, digital clock, controlled by microprocessor and operating keys
CH626224B (en) * 1978-08-09 1900-01-01 Bioself Int Inc POCKET CALCULATOR FOR THE PREDICTION OF TIME CYCLES.
DE2847397A1 (en) * 1978-11-02 1980-05-08 Norbert Dipl Ing Kluge Microprocessor family planning calculator - is programmed to evaluate safety period of birth control based upon menstrual cycle
US4246907A (en) * 1979-01-29 1981-01-27 Bullock Russel F Method for identifying an ovulation phase within a menstrual cycle of a woman
JPS6035018B2 (en) * 1979-02-19 1985-08-12 シャープ株式会社 women's thermometer

Also Published As

Publication number Publication date
EP0093149A4 (en) 1985-06-26
EP0093149A1 (en) 1983-11-09
JPS58501895A (en) 1983-11-10
AU9058882A (en) 1983-06-01
US4465077A (en) 1984-08-14
WO1983001735A1 (en) 1983-05-26

Similar Documents

Publication Publication Date Title
CA1193726A (en) Apparatus and method of determining fertility status
US4771791A (en) Apparatus for storing and displaying body temperature
EP0385621B1 (en) Method and apparatus for monitoring the ovulation cycle
US4557273A (en) Method and apparatus for detecting ovulation
EP2685904B1 (en) Portable preprogrammed thermometer for indicating fertility status
US4488560A (en) Menstruation periodic counter
US3934462A (en) Automatic computing ocular tonometer system
KR20010067359A (en) Bio-characteristic value measuring device with graphical display
US6478748B1 (en) Medical telemetry system
US6853949B2 (en) Living body data management system with function of displaying growth process graph
CN107252324A (en) Natural family planning computational methods and device
CN107320135A (en) Natural family planning instruction device and method
EP1192903B1 (en) Apparatus for managing female physical condition
US20040171964A1 (en) Device for family planning and preventing conception
JPS61159934A (en) Bodily temperature recording display device for woman
Alluisi et al. Behavioral effects of infectious diseases: Respiratory Pasteurella tularensis in man
JP2747277B2 (en) Women&#39;s thermometer
US6725088B2 (en) Female physical condition managing apparatus
KR900002111B1 (en) Bodly temperature memory apparatus
JP2951273B2 (en) Women&#39;s thermometer
JPH09250950A (en) Clinical thermometer for female
CN107320134A (en) Natural family planning indicating means and system
JPH0434809Y2 (en)
Dirks et al. Bayesian prediction of noncompliance: As-needed (PRN) medication usage patterns and the battery of asthma illness behavior
JPS63311941A (en) Electronic type recording clinical thermometer apparatus

Legal Events

Date Code Title Description
MKEC Expiry (correction)
MKEX Expiry
MKEX Expiry

Effective date: 20021022