Most basic timing functions can be created with a clock, digital logic and in many cases, an ADC. Likely competitors to the TimerBlox family are microcontrollers and resistor-capacitor based timing devices. Microcontrollers typically include an integrated clock, various logic elements, and an ADC. However, generating any timing function requires significant programming effort and time. Programmability means that there is the potential for software bugs and firmware validation requirements. Once in production, each individual device must be programmed which adds effort and expense. To achieve good accuracy, microcontrollers typically require an external crystal. For analog voltage control, such as VCO operation, microcontrollers need an ADC, requiring added expense. On the other hand, resistor-capacitor based clock devices typically have a large footprint, as they require many external components, such as resistors, capacitors, diodes, discreet logic, etc. These types of timing devices usually exhibit poor accuracy and temperature performance for a variety of reasons and it is often difficult to find a resistor-capacitor combination for the desired time constant. The typical RC solutions results in a power consumption that is significantly higher than TimerBlox parts.