A method, comprising: using a first ultrasonic transducer and a second ultrasonic transducer to measure fluid flow using a present excitation frequency; performing a temperature calibration process that includes: sequentially generating a plurality of electrical signals for the first ultrasonic transducer, each generated electrical signals having a different respective frequency; for each respective frequency, measuring an amplitude of a signal from the second ultrasonic transducer; based on the measured amplitudes of the signals from the second ultrasonic transducer, determining a new excitation frequency; and using the first and second ultrasonic transducers to measure fluid flow using the new excitation frequency; and wherein determining the new excitation frequency comprises: determining a first frequency corresponding to a peak amplitude from among the measured amplitudes; determining a second frequency based on the peak amplitude, the second frequency being smaller than the first frequency, determining a third frequency based on the peak amplitude, the third frequency larger than the first frequency; and determining the new excitation frequency based on the second and third frequencies; and generating each of the plurality of electrical signals through configuration of one or more registers to include: a first value indicative of a number of pulses to generate of the electrical signal; a second value indicative of a first time period during for which each pulse is to be at a first voltage level; and a third value indicative of a second time period during for which each pulse is to be at a second voltage level. using a first ultrasonic transducer and a second ultrasonic transducer to measure fluid flow using a present excitation frequency; performing a temperature calibration process that includes: sequentially generating a plurality of electrical signals for the first ultrasonic transducer, each generated electrical signals having a different respective frequency; for each respective frequency, measuring an amplitude of a signal from the second ultrasonic transducer; based on the measured amplitudes of the signals from the second ultrasonic transducer, determining a new excitation frequency; and using the first and second ultrasonic transducers to measure fluid flow using the new excitation frequency; and sequentially generating a plurality of electrical signals for the first ultrasonic transducer, each generated electrical signals having a different respective frequency; for each respective frequency, measuring an amplitude of a signal from the second ultrasonic transducer; based on the measured amplitudes of the signals from the second ultrasonic transducer, determining a new excitation frequency; and using the first and second ultrasonic transducers to measure fluid flow using the new excitation frequency; and determining a first frequency corresponding to a peak amplitude from among the measured amplitudes; determining a second frequency based on the peak amplitude, the second frequency being smaller than the first frequency, determining a third frequency based on the peak amplitude, the third frequency larger than the first frequency; and determining the new excitation frequency based on the second and third frequencies; and generating each of the plurality of electrical signals through configuration of one or more registers to include: a first value indicative of a number of pulses to generate of the electrical signal; a second value indicative of a first time period during for which each pulse is to be at a first voltage level; and a third value indicative of a second time period during for which each pulse is to be at a second voltage level. a first value indicative of a number of pulses to generate of the electrical signal; a second value indicative of a first time period during for which each pulse is to be at a first voltage level; and a third value indicative of a second time period during for which each pulse is to be at a second voltage level.