Abstract:
An apparatus for consolidated data services comprising a plurality of devices, a plurality of data services and a content application programming interface (API). A user API provides user identification for each of the plurality of devices. A feedback API configured to receive data from each of the plurality of devices. A device API configured to provide a client system to one or more of the plurality of devices using one or more of a plurality of device API methods. An update API configured to provide an updated client system to one or more of the plurality of devices using one more of a plurality of update API methods. A web service consolidator configured to control interactions between the content API, the user API, the feedback API, the device API, the update API, a plurality of data services and the plurality of devices.

Description:
RELATED APPLICATIONS 
     This application claims priority to U.S. Provisional Application Ser. No. 61/186,832, entitled “ADAPTIVE TERMINATION”, filed Jun. 13, 2009, which is hereby incorporated by reference for all purposes. 
    
    
     FIELD OF THE INVENTION 
     The invention relates to inductive data transfer, and more particularly to an adaptive termination to reduce ringing in a system utilizing inductive data transfer. 
     BACKGROUND OF THE INVENTION 
     High speed wireless data transfer can be accomplished using coupled inductors. Driving coupled inductors at nigh speeds creates several challenges, a significant one being ringing on the secondary or receiver side. Excessive ringing can cause erroneous data or restrict the maximum system bandwidth. 
     SUMMARY OF THE INVENTION 
     A system for receiving data is provided. In one exemplary embodiment, the system includes an inductive data device, such as a device that receives high-speed data over an inductive coupling. An adjustable impedance is coupled to roe inductive data device, where the adjustable impedance is used for dynamically controlling ringing in the inductive data device, such as by damping ringing signals generated by circuit inductances or capacitances. 
    
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS 
         FIG. 1  is a diagram of a system for wireless inductive data transmission in accordance with an exemplary embodiment of the present invention; 
         FIG. 2  is a diagram of a system for receiving data over an inductive coupling in accordance with an exemplary embodiment of the present invention; 
         FIG. 3  is a diagram of a system for eliminating ringing in an inductive data coupling in accordance with an exemplary embodiment of the present invention; 
         FIG. 4  is a diagram of a system for providing a variable resistance for use in an inductive data transfer system in accordance with an exemplary embodiment of the present invention; 
         FIG. 5  is a diagram of system for providing an adjustable resistance in accordance with an exemplary embodiment of the present invention; 
         FIG. 6  is a diagram of a system for providing a variable resistance in accordance with an exemplary embodiment of the present invention; 
         FIG. 7  is a diagram of an algorithm for controlling an adjustable impedance in accordance with an exemplary embodiment of the present invention; 
         FIG. 8  is a diagram of an algorithm for controlling ringing in accordance with an exemplary embodiment of the present invention; and 
         FIG. 9  is a diagram of an algorithm for changing a ring-damping impedance in accordance with an exemplary embodiment of the present invention. 
     
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     In the description that follows, like parts are marked throughout the specification and drawings with the same reference numerals, respectively. The drawing figures meant not be to scale and certain components can be shown in generalized or schematic form and identified by commercial designations in the interest of clarity and conciseness. 
       FIG. 1  is a diagram of a system  100  for wireless inductive data transmission in accordance with an exemplary embodiment of the present invention. System  100  allows inductive data transfer to be optimized by correcting ringing in the received data signal by using an adjustable impedance. 
     System  100  includes transmitter system  102 . Transmitter system  102  can be a data transmission device such as a cellular telephone, a computing device, a computer peripheral, a meter, a device that utilizes wireless telemetry such as a vending machine, a camera, a portable storage device such as USB drive or external/removable hard drive, a calculator or other suitable devices that have inductive data transfer capability. 
     Adjustable impedance  104  is coupled to transmitter system  102  via inductive coupling  108 . In one exemplary embodiment, inductive coupling  108  can include additional inductances in transmitter system  102  and adjustable impedance  114  or receiver system  106 , or other suitable systems or components that are used to provide data transfer functionality without the need for a physical or direct connection (such as a wire line connection through a conductor) between transmitter system  102  and adjustable impedance  104  or receiver system  106 . In one exemplary embodiment, adjustable impedance  104  can provide resistive damping to dissipate energy contained in or generated by circuit resonances, reflected signals or other signals that can create ringing and that otherwise obscure the inductively transmitted data signals. Impedance  104  can also or alternatively be used to provide reactive impedances, such as to de-tune a resonant circuit or for other suitable purposes, where the circuit design is amenable to the use of reactive impedances. 
     Receiver system  106  is coupled to adjustable impedance  104  and receives data from transmitter system  102 . In one exemplary embodiment, receiver system  106  can provide feedback to adjustable impedance  104  to adjust the amount of impedance when ringing is present. Receiver system  106  outputs data that is received from transmitter system  102  across inductive coupling  108 . 
     In operation, system  100  allows data to be inductively transmitted from transmitter system  102  to receiver system  106 , and adjusts for ringing that may occur as a result of the various impedances involved in the inductive data coupling. Adjustable impedance  104  allows the ringing to be compensated, such as by detecting and correcting ringing at adjustable impedance  104 , by receiving an impedance control signal from receiver system  106 , or in other suitable manners. 
     In one exemplary embodiment, by monitoring the input to the receiver for errors in the data stream (which can be used to indicate ringing), system  100  can automatically adjust the impedance to compensate for excessive ringing. In this exemplary embodiment, the resistance value can be changed using a resistor digital to analog converter (DAC) circuit. If it is determined that the received data contains errors, such as by using cyclic redundancy checking algorithms (CRC), checksum algorithms, parity checking algorithms, error correction code algorithms (ECC), analog or digital oversampling or other suitable error detection algorithms or techniques that are known to one of skill, then the value of the DAC can be adjusted. The direction of the adjustment can be selected according to a search algorithm, arbitrarily chosen, or otherwise varied, and the received data is then checked again for error to see if the error was improved or made worse, thereby determining whether the direction was correct or not, and providing information for the next adjustment. 
     The amount of resistance that is required to damp any ringing of the received data signal without causing unacceptable signal attenuation is a function of the external circuit components such as the inductances and air gaps, as well as the parasitic capacitance at the receiver. The optimum resistance may vary over time due to temperature, component value variations, inductor alignment, or other effects. System  100  dynamically adjusts the impedance value to provide optimum performance. 
     The advantages of system  100  include a simplified system architecture, no need for an external resistance, a receiver impedance that is determined automatically by the adaptive control, a robustness to temperature and system variation, automatic recalibration that compensates for changes over time, and reduced ringing. 
       FIG. 2  is a diagram of a system  200  for receiving data over an inductive coupling in accordance with an exemplary embodiment of the present invention. System  200  includes adjustable impedance  202 , which is coupled to differential amplifier  212 , receiver system  214 , capacitor  204 , capacitor  206 , capacitor  203 , and inductor  210 . In one exemplary embodiment, adjustable impedance  202  can detect ringing generated by data signals received through an inductive coupling with inductor  210 , such as by using an internal ring detector, and can damp the ringing by adjusting a variable impedance by an amount that is large enough to reduce the ringing cut which does not adversely affect the received signal. In this manner, the signal provided to differential amplifier  212  can be processed to avoid ringing. 
     In another exemplary embodiment, receiver system  214  can receive the signal generated by differential amplifier  212 , and can provide feedback to adjustable impedance  202  when ringing is present. In this exemplary embodiment, the transmitter system can continue to retransmit the data until ringing has been eliminated, such as by using a handshaking procedure in which the transmitter continues to transmit a data packet to the receiver until the receiver returns a confirmation packet, by transmitting a request from the receiver to the transmitter for retransmission of a data packet until the data packet is received without any errors, or in ether suitable manners. Although adjustable impedance  202  is shown in parallel with inductor  210 , it can also be in series or other wise provided as suitable to reduce ringing. 
     Inductor  210  can be a system inductance that has a variable value based on the air gap or other parameters of the inductive coupling to the transmitter system. Capacitors  208 ,  204  and  206  can be design capacitances, stray capacitances, or other capacitances that may be present in system  200  and which may affect the ability of system  200  to receive data without generating ringing. Although capacitor  208  is shown in parallel with inductor  210 , it can alternatively be in series, and other exemplary circuit impedances can be arranged in series or parallel as may typically occur. 
     In operation, system  200  utilizes an adjustable impedance  202  to compensate for circuit impedances in the receiver of an inductive receiver coupling. System  200  thus allows data transfer across an inductive coupling to be performed with improved efficiency and decreased ringing. 
       FIG. 3  is a diagram of a system  300  for eliminating ringing in an inductive data coupling in accordance with an exemplary embodiment of the present invention. System  300  includes adjustable impedance  302 , data error and ring detection circuit  316 , capacitors  301 ,  306  and  308 , inductor  310 , differential amplifier  312 , receiver system  314  and impedance control  318 , where data error and ring detection circuit  316  and impedance control  318  can be implemented as one or more algorithms operating on a digital signal processor, as a field programmable gate array, as an application-specific integrated circuit, as a combination of discrete digital or analog devices, or in other suitable manners. 
     Inductor  310  and capacitor  308  are parts of an inductive data coupling to a transmitter system. Capacitors  304  and  306  can be stray capacitance or other suitable capacitances that may be provided for various design purposes in system  300 . When data is transmitted across an air gap to inductor  310 , a ringing signal can be generated from resonance of parasitic or stray capacitances and inductances, signal frequency components, or other system parameters. In this exemplary embodiment, adjustable impedance  302  can be used to damp the ringing or otherwise improve the ability of data to be transferred across the inductive coupling. 
     Differential amplifier  312  generates a signal based on the received data signal and any ringing signal that may be present. The signal generated by differential amplifier  312  is provided to receiver system  314 , which can include data error and ring detection circuit  316  and impedance control  318 . Data error and ring detection circuit  316  can detect a ring signal in the output of differential amplifier  312 , such as by using conventional error detection processes (e.g. ECC and parity check) or in other suitable manners. If data error and ring detection circuit  316  determines that ringing is present, control data is provided to impedance control  318  which determines a control signal or generates a control signal for adjustable impedance  302 . In one exemplary embodiment, adjustable impedance  302  can include a predetermined number of resistances, where the amount of resistance is increased from a minimum value until ringing is compensated. In this exemplary embodiment, impedance control  318  can include a state machine and can vary the control settings for the adjustable impedance  302  until ringing has been eliminated. Typically, ringing can be damped by an added resistance, which will also cause attenuation of the received signal. Thus, when the ringing has been adequately compensated for, additional resistance only causes a detrimental impact on the received signal. Impedance control  318  can thus increase or decrease the amount of damping resistance in response to a control signal generated by data error and ring detection circuit  316 , such as to reduce the damping resistance if the attenuation in the received signal is unacceptable. 
     In operation, system  300  allows improved efficiency of data transfer across and inductive data coupling by damping ringing and by removing damping when ringing is not present. System  300  thus eliminates data errors, improves data efficiency, and otherwise facilitates inductive data transfer. 
       FIG. 4  is a diagram of a system  400  for providing a variable resistance for use in an adjustable impedance in an inductive data transfer system in accordance with an exemplary embodiment of the present invention. 
     System  400  includes differential voltages Vin A  402  and Vin B  430 , fixed resistance  404  and fixed resistance  428  (either or both of which can be omitted where suitable). Fixed resistance  404  and fixed resistance  428  are used to provide a minimum resistance value. In addition, system  400  includes a plurality of switches Ren[ 0 ]  406  through Ren[n]  416  and a plurality of resistance R  418  through 2 N *R  426 . In this exemplary embodiment, an adjustable amount of impedance or resistance can be provided by turning switches  406  through  416  on or off, such as by turning switch  406  on to conduct energy and bypass resistance  418  while the remainder of switches  408  through  416  are off, so as to provide a resistance equal to the sum of 2*R  420  through 2 N *R  426 . Likewise, other suitable configurations can be used. 
     In operation, system  400  provides a variable resistance for use in a ringing control circuit. System  400  is configured similar to a digital to analog converter ladder circuit, but uses the variable resistance values for attenuation of ringing instead of conversion from a digital to an analog value. 
       FIG. 5  is a diagram of system  500  for providing an adjustable resistance in accordance with an exemplary embodiment of the present invention. As shown in  FIGURE 5 , the difference between voltages Vin A  502  and Vin B  526  is imposed across the adjustable resistance circuit. A plurality of switches Ren[ 0 ]  506  through Ren[N]  514  are used to controllably switch a plurality of resistances RSEG  518  through RSEG  524 . In addition, a fixed resistance Rfix A  504  provides a minimum available resistance. 
     In operation, system  500  provides a different adjustable resistance configuration and architecture for use in a ringing control circuit. Control signals generated by in impedance controller are used to set the switch configuration of system in response to a ring detection signal, state information and other suitable data and signals to provide an impedance value that reduces ringing without adversely affecting attenuation of the received data signal. 
       FIG. 6  is a diagram of a system  600  for providing a variable resistance in accordance with an exemplary embodiment of the present invention. As shown in  FIGURE 6 , which is commonly referred to as an R2R configuration, a plurality of impedance and switching stages  604  through  616  are provided : n which a resistance value 2*R is connected in series with a resistance value 2*R that is then coupled in series to a switch that can alternately connect to Vin A  616  and Vin B  602 , so as to couple resistances in controllable combinations between voltages Vin A  616  and Vin B  602 . The connections to the switches allow a large number of different parallel and series resistance combinations to be formed so as to facilitate a large number of potential resistance settings. 
     In operation, system  600  allows a resistance value to be generated for an adjustable impedance in a ringing control circuit. Control signals generated by an impedance controller in response to ring detection signals, state information and other suitable data and signals are used to set the switch configuration of system to provide an impedance value that reduces ringing without adversely affecting attenuation of the received data signal. 
       FIG. 7  is a diagram of an algorithm  700  for controlling an adjustable impedance in accordance with an exemplary embodiment of the present invention. Algorithm  700  can be implemented using a field programmable gate array, as code operating on a digital signal processing platform or in other suitable manners. 
     Algorithm  700  begins at  702  where data is received in a receiver. The algorithm then proceeds to  704  where it is determined whether the received data is valid. In one exemplary embodiment, an error correction code, parity check or other suitable error detection procedure can be used to determine whether there are errors present in the data. If it is determined that the data is valid, the algorithm then proceeds to  708 . Otherwise, the algorithm proceeds to  706 . 
     At  706 , the data is rejected, such as by changing a state variable that represents the state of the received data or in other suitable manners. The algorithm proceeds to  710  where the impedance in an adjustable impedance in a ring control circuit is tuned. In one exemplary embodiment, the tuning of the impedance at  710  can include making one or more changes to an impedance setting of an adjustable impedance, such as by using a search algorithm to increase or decrease the impedance by a predetermined amount and to determine whether the ringing has been compensated for. The algorithm then proceeds to  712  where data is retransmitted. In one exemplary embodiment, the data is retransmitted according to a time-out protocol, in response to a request from the receiver, or in other suitable manners. The algorithm then proceeds to  702 . 
     In operation, algorithm  700  automatically adjusts an impedance to control ringing in an inductively coupled data transmission system receiver circuit. Algorithm  700  allows the amount of impedance to be set based on the existing circuit parameters at the time that ringing is detected. 
       FIG. 8  is a diagram of an algorithm  800  for controlling ringing in accordance with an exemplary embodiment of the present invention. Algorithm  800  can be implemented using a field programmable gate array, as code operating on a digital signal processing platform or in other suitable manners. 
     Algorithm  800  begins at  802  where data is received from a transmitter across an inductive data coupling. The algorithm then proceeds to  804 , where it is determined whether ringing has been detected. In one exemplary embodiment, ringing can be detected at an adjustable impedance circuit, by performing error detection, or in other suitable manners. If it is determined at  804  that ringing has not been defected, the algorithm proceeds to  812  where data reception continues. Otherwise, the algorithm proceeds to  806 . 
     At  806 , a search algorithm is executed. In one exemplary embodiment, the search algorithm can step through a number of impedance settings so as to identify the optimal impedance setting. In this exemplary embodiment, the search algorithm can start at the lowest available impedance and can increase the impedance by predetermined steps until ringing has decreased. Likewise, other suitable search processes can be used, such as by increasing the step size until ringing has decreased and then reversing the steps until ringing starts to increase or in other suitable manners. The algorithm then proceeds to  808  where the impedance is set. The algorithm then proceeds to  812 . 
     At  812 , it is determined whether the reception has been completed. If reception has not been completed the algorithm returns to  802 , otherwise, the algorithm proceeds to  814  where the ringing control impedance is reset. In this exemplary embodiment, resetting the ringing control impedance to the lowest possible value ensures that the ringing control impedance will not interfere with data reception under subsequent circumstances or circuit configurations where ringing is not an issue. 
     Likewise, the impedance can be periodically reset and recalibrated, such as to prevent excessive attenuation of too received data signal. In this exemplary embodiment, it can also or alternatively be determined at  812  whether a predetermined period of time has elapsed, based on the operating environment of the inductive data receiver. For example, where the inductive data receiver is locked into a data transmission apparatus, then it may only be necessary to reset and recalibrate the impedance whenever the inductive data receiver is removed and returned to a docking station having a lock or other suitable device. In another exemplary embodiment, where the inductive data receiver is held in place manually, changes in an air gap, position or other variables may require more frequent recalibration. 
     In operation, algorithm  800  allows an inductive data receiver with an adjustable impedance to be automatically controlled to reduce ringing without causing excessive attenuation of the received signal. In one exemplary embodiment, “excessive” attenuation can be attenuation where the received signal is too attenuated to be processed to extract encoded data. 
       FIG. 9  is a diagram of an algorithm  900  for changing a ring-damping impedance in accordance with an exemplary embodiment of the present invention. Algorithm  900  can be implemented using a field programmable gate array, as code operating on a digital signal processing platform or in other suitable manners, and can be used to control a variable impedance circuit having an impedance value that is controlled using a plurality of switches, such as one of the exemplary variable impedance circuits shown in  FIGS. 4 through 6 , or using other suitable circuits. 
     Algorithm  900  begins at  902 , where a state of a variable impedance is initialized. In one exemplary embodiment, the variable impedance will include state variables that indicate whether the impedance has previously been increased or decreased. The algorithm then proceeds to  904 . 
     At  904 , the impedance is increased by a predetermined number of steps “N,” where N is greater than one. In one exemplary embodiment, the configuration of a variable impedance can be used to create a table of impedance values to allow the impedance to be increased or decreased in equal steps or in groups of steps. In this exemplary embodiment, the impedance can be increased by a predetermined group of steps or “N.” The algorithm then proceeds to  906 . 
     At  906 , it is determined whether ringing is still present. If it is determined that ringing is not present, then the algorithm proceeds to  908  and the impedance is decreased by one setting. The algorithm then returns to  906 . If it is determined at  906  that ringing is present, the algorithm proceeds to  910  where it is determined whether there was a previous decrease. In one exemplary embodiment, where the impedance is increased in a “coarse” tuning mode in steps greater than one step size, a cessation of ringing can be used to switch to a “fine” tuning mode where the impedance is subsequently decreased in single steps. In this manner, the impedance is first increased on large step sizes until ringing is eliminated, and the impedance is then decreased in single steps until ringing is again detected, at which point the impedance is set to the last impedance at which no ringing was present. If it is determined at  910  that there was no prior decrease, the algorithm returns to  904 , otherwise the algorithm, proceeds to  912  where the setting for the impedance is increased by one and the switches are set for signal processing. 
     In operation, algorithm  900  provides an exemplary search algorithm for setting switches in a variable impedance circuit. Algorithm  900  quickly identifies an optimal impedance setting to reduce ringing without over-damping the received signal, which can cause undesired signal attenuation. 
     While certain exemplary embodiments have been described in detail and shown in the accompanying drawings, it is to be understood that such embodiments are merely illustrative of and not restrictive on the broad invention, it will thus be recognized to those skilled in the art that various modifications may be made to the illustrated and other embodiments of the invention described above, without departing from the broad inventive scope thereof. lit will be understood, therefore, that the invention is not limited to the particular embodiments or arrangements disclosed, but is rather intended to cover any changes, adaptations or modifications which are within the scope and the spirit of the invention defined by the appended claims.