this disclosure generally relates to the field of monitoring use of medical devices , and more particularly , but not exclusively , to methods for monitoring use of a detachable part of a medical device by utilizing identification technologies . in accordance with an aspect of some implementation , there is provided a method for controlling operation of a medical device , including : providing a detachable part identification module associated with a medical device ; attaching a detachable part , having associated therewith an identification marker , to the medical device at an attachment location ; following the attaching , employing the detachable part identification module to identify the identification marker ; and based on the identifying , controlling operation of the medical device by use of a computerized controller . in accordance with an aspect of some implementations , there is provided a system for controlling operation of a medical device , including : a detachable part associated with an identification marker , configured to be attached to a medical device at an attachment location ; a detachable part identification module associated with the medical device proximate the attachment location and configured to identify the identification marker following attachment of the detachable part at the attachment location ; and a controller , functionally associated with the detachable part identification module , configured to control operation of the medical device based on the identification of the identification marker by the detachable part identification module . in accordance with an aspect of some implementations , there is provided a non - transitory , computer - readable medium , associated with a medical device having associated therewith a detachable part identification module and having attached thereto a detachable part associated with an identification marker , storing computer - readable instructions executable by a computer to : employ the detachable part identification module to identify the identification marker ; and based on the identifying , control operation of the medical device . although in the illustrated implementations described herein , the medical device is a pulmonary function testing device and the detachable part is a bacterial / viral filter used in a pulmonary function testing device , the methods and systems described herein may be applied to any medical device functionally associated with a detachable part , particularly when a new detachable part must be used for each user or each test . reference is now made to fig1 , which is a schematic depiction of a bacterial / viral filter for use in a pulmonary function testing device according to the teachings herein . as seen in fig1 , a bacterial / viral filter 10 includes an attachment extension 14 configured for attachment to a pulmonary function testing device , a user engagement portion 12 , and a filtering portion 16 located intermediate attachment extension 14 and user engagement portion 12 . user engagement portion 12 includes a mouthpiece suitable for the subject to place his mouth over and to blow air into filter 10 towards a membrane or other suitable filter located in filtering portion 16 . bacterial / viral filter such as filter 10 are commonly used in the art of pulmonary function testing and are commercially available from , for example , air safety ltd . of morecambe , uk , under catalog number “ spiroguard 2800 / 21 .” any other suitable bacterial / viral filter may also be used , for example a filter including a rubber mouthpiece fitted onto user engagement portion 12 . any suitable material may be used for implementing a detachable part according to the teachings herein . that said , in some implementations , the detachable part is formed of plastic . in some implementations , the detachable part is recyclable . in some implementations , the detachable part is biodegradable . in some implementations , an identification marker 20 is mounted onto filter 10 , typically at filtering portion 16 . identification marker 20 is unique to each bacterial / viral filter 10 , and is configured to definitively identify filter 10 in order to ensure that filter 10 is suitable for use , as described in detail herein . in some implementations , identification marker 20 also contains information that is unique to a patient such as patient information , doctor information , measurement data , and filter use information , as described in detail herein . in some implementations , identification marker 20 is irremovably mounted onto an external surface of filtering portion 16 , such as by adhesive , epoxy , soldering , or welding . in some implementations , identification marker 20 is embedded into the material forming filtering portion 16 , for example by being molded into the material . identification marker 20 may be of any suitable size consistent with this disclosure . in some implementations , identification marker 20 includes a transmitter for transmitting a communication signal to a portion of a medical device as described herein . for example , identification marker 20 may be a passive rfid tag , a bluetooth ® transmitter , or a wi - fi transmitter . in some implementations , identification marker 20 includes a marker which is readable by a reading device . for example , identification marker 20 may be a barcode or a quick response ( qr ) code . in some implementations , identification marker 20 includes a receiver for receiving a communication signal from a medical device as described herein . in some implementations , identification marker 20 includes read - only non - volatile memory for storage of information to uniquely identify filter 10 . in some implementations , identification marker 20 includes read - write non - volatile memory for storage of additional information and for updating information on identification marker 20 based on information received from the identification marker receiver . in some implementations , in addition to uniquely identifying filter 10 , identification marker 20 may include information regarding an expiration time of filter 10 , a user to whom filter 10 was assigned , manufacturing information for filter 10 , and any other information that may be needed by a medical professional using filter 10 and / or by a validation mechanism validating filter 10 . the additional information may also include filter use information ( e . g ., duration of use , timestamps , number of uses , etc . ), patient information ( e . g ., name , birthdate , social security number , etc . ), doctor information ( e . g ., name , etc . ), insurer information ( e . g ., provider name , policy number , etc . ), and measurement data ( e . g ., spirometry , lung volumes , etc .). in some implementations , identification marker 20 may only be used to uniquely identify filter 10 , and a second identification marker ( not shown ) includes additional information useful for validation of filter 10 or for medical use of filter 10 . the second identification marker may be of the same type as identification marker 20 , or may be of a different type . in some implementations , the single identification marker 20 contains both information to uniquely identify the filter and additional information useful for validation of filter 10 or for medical use of filter 10 . in some implementations , identification marker 20 is partitioned into non - volatile memory that stores permanent , read - only information and non - volatile memory that stores updatable , read - write information . in some implementations , the permanent , read - only information ( e . g ., including serial number , manufacturer name , and place and date of manufacturing ) is written to the non - volatile memory at the factory before shipment of the product . in some implementations , the updatable , read - write information is initiated at the factory , such as setting the number of uses to zero and the time duration of use to zero . in some implementations , the updatable information is updated in real - time on identification marker 20 before , during , or after use of filter 10 within a pulmonary function laboratory . in some implementations , identification marker 20 is authenticated prior to use , as described in further detail herein . in some implementations , the information included in identification marker 20 is encrypted or otherwise protected . any suitable encryption or protection method may be used , such as public key encryption . in some implementations , bacterial / viral filter 10 includes a locking mechanism ( not shown ) configured to enable attachment only to one or more medical devices of a specific type and to prevent attachment to other medical devices , for example other makes / third - party medical devices . the locking mechanism , in some implementations , can include snap - fit , screws , clamps , clasps , clips , pins , straps , detents , engageable / mating - type surfaces , hook - and - loop , adhesive , and / or any other suitable locking mechanism consistent with this disclosure . in some implementations , the act of attaching the filter 10 to a medical device results in a physical change , temporary or permanent , in the filter 10 that can prevent , once filter 10 is removed from the medical device , re - attachment of the filter to the same medical device and / or to a different medical device . for example , attachment of filter 10 to the medical device may break a protrusion ( not shown ) off filter 10 , which protrusion is necessary to unlock a limiting element ( not shown ) allowing initial insertion of the filter 10 into the medical device . other possible changes include tearing , crushing , punching one or more holes , deforming , and the like . reference is now made to fig2 a and 2b , which are schematic depictions of pulmonary function testing devices according to the teachings herein . as seen in fig2 a and 2b , a pulmonary testing device 200 has connected thereto at an attachment location 202 a bacterial / viral filter 210 , similar to filter 10 described herein with reference to fig1 . as seen clearly in fig2 b , filter 210 includes an identification marker 220 substantially as described herein with reference to fig1 . in fig2 a pulmonary testing device 200 is a whole body plethysmograph , known in the art as a “ body box ”, and in fig2 b pulmonary testing device 200 is a portable spirometer . thus , the features described herein may be applied to any suitable medical device , including portable medical devices and non - portable medical devices , in different levels of complexity . in some aspects , the features described herein may be applied to the devices described in u . s . patent application ser . nos . 12 / 670 , 661 , 12 / 830 , 955 , 13 / 146 , 295 , and 13 / 808 , 868 , which are incorporated by reference herein . pulmonary function testing device 200 includes a detachable part identification module 230 , configured to read or interact with identification marker 220 in order to identify the validity of filter 210 . detachable part identification module 230 typically is located proximate filter 210 and / or proximate identification marker 220 , in order to facilitate proper function of detachable part identification module 230 . in some implementations , in which identification marker 220 includes a passive rfid tag configured to transmit signals , detachable part identification module 230 includes an rfid antenna configured to receive signals of any suitable frequency emitted from the rfid tag and an rfid reader configured to identify the rfid tag . in some such implementations , the frequency of the rfid signals is set within a suitable range such that the antenna may only receive signals from identification marker 220 located on a filter 210 currently connected to device 200 and not from identification markers of other filters with the same rfid signal range or with a different rfid signal range , for example other filters stored in a room where pulmonary function testing , using device 200 and / or other medical devices and / or medical device types , takes place . in some implementations , each medical device can be set , calibrated , programmed , or otherwise suitably configured to accept one or more specific rfid signal types and / or frequencies . in some implementations , in which identification marker 220 includes a barcode , detachable part identification module 230 includes a barcode reader configured to identify the barcode . in some implementations , in which identification marker 220 includes a quick response ( qr ) code , detachable part identification module 230 includes a qr code reader configured to identify the qr code . in some such implementations , detachable part identification module 230 includes an image capturing mechanism for capturing an image of the barcode or qr code , and the image capturing mechanism has an uninterrupted line of sight to the barcode or qr code . in some implementations , in which identification marker 220 includes a bluetooth ® transmitter configured to transmit signals , detachable part identification module 230 includes a bluetooth ® receiver configured to receive bluetooth ® signals transmitted by the bluetooth ® transmitter and to identify a source of such signals . in some such implementations , the frequency of such signals is set to be within a suitable range such that the bluetooth ® receiver may only receive signals from identification marker 220 located on a filter 210 currently connected to device 200 and not from identification markers of other filters with the same bluetooth ® signal range or with a different bluetooth ® signal range , for example other filters stored in a room where pulmonary function testing , using device 200 and / or other medical devices and / or medical device types , takes place . in some implementations each medical device can be set , calibrated , programmed , or otherwise suitably configured to accept one or more specific bluetooth ® signal types and / or frequencies . in some implementations , in which identification marker 220 includes a wi - fi transmitter configured to transmit signals , detachable part identification module 230 includes a wi - fi receiver configured to receive wi - fi signals transmitted by the wi - fi transmitter and to identify a source of such signals . in some such implementations , the frequency of such signals is set to be within a suitable range such that the wi - fi receiver may only receive signals from identification marker 220 located on a filter 210 currently connected to device 200 and not from identification markers of other filters with the same wi - fi range or with a different wi - fi range , for example other filters stored in a room where pulmonary function testing , using device 200 and / or other medical devices and / or medical device types , takes place . in some implementations each medical device can be set , calibrated , programmed , or otherwise suitably configured to accept one or more specific wi - fi signal types and / or frequencies . in some implementations , in which identification marker 220 includes a receiver configured to receive signals , detachable part identification module 230 includes a transmitter configured to transmit signals to the identification marker receiver . as above , the technology used may be rfid , bluetooth , wi - fi , or any suitable technologies for transmitting and receiving signals . in some implementations , the identifying information within the identification marker 220 is stored on non - volatile memory . in some implementations , the non - volatile memory includes one or many microchips within an rfid tag , which may be set to read - only , read - write , or write - once read - many . in some implementations , the non - volatile memory includes eeprom , or any suitable memory as described herein . in some aspects , detachable part identification module 230 may be configured to identify only the identification marker 220 of a detachable part 210 attached to the medical device 220 at attachment location 202 . in some implementations , an identification range of detachable part identification module 230 is configured to be less than 1 meter . in some implementations , an identification range of detachable part identification module 230 is configured to be less than 50 cm . in some implementations , an identification range of detachable part identification module 230 is configured to be less than 10 cm . in some aspects , detachable part identification module 230 may be configured to only identify the single detachable part 210 that is attached to the medical device 220 at attachment location 202 , and to not identify other detachable parts stored in the same room . in some implementations , detection of the presence of a detachable part attached to the medical device is required before the detachable part identification module is initiated to read the detachable part . in some implementations , attachment of a detachable part 210 to the medical device 220 at attachment location 202 results in a mechanical or electrical deformation that serves as the initial detection of the detachable part by the medical device . in some implementations , detachable part identification module 230 may read identification marker 220 only after the initial detection is received . in some implementations , detachable part identification module 230 may be initiated to read identification marker 220 only after the user provides an input to a graphical user interface . in some implementations , the duration of detection of a detachable part by the identification module is configured to be less than 10 seconds . in some implementations , the duration of detection of a detachable part by the identification module is configured to be less than 5 seconds . in some implementations , the duration of detection of a detachable part by the identification module is configured to be less than 1 second . detachable part identification module 230 is functionally associated with a controller 240 of medical device 200 , which controller can disable medical device 200 if detachable part identification module 230 indicates that the currently attached filter 210 is invalid or unidentified , as will be described in further detail herein . in some implementations , detachable part identification module 230 is functionally associated with a clock 250 , and is configured to timestamp a time of connection of filter 210 to device 200 based on a time indicated by clock 250 . in some implementations , medical device 200 includes a destruction mechanism ( not shown ) for physically destroying identification marker 220 following use of detachable part 210 by a user . the destruction mechanism may be any suitable destruction mechanism , such as a crushing , tearing , or pinching mechanism , located proximate attachment location 202 . in some implementations , medical device 200 includes an invalidation mechanism ( not shown ) for invalidating identification marker 220 following use of detachable part 210 by a user . the invalidation mechanism may be any suitable mechanism , such as a module for overwriting the identification marker , reprogramming the identification marker , re - encrypting the identification marker with a random key , changing a validity bit of the identification marker , or erasing the identification marker , for example using electrical or magnetic signals . in some implementations , the invalidation mechanism forms part of detachable part identification module 230 . in some implementations , the invalidation mechanism includes erasing all confidential information from the identification marker , including patient information , measurement data , and doctor information . in some implementations , the invalidation mechanism is not associated with the medical device but is instead a separate device specifically designed to invalidate an identification marker 220 of detachable part 210 . in some implementations , the invalidation mechanism is housed within an invalidation wand ( not shown ) that can be waved over an identification marker to invalidate the marker . in some implementations , the invalidation mechanism occurs after the detachable part is removed from the medical device . in some implementations , attachment location 202 has a predetermined contour having a specific orientation , and the attachment extension of the detachable part has a matching contour , wherein the detachable part may only be placed at the attachment location in a specific orientation . in some implementations , attachment location 202 is part of a detachable part connector element ( not shown ) removably fitted into medical device 200 . the detachable part connector element may be removably fitted into the medical device using any suitable mechanism , including snap - fit , screws , clamps , clasps , clips , pins , straps , detents , engageable / mating - type surfaces , hook - and - loop , adhesive , and / or any other suitable fitting mechanism consistent with this disclosure . in some implementations , detachable part identification module 230 forms part of the detachable part connector element . in some implementations , the detachable part connector element includes an authentication mechanism configured , when the detachable part connector element is inserted into medical device 200 , to interact with an authentication module of medical device 200 for authentication of the detachable part connector element . in some embodiments , following removal of the detachable part connector element from medical device 200 and reintroduction into the medical device , the authentication module of medical device 200 re - authenticates the detachable part connector element . reference is now made to fig3 , which is a schematic depiction of detachable part identification module 230 of pulmonary function testing devices 200 of fig2 a and 2b , according to the teachings herein , and to fig4 a and 4b , which , when taken together , are a schematic flowchart of a method for controlling operation of a pulmonary function testing device according to the teachings herein . as seen in fig3 , detachable part identification module 230 includes an identification marker capturer 300 , configured to capture the information included in identification marker 220 upon attachment of filter 210 at attachment location 202 , as seen at step 400 in fig4 a . typically , identification marker capturer 300 is a hardware component , such as a barcode reader , a qr code reader , or a communication signal receiver such as an rfid antenna , a bluetooth ® receiver , or a wi - fi receiver . as seen at step 402 in fig4 a , upon capturing of identification marker information by identification marker capturer 300 , a processor 302 associated with or forming part of detachable mark identification module 230 activates a time - stamper 304 to associate a time stamp , determined using clock 250 , with the captured identification marker information . in some implementations , processor 302 stores the time stamp in an identification marker database 306 , implemented , for example , as a sql relational database , as seen at step 404 of fig4 a . in some implementations , identification marker database 306 is local to medical device 200 , and contains information about identification markers used in device 200 . in other implementations , identification marker database 306 is remote from medical device 200 , and processor 302 stores the time stamp in database 306 by transmitting the time stamp to database 306 using a transceiver 307 . transceiver 307 may use any suitable form of communication including wired communication and wireless communication . in some such implementations , transceiver 307 additionally transmits to database 306 an identification of the specific medical device 200 at which the time stamp was obtained . in some implementations , remote database 306 includes information regarding detachable parts identified in multiple medical devices . for example , database 306 may be a hospital database including information about all detachable parts used in the hospital , a health insurance database including information about all detachable parts used in all facilities of the health insurance provider , a manufacturer database including information about all detachable parts manufactured by the manufacturer , or a regional database including information about all detachable parts used in the region , such as a city or state . in some implementations , information captured by identification marker capturer 300 is transferred to an identification marker interpreter 308 , for interpretation of the captured information , as seen at step 406 of fig4 a . in some implementations , the identification marker interpreter is a software component , such as a rfid reader which interprets information included in rfid signals , or a bluetooth ® or wi - fi signal interpreter configured to identify the origin of bluetooth ® or wi - fi signals . in some implementations , identification marker interpreter 308 is configured to decrypt information included in identification marker 220 . in some such embodiments , identification marker 220 is encrypted with a public key , and identification marker interpreter 308 has access to the corresponding private key . in some embodiments , the private key is stored in medical device 200 , for example in a security software module . in some implementations , the private key is stored remotely to medical device 200 , and can be accessed via a network , for example using transceiver 307 . in some implementations , upon interpretation of the identification marker information , processor 302 stores the interpreted information in database 306 in association with the stored time stamp . at step 408 of fig4 a , processor 302 activates a patient identifier 310 , configured to identify a patient for whom medical device 200 and filter 210 are being prepared . in some implementations , processor 302 stores the patient information in database 306 , for example as part of a relational database table , as seen at step 410 of fig4 a . it is appreciated that patient identification may occur prior to , concurrently with , or after capturing and / or interpretation of the identification marker information . in some implementations , patient identifier 310 includes a hardware component 312 , configured to scan a biometric identifier of the patient , such as a fingerprint , a palm print , or an iris pattern , and a software component 314 configured to obtain a patient identification of a patient to whom the biometric identifier belongs . for example , software component 314 may access a biometric identifier database ( not shown ) to obtain patient information such as the patients name , address , date of birth , patient number , social security number , passport number , or other information suitable for uniquely identifying the patient . in other implementations , patient identifier may only include software component 314 , for example implemented as a separate process or thread run on processor 302 , which accesses software elements associated with medical device 200 to identify the patient . for example , software component 314 may access a user interface in which a medical professional provides patient identification information . once the information of the identification marker and of the patient are obtained , processor 302 runs a detachable part validator 316 , for example implemented as a separate process or thread , to determine whether the detachable part is valid for use at this time with this patient . at step 412 of fig4 a , detachable part validator 316 authenticates the information of the identification marker to determine its validity . an identification marker may be considered invalid in many instances . for example , if detachable part validator 316 does not recognize the information included in the marker , as may occur if counterfeit identification markers are used , detachable part 210 is considered invalid . as another example , if no identification marker indication is captured by capturer 300 detachable part 210 is considered invalid . as a further example , if identification marker interpreter 308 was not able to decrypt the information included in the marker , or if identification marker interpreter 308 found a mistake in a validity bit of the marker , detachable part 210 is considered invalid . in some implementations , detachable part validator 316 accesses a database 318 , which may be part of medical device 200 or may be external to medical device 200 , in order to ascertain the validity of detachable part 210 . in some such implementations , for example in implementations in which the identification marker is an rfid tag , database 318 may list all valid rfid tag numbers , such that if detachable part validator 316 does not locate the identified number in database 318 , detachable part 210 is considered invalid . in some implementations , information on the validity of the detachable part may be stored on the detachable part itself . the detachable part identification marker may have a re - writable bit that describes whether or not the detachable part is valid . for example , upon use of a single - use detachable part , the medical device identification module may re - write the validity bit to change its status to invalid at the end of the measurement procedure . upon re - using the same detachable part , the medical device identification module reads the validity bit and determines that the detachable part is invalid . in this embodiment , it is not required to compare the detachable part identification marker to a database since all required information is stored on the detachable part itself . in some implementations , the rules governing the status of the validity bit may be based on the number of uses of the detachable part , the time duration of use , or a combination of the two . in some implementations , the validity bit is updated and re - written after each measurement is performed . in some implementations , neither a validity bit nor a database exists . instead , the validity of the detachable part is determined by the detachable part identification module 230 based on reading all information stored locally on the detachable part . validity is then determined by detachable part validator 316 based on a rule set using the detachable part information . in some implementations , the rule set may include the number of uses , time duration of use , time stamp , and patient information . as seen at step 414 of fig4 b , when detachable part 210 is invalid , processor 302 notifies controller 240 that the detachable part is invalid , and controller 240 disables use of medical device 200 at step 416 of fig4 b . in some implementations , controller 240 indicates to an operator of medical device 200 that the device is disabled at step 418 of fig4 b . any suitable indication may be used , for example a visual indication presented on a display of medical device 200 , or an audible indication . in some such implementations , the indication informs the operator why the medical device has been disabled . if the information obtained from identification marker 220 is determined to be valid , detachable part validator 316 checks whether or not detachable part 210 is associated with a patient , at step 420 of fig4 b . in some implementations , association of a specific detachable part 210 having a unique identification marker 220 with a patient is logged in identification marker database 306 , and detachable part validator 316 determines the existence of such association between a patient and the detachable part by accessing database 306 , locally or remotely , as described herein . in some implementations , patient information is stored on the detachable part itself and is compared to information entered by a medical professional into a user interface or information retrieved on a database connectable to the medical device . for example , software component 314 may access a user interface in which a medical professional provides patient identification information . the detachable part validator 316 confirms whether or not the patient information read from the detachable part is associated with the patient information entered or read on the medical device . in some implementations , biometric information , such as a fingerprint scan , is stored on the detachable part . the detachable part validator 316 confirms whether the stored biometric information matches a new scan of a biometric identifier that is performed when the detachable part is attached to the medical device . as seen at step 422 of fig4 b , if identification marker 220 is associated with a patient , detachable part validator 316 determines whether the patient with whom the identification marker 220 is associated corresponds to the patient identified by patient identifier 310 . if identification marker 220 is associated with a patient that does not correspond to the patient identified by patient identifier 310 , detachable part 210 carrying identification marker 220 is considered invalid , as seen at step 414 described herein , and the medical device 200 is disabled as seen at step 416 and as described herein . otherwise , if identification marker 220 is associated with the patient identified by patient identifier 310 , detachable part validator 316 determines whether or not the identification marker has expired , at step 424 of fig4 b . in order to determine whether or not the identification marker has expired , detachable part validator 316 computes the duration that passed since the identification marker 220 was associated with the patient , and compares the computed duration to a predetermined expiration duration . if the computed duration is greater than the predetermined expiration duration , the detachable part 210 carrying identification marker 220 is considered invalid , as seen at step 414 described herein , and the medical device 200 is disabled as seen at step 416 and as described herein . in some implementations , the expiration duration is no longer than 12 hours . in some implementations , the expiration duration is no longer than 6 hours . in some implementations the expiration duration is no longer than one hour . in some implementations , the expiration duration can be of any suitable length . in some implementations , detachable part validator 316 checks whether the identification marker is in a color indicating that it had been used . for example , in some implementations , exposure of the identification marker to bodily fluids of a user , such as saliva , causes the identification marker to change from a first color indicating a new marker , to a second color indicating a used marker , similarly to litmus paper . when detachable part validator 316 identifies the second color , the detachable part 210 carrying identification marker 220 is considered invalid , as seen at step 414 described herein , and the medical device 200 is disabled as seen at step 416 and as described herein . if at step 420 detachable part validator 316 determines that the detachable part is not associated with any patient , or at step 424 detachable part validator 316 determines that the detachable part is associated with the correct patient and is not expired , the detachable part 210 is considered valid , as seen at step 426 of fig4 b . following validation of detachable part 210 , processor 302 associates the information captured by identification mark capturer 300 to an identification marker interpreter 308 with the time stamp obtained from time stamper 304 and with the patient information obtained from patient identifier 310 , as seen at step 428 of fig4 b . at step 430 of fig4 b , processor 302 notifies controller 240 that the detachable part is valid , and controller 240 indicates to an operator of medical device 200 that testing may begin , as seen at step 432 of fig4 b . in some implementations , following use of detachable part 210 , either once , or multiple times for the same patient , identification marker 220 is destroyed or disabled , as described herein with reference to fig2 a and 2b . in some implementations , detachable part 210 is destroyed or disabled after a fixed duration of time following the initial use of the detachable part . in some implementations , detachable part 210 is destroyed or disabled after a fixed number of uses recorded by the medical device . in some implementations , the detachable part has already been removed from the medical device without already having been destroyed or disabled . in some implementations , the detachable part 210 is initiated prior to attachment to the medical device . that is , a separate device such as an rfid reader and transmitter attached to a suitable computer is used to load information , such as patient information , onto an un - used detachable part . in some implementations , the patient information stored on the detachable part is read upon attachment to a first medical device . in some implementations , the patient information stored on the detachable part after use on a first medical device is read when detachable part is attached to a second medical device . in some implementations , the patient information read by the medical device is used to associate the measurement data with the proper patient within a database or computer system . in some implementations , detachable part 210 remains valid for multiple measurements and for use on multiple medical devices . certain features of the described subject matter , which are , for clarity , described in the context of separate implementations , may also be provided in combination in a single implementations . conversely , various features of the disclosed subject matter , which are , for brevity , described in the context of a single implementations , may also be provided separately or in any suitable subcombination or as suitable in any other described implementations . certain features described in the context of various implementations are not to be considered essential features of those implementations , unless the implementation is inoperative without those elements . although the disclosed subject matter has been described in conjunction with specific implementations thereof , it is evident that many alternatives , modifications and variations will be apparent to those skilled in the art . accordingly , it is intended to embrace all such alternatives , modifications and variations that fall within the scope of the appended claims . implementations of the subject matter and the functional operations described in this specification can be implemented in digital electronic circuitry , in tangibly - embodied computer software or firmware , in computer hardware , including the structures disclosed in this specification and their structural equivalents , or in combinations of one or more of them . implementations of the subject matter described in this specification can be implemented as one or more computer programs , e . g ., one or more modules of computer program instructions encoded on a tangible , non - transitory computer - storage medium for execution by , or to control the operation of , data processing apparatus . alternatively or in addition , the program instructions can be encoded on an artificially - generated propagated signal , e . g ., a machine - generated electrical , optical , or electromagnetic signal that is generated to encode information for transmission to suitable receiver apparatus for execution by a data processing apparatus . the computer - storage medium can be a machine - readable storage device , a machine - readable storage substrate , a random or serial access memory device , or a combination of one or more of them . the term “ data processing apparatus ” refers to data processing hardware and encompasses all kinds of apparatus , devices , and machines for processing data , including by way of example a programmable processor , a computer , or multiple processors or computers . the apparatus can also be or further include special purpose logic circuitry , e . g ., a central processing unit ( cpu ), a fpga ( field programmable gate array ), or an asic ( application - specific integrated circuit ). in some implementations , the data processing apparatus and / or special purpose logic circuitry may be hardware - based and / or software - based . the apparatus can optionally include code that creates an execution environment for computer programs , e . g ., code that constitutes processor firmware , a protocol stack , a database management system , an operating system , or a combination of one or more of them . the present disclosure contemplates the use of data processing apparatuses with or without conventional operating systems , for example linux , unix , windows , mac os , android , ios or any other suitable conventional operating system . a computer program , which may also be referred to or described as a program , software , a software application , a module , a software module , a script , or code , can be written in any form of programming language , including compiled or interpreted languages , or declarative or procedural languages , and it can be deployed in any form , including as a stand - alone program or as a module , component , subroutine , or other unit suitable for use in a computing environment . a computer program may , but need not , correspond to a file in a file system . a program can be stored in a portion of a file that holds other programs or data , e . g ., one or more scripts stored in a markup language document , in a single file dedicated to the program in question , or in multiple coordinated files , e . g ., files that store one or more modules , sub - programs , or portions of code . a computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network . while portions of the programs illustrated in the various figures are shown as individual modules that implement the various features and functionality through various objects , methods , or other processes , the programs may instead include a number of sub - modules , third party services , components , libraries , and such , as appropriate . conversely , the features and functionality of various components can be combined into single components as appropriate . the processes and logic flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform functions by operating on input data and generating output . the processes and logic flows can also be performed by , and apparatus can also be implemented as , special purpose logic circuitry , e . g ., a cpu , a fpga , or an asic . computers suitable for the execution of a computer program include , by way of example , can be based on general or special purpose microprocessors or both , or any other kind of cpu . generally , a cpu will receive instructions and data from a read - only memory ( rom ) or a random access memory ( ram ) or both . the essential elements of a computer are a cpu for performing or executing instructions and one or more memory devices for storing instructions and data . generally , a computer will also include , or be operatively coupled to receive data from or transfer data to , or both , one or more mass storage devices for storing data , e . g ., magnetic , magneto - optical disks , or optical disks . however , a computer need not have such devices . moreover , a computer can be embedded in another device , e . g ., a mobile telephone , a personal digital assistant ( pda ), a mobile audio or video player , a game console , a global positioning system ( gps ) receiver , or a portable storage device , e . g ., a universal serial bus ( usb ) flash drive , to name just a few . computer - readable media ( transitory or non - transitory , as appropriate ) suitable for storing computer program instructions and data include all forms of non - volatile memory , media and memory devices , including by way of example semiconductor memory devices , e . g ., erasable programmable read - only memory ( eprom ), electrically - erasable programmable read - only memory ( eeprom ), and flash memory devices ; magnetic disks , e . g ., internal hard disks or removable disks ; magneto - optical disks ; and cd - rom , dvd +/− r , dvd - ram , and dvd - rom disks . the memory may store various objects or data , including caches , classes , frameworks , applications , backup data , jobs , web pages , web page templates , database tables , repositories storing business and / or dynamic information , and any other appropriate information including any parameters , variables , algorithms , instructions , rules , constraints , or references thereto . additionally , the memory may include any other appropriate data , such as logs , policies , security or access data , reporting files , as well as others . the processor and the memory can be supplemented by , or incorporated in , special purpose logic circuitry . to provide for interaction with a user , implementations of the subject matter described in this specification can be implemented on a computer having a display device , e . g ., a crt ( cathode ray tube ), lcd ( liquid crystal display ), or plasma monitor , for displaying information to the user and a keyboard and a pointing device , e . g ., a mouse , trackball , or trackpad by which the user can provide input to the computer . input may also be provided to the computer using a touchscreen , such as a tablet computer surface with pressure sensitivity , a multi - touch screen using capacitive or electric sensing , or other type of touchscreen . other kinds of devices can be used to provide for interaction with a user as well ; for example , feedback provided to the user can be any form of sensory feedback , e . g ., visual feedback , auditory feedback , or tactile feedback ; and input from the user can be received in any form , including acoustic , speech , or tactile input . in addition , a computer can interact with a user by sending documents to and receiving documents from a device that is used by the user ; for example , by sending web pages to a web browser on a user &# 39 ; s client device in response to requests received from the web browser . the term “ graphical user interface ,” or gui , may be used in the singular or the plural to describe one or more graphical user interfaces and each of the displays of a particular graphical user interface . therefore , a gui may represent any graphical user interface , including but not limited to , a web browser , a touch screen , or a command line interface ( cli ) that processes information and efficiently presents the information results to the user . in general , a gui may include a plurality of user interface ( ui ) elements , some or all associated with a web browser , such as interactive fields , pull - down lists , and buttons operable by the business suite user . these and other ui elements may be related to or represent the functions of the web browser . implementations of the subject matter described in this specification can be implemented in a computing system that includes a back - end component , e . g ., as a data server , or that includes a middleware component , e . g ., an application server , or that includes a front - end component , e . g ., a client computer having a graphical user interface or a web browser through which a user can interact with an implementation of the subject matter described in this specification , or any combination of one or more such back - end , middleware , or front - end components . the components of the system can be interconnected by any form or medium of wireline and / or wireless digital data communication , e . g ., a communication network . examples of communication networks include a local area network ( lan ), a radio access network ( ran ), a metropolitan area network ( man ), a wide area network ( wan ), worldwide interoperability for microwave access ( wimax ), a wireless local area network ( wlan ) using , for example , 802 . 11 a / b / g / n and / or 802 . 20 , all or a portion of the internet , and / or any other communication system or systems at one or more locations . the network may communicate with , for example , internet protocol ( ip ) packets , frame relay frames , asynchronous transfer mode ( atm ) cells , voice , video , data , and / or other suitable information between network addresses . the computing system can include clients and servers . a client and server are generally remote from each other and typically interact through a communication network . the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client - server relationship to each other . in some implementations , any or all of the components of the computing system , both hardware and / or software , may interface with each other and / or the interface using an application programming interface ( api ) and / or a service layer . the api may include specifications for routines , data structures , and object classes . the api may be either computer language independent or dependent and refer to a complete interface , a single function , or even a set of apis . the service layer provides software services to the computing system . the functionality of the various components of the computing system may be accessible for all service consumers via this service layer . software services provide reusable , defined business functionalities through a defined interface . for example , the interface may be software written in java , c ++, or other suitable language providing data in extensible markup language ( xml ) format or other suitable format . the api and / or service layer may be an integral and / or a stand - alone component in relation to other components of the computing system . moreover , any or all parts of the service layer may be implemented as child or sub - modules of another software module , enterprise application , or hardware module without departing from the scope of this disclosure . while this specification contains many specific implementation details , these should not be construed as limitations on the scope of any invention or on the scope of what may be claimed , but rather as descriptions of features that may be specific to particular implementations of particular inventions . certain features that are described in this specification in the context of separate implementations can also be implemented in combination in a single implementation . conversely , various features that are described in the context of a single implementation can also be implemented in multiple implementations separately or in any suitable sub - combination . moreover , although features may be described above as acting in certain combinations and even initially claimed as such , one or more features from a claimed combination can in some cases be excised from the combination , and the claimed combination may be directed to a sub - combination or variation of a sub - combination . similarly , while operations are depicted in the drawings in a particular order , this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order , or that all illustrated operations be performed , to achieve desirable results . in certain circumstances , multitasking and parallel processing may be advantageous . moreover , the separation and / or integration of various system modules and components in the implementations described above should not be understood as requiring such separation and / or integration in all implementations , and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products . particular implementations of the subject matter have been described . other implementations , alterations , and permutations of the described implementations are within the scope of the following claims as will be apparent to those skilled in the art . for example , the actions recited in the claims can be performed in a different order and still achieve desirable results . accordingly , the above description of example implementations does not define or constrain this disclosure . other changes , substitutions , and alterations are also possible without departing from the spirit and scope of this disclosure .
a pulmonary function testing system includes a pft device operable to receive a respiratory airflow from a patient through an airflow chamber ; a mouthpiece coupled to the pft device and in airflow communication with the airflow chamber , the mouthpiece including a bacterial filter and associated with a unique identifier and patient data ; and a control system communicably coupled with the mouthpiece and the pft device . the control system is configured to perform operations including interpreting at least one of the unique identifier or the patient data associated with the mouthpiece ; and based on the interpretation , adjusting a status of the pft device to determine a pulmonary function parameter .