As compared with other neuroimaging methods, functional magnetic resonance imaging (fMRI) presents distinct advantages in terms of its spatial resolution and noninvasive nature. For these reasons, it is widely used in neuroimaging research (Sobel, Johnson, Mainland, and Yousem, 2003; Volkow et al. 1997). In human olfactory research, however, the use of fMRI presents special problems in terms of the control of olfactory stimulation, and several attempts at developing MRI-compatible olfactometers have been described. These systems suffer disadvantages, either in terms of their high cost (Doty and Kobal 1995; Johnson and Sobel 2007) or their lack of temporal accuracy with regard to stimulus presentation (Lowen and Lukas 2006; Sommer et al. 2012), which prohibit event-related paradigms. As a compromise solution, we developed a system for olfactory stimulation based on principles already used for suprathreshold odor presentation (Lundström et al. 2010; Sobel et al. 1997) at a reasonable cost. Inspired by the olfactometer proposed by Lorig, Elmes, Zald, and Pardo (1999), we designed a modular olfactometer based on a microcontroller with the following criteria in mind: It should be software-controlled and capable characterization: the first to measure system latency, and the second to measure the repeatability of stimulation in terms of odor concentration.

Materials and method

Overall system function

The system can be described in terms of a number of interconnected subsystems, as follows. First, as is shown in Fig. 1, there is intercommunication (data transfer) between the controller and the computer. The olfactometer both sends data to the computer, indicating the state of the system, and receives data from it in the form of commands to run and execute tasks. The controller in turn drives another subsystem, the pneumatic system (PS), fed by compressed air, which regulates airflow and directs it to different odor diffusers by means of solenoid valves. Depending on the valve enabled by the controller, an odor is presented to the subject. Another subsystem, the breathing detector (BD, described in detail below), measures respiration and synchronizes with the controller. The electronic parts are placed in a control room to avoid radio-frequency interference with the scanner. The odor diffusers are placed near the subject (10 cm away) and are linked to the PS by Tygon tubing (10 m, Ø1.6–3.2 mm; available from Fisher Scientific, www.fishersci.com). Nasal/oral cannula (#P1319; from Pro-Tech, www.pro-tech.com), connected to the BD by Tygon tubing, are used both to register the subject’s respiration and to present odors. The nasal side of the cannula is used to measure pressure, and its oral side is connected to the odor diffusers via PTFE tubing (10 cm, Ø1.6–3.2 mm; www.fishersci.com) inserted into the oral segment (Fig. 1). The airflow enters the nostrils, and the BD closes the part of the cannula passing over the ears, and thus prevents air flow (and odors) in this direction. Some odors can be captured by the cannula and thus persist after stimulation (e.g., isovaleric acid). In this case, it is preferable to direct the airflow toward the nostrils without passing through the cannulas. To achieve this, the outlet of the PTFE tubing is placed 2 cm from the nostrils. Alternatively, it is possible to use another model of nasal cannula (#P1317-20; www.pro-tech.com) that does not include an oral side.

Fig. 1
figure 1

Schematic diagram shows global functioning of the olfactometer, and in particular its modular aspect

Breathing detector

The power supply for the BD is enclosed in metal in order to avoid electromagnetic disturbance, and all electronic parts are enclosed in a Faraday cage. Respiration is measured using a pressure sensor (SKU #14830; SleepSense, www.sleepsense.com) connected to the nasal cannula. Changes in pressure due to breathing into the nasal cannula correspond to the velocity of air, hence to the flow rate. This method provides a high temporal resolution and good flexibility in the MRI environment (Johnson et al. 2006). The analog signal representing respiration is first amplified using AD620 amplifiers (Analog Devices, www.analog.com) and subjected to low-pass filtering in order to retain only that part of the signal corresponding to the respiration frequency (0.2–0.5 Hz), with high-frequency noise removed. The circuit depends on a pressure sensor. For more details, please refer to the AD620 data sheet. Filtering is processed by a resistor–capacitor circuit (RC circuit). The analog signal is then digitized for further processing and displayed (Fig. 2), using a microcontroller (#PIC16F877; Microchip Technology, Inc., www.microchip.com) that codes the signal in eight bits, which is sufficient to represent the respiratory cycle and simplifies the program. The signal is acquired every 10 ms and compared to two thresholds using a Schmitt trigger. The result of the comparison is written as a digital output, allowing the controller to be synchronized with the respiratory cycle. This part of the program is prioritized, and the rest of the program is placed in an infinite loop for display and keyboard management. Both the thresholds and the signal gain can be set and LCD-displayed, with a resolution of 128 × 64 pixels (#64128MCOG; Displaytech Ltd., www.displaytech.com.hk). An output is provided for connecting an acquisition card to record the amplified signal of the subject’s respiration.

Fig. 2
figure 2

Breathing signal and thresholds are displayed on the screen. The user can move up or down the thresholds and adjust the signal gain

Pneumatic system

The PS comprises six electrical inputs connected to the controller (A in Fig. 3), six push-buttons for manual control of the system (B in Fig. 3) and pneumatic outputs (C in Fig. 3): One delivers a continuous airflow, six deliver airflow on demand according to the state of the inputs or push-buttons (each corresponding to a pneumatic output), and the last delivers compensatory airflow when the six previous outputs are all switched off, in order to keep the total flow constant. All buttons are connected to a mixer (#1005 allows for the use of four odors, and #1006 for the use of six; Omnifit, www.omnifit.com), placed near the subject, that is linked to the nasal cannula. One-way valves (#3050591; www.fishersci.com) are placed between the odor diffusers and the mixer in order to block any backflow of odorant into the PS. Some odors, like isoamyl acetate, can deteriorate the one-way valves early on, reducing pressure increases and as well as increasing system response time (after several uses, we measured a delay of 200 ms relative to first use). In the worst-case scenario, the one-way valves remain closed. It is thus necessary to check and change the valves regularly. Each flow delivered on demand passes through an odor diffuser before arriving in the mixer, so each electrical input drives a single odor channel. The continuous airflow reduces flow change due to opening and closing the valves. Thus, the change between odorant and nonodorant conditions does not produce any thermal or tactile cues. When no odor is presented to the subject, the flow rate is maintained by compensatory airflow that replaces the airflow transmitting the odor. The continuous airflow is managed by a flowmeter regulator (D in Fig. 3; #P16A4-BA0A; Aalborg, www.aalborg.com). An alternative airflow is managed by another flowmeter (E in Fig. 3) whose output supplies six normally closed manifold valves/selectors (F in Fig. 3), each of which corresponds to one of the six odor channels. Additionally, a normally open valve (G in Fig. 3; #225T091 and #161T021 from NResearch, Inc., www.nresearch.com) corresponds to the compensatory airflow. These valves are driven by a specific driver circuit (H in Fig. 3; #225D5X12, www.nresearch.com) in order to prolong valve life and limit power consumption. Another electronic circuit combines the push-button and electrical inputs, and manages the normally open valve. Each push-button is associated with an electrical input to an OR logic gate (I in Fig. 3). The normally open valve, which allows air to flow when no odor channel is selected, is controlled by an OR gate (J in Fig. 3) connected to the output of the other OR gate. This valve is then automatically closed when one or more odor channels is selected. Medical air is used to supply air for the PS, as well as air compressors that require two filters (#AC010ABFI and #AO010ABFX; Parker Hannifin Corp., www.parker.com) and a pressure-reducing valve. The pneumatic system was simplified in relation to Lorig et al.’s (1999) olfactometer: Only two flowmeter regulators were used. This airflow management ensures the same response time, whatever odor channel is selected, but it does not enable the concentration to be adjusted with the “air dilution” method. Consequently, a different method is described below (see the Odor Diffusion section).

Fig. 3
figure 3

Schematic of pneumatic system

Controller functioning

The controller is based on microcontroller PIC16F877 (www.microchip.com), which acts as an interface between the computer and the PS. It receives commands from the computer, runs the task required, and informs the computer in real time of changes in the system’s state. For ease of use and implementation, the controller uses the RS232 port to exchange data with the computer. The controller manages six digital outputs corresponding to each odor channel. To drive the PS, a request is sent by the computer to the controller. The request is composed of four parameters:

  • the number of outputs that need to be enabled (numbered from 1 to 6);

  • the length of time during which the outputs need to be enabled, and the relevant time unit (seconds, milliseconds, or number of respirations);

  • information about the synchronization with respiration (enabled or disabled); and

  • the task number (this is optional but can be useful in processing, e.g., fMRI or other data offline; the task number appears in the data sent to the computer).

The request is received on the PIC UART (universal asynchronous receiver/transmitter) module, and the program translates the data, saves it, and confirms receipt of the request. The task is defined, in the program of the microcontroller, by four parameters: the task number, the time unit, synchronization enabled (or disabled), and the “time to live of task” (TTLT). When the output activation does not have to be synchronized with respiration, the program enables the output, returns feedback to the computer, and informs the user via a message on the liquid crystal display (LCD). When the output activation does need to be synchronized with respiration, the program waits for the signal’s rising edge that is generated by the BD before activating the output. The user is informed via the LCD that the output will be activated for the next respiratory cycle. The following process is the same as for synchronized tasks. As soon as the output is enabled, the TTLT decrements every second, millisecond, or respiratory cycle, according to the time unit chosen. When the TTLT is equal to zero, the output is switched off and a message is sent to the computer.

Technical specifications of the controller

We measured the execution time of the program functions and calculated the response time, for both the most favorable case and the worst case, at different serial-port bit rates. Since the response time is heavily dependent on the bit rate, we used a speed of 115,200 baud (the electronic components used did not allow a higher speed). We obtained response times of 3.8 ms for the best case, and 9.9 ms for the worst case. Temporal accuracy depends on the time unit selected. Indeed, three clocks can decrement the TTLT: one every millisecond, another every second, and the last every BD signal rising edge. The outputs are enabled as soon as possible, in order to minimize response time (Fig. 4). The program does not wait for the clock signal rising edge unless task activation is synchronized with respiration and the unit of time used is the number of inhalations. Hence, outputs are enabled during the request period increase by an error time of 1 ms, 1 s, or one breathing period, according to the time unit used.

Fig. 4
figure 4

The temporal resolution of the controller depends on the unit time chosen. The output selected is switched on as soon as possible. Consequently, when the output is switched on between two clock ticks, the period of activation is longer than the period request

Odor diffusion

The odor diffusers comprise a filter holder (#SX0002500; www.fishersci.com) and an activated carbon felt (#FC1201; Pica, www.picacarbon.com) in the shape of a ring containing odorous liquid (Fig. 5). Carbon felt has a high specific surface area (2,500 m2/g) that absorbs a high volume of liquid. This shape provides a constant concentration of odor over time. The felt is 2 mm thick, the radius of the larger ring is the same as that of the filter (22 mm), and the smaller radius measures 6 mm. To set a concentration, the liquid odorant is diluted into a neutral nonodorant solution (diethylphthalate). The volume of solution injected into the felt was 400 μL in the present test.

Fig. 5
figure 5

Photo of an odor diffuser opened. At the top is the body of the hold filter, at the bottom, the backing of the felt and the felt itself , both in the shape of ring

Measuring response time of the olfactometer

To measure the system’s temporal resolution, we designed an apparatus measuring ultraviolet (UV) absorption (Johnson et al. 2003) of the gas flow leaving the nasal cannula (Fig. 6). The gas used for this measurement is acetone, since its extinction coefficient is high (12.4 L/mol.cm at 280 nm) and its vapor pressure is low (228 mbar at 20º), ensuring a high gas concentration. The UV source is a diode emitting spectral light centered at 260 nm. The beam is homogenized and split in two. One of these beams is a reference whose intensity is directly measured by a photodiode, and the other passes through the gas leaving the nasal cannula. The photodiode electric currents are converted into tensions with a transimpedance OPA230. Both signals are acquired by a National Instruments card. A MATLAB program drives the pneumatic system via the controller and acquires photodiode signals via the National Instruments card. We obtained the gas concentration by using the Beer–Lambert law: C  = (−1/lε) log(I/I 0). The apparatus frame, in aluminum, was connected to ground, the amplifier circuit was housed in a Faraday cage, and the shielded cable was used to limit electromagnetic interference.

Fig. 6
figure 6

This apparatus measures the concentration at the outlet of the nasal cannula. The ultraviolet (UV) beam of a light-emitting diode (LED) is split in two: One beam is a reference, and the second passes through the gas. For this measure, we replace the odor by acetone, which has a high absorption in UV

Results and discussion

Olfactometer response time

A MATLAB routine was programmed to measure the response time of the system. This routine runs 40 cycles, switching between 4 s of clean air and 4 s sending acetone. The response time of the olfactometer depends on two parameters: namely, the value of constant airflow and the value of odor-transmitting airflow. Therefore, measurements were made for several flows: the constant-airflow rate from 0 to 1.8 L/min, with a step of 0.2 L/min, and the odor-transmitting airflow rate from 0.2 to 1.8 L/min with a step of 0.2 L/min. The delay (latency) was measured between the time at which feedback was returned by the controller to the MATLAB program and the time when the concentration exceeded 95% of nominal concentration. The nominal concentration was the mean concentration obtained during the 2.5-s period that followed the acetone transmission.

Response time was observed to decrease when the odor airflow rate increased (Fig. 7). We obtained the same result when the flow rate of the constant airflow was increased, but the effect was less salient.

Fig. 7
figure 7

Delays (on the left) and temporal resolution as standard errors (on the right) of the olfactometer, depending on the flow rates of both the odorant air and the continuous odorless airflow

Thus, for a given total flow rate, the shortest response time was obtained with the lowest constant stream flow rate, but this flow rate had to be high enough to ensure that the subject did not perceive a tactile cue from the valve switching. We observed that for a flow rate of odorant air higher than 1 L/min, the response time of the olfactometer was less than 0.2 s, with a time resolution less than 25 ms. For an odorant air flow rate higher than 0.4 L/min, the response time was less than 0.3 s, with a resolution less than 50 ms. Thus, thanks to the synchronization of odor presentation with the subject’s inhalations, we could determine with high temporal precision the beginning of stimulation with typical flow rate.

Repeatability of stimulation

To confirm that repeated presentations of odor resulted in the same concentration of gas, we used a variable delay between successive odor presentations and measured a quantity of gas sent during the second presentation using gas chromatography. The odors were presented for 15 s.

Only the airflow that transmitted odor was used, with a flow rate of 1 L/min. Six pause durations (10, 20, 40, 80, 160, 320 s) were used, and for each of them the measure was repeated five times. The 30 measures were released successively, and the order of pause durations was randomized. The gas concentration delivered during odor presentation was measured using the gas chromatography method. Three odors were used: n-butanol, isoamyl acetate, and pyridine. These odorants are currently used in olfactory psychophysical studies. A lower dilution of the odorant corresponded to lower gas concentration and higher standard error (Table 1). These results show the limits of the odor diffusion method: It cannot work with low concentrations of these three odors close to the olfactory detection threshold. However, it is appropriate for suprathreshold concentrations.

Table 1 Means and standard errors of gas concentration measured during several odor presentations separated by a variable delay

fMRI results

The olfactometer presented above was used in a previous fMRI study (Billot et al. 2011). In this study, two odors were used with three different durations of presentation: over one inhalation, three inhalations, and six inhalations. The olfactometer was synchronized with the inhalations and delivered odors only during this phase.

The Fig. 8 shows the observed activations when the olfactory stimulation condition (one-inhalation duration) was contrasted with the odorless condition (p < .005 corrected, qFDR). We identified two brain areas that are characteristic of olfactory perception (Sobel et al. 2003): the orbitofrontal cortex and the piriform cortex.

Fig. 8
figure 8

Brain activations in response to olfactory stimulations (phenyl ethyl alcohol and isoamyl acetate) contrasted with the odorless airflow condition. On the left, bilateral activations of the orbitofrontal cortex are observed [Talairach coordinates: (21, 34, –5) and (−26, 33, –2)]. On the right, bilateral activations of the piriform cortex are observed [Talairach coordinates: (19, 1, –7) and (−20, –2, –11)]

These results (adapted from Billot et al. 2011) demonstrate the use and the interest of this olfactometer for block paradigms.

Conclusions

We have described the development of a versatile and modular MRI-compatible olfactometer previously used for an fMRI study (Billot et al. 2011). The pneumatic system can be used alone, with the operator manually driving the valves, or, when necessary, can be easily controlled by computer software and synchronized with the subject’s inhalations using the breathing detector. The modules are connected only when necessary, which can simplify the implementation of the system. Following extensive tests using the parameters described above, we established the response time of the system and odor concentrations in different conditions. We obtained a response time of less than 200 ms with a temporal resolution less than 25 ms in typical conditions, which appears convenient for fMRI event-related paradigms. The results of stimulation repeatability obtained depended on the dilution and odors used, but they were efficient for suprathreshold olfactory presentation, and so for a wide range of fMRI olfaction studies.