# Patent

## Title
Transfer dongle for stored vehicle information

## Abstract

A data transfer dongle for transferring information from an existing vehicle module to a predetermined replacement module. The dongle collects and stores data from an existing vehicle module in the original format and writes or uploads that original data to a repaired or replacement module. Preferably, the dongle is programmed for limited use and will disable itself after a successful data transfer.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
This application is a continuation of U.S. application Ser. No. 15/164,375, filed on May 25, 2016, which claims the benefit of U.S. application Ser. No. 14/928,854, filed on Oct. 30, 2015, now U.S. Pat. No. 9,384,604, which claims the benefit of U.S. Provisional Application No. 62/222,982, filed Sep. 24, 2015, all of which are incorporated by reference herein as if fully set forth.


BACKGROUND
Modern vehicles use an increasing number of components that require electronic controls or programmed modules. In many cases, the electronics or modules are enclosed within components, like transmissions. Because of the increase in electronic controls or operating parameters, there is an associated need to program or reprogram a new component or repaired component. Because the repaired vehicle is generally an older vehicle, it is also desirable to maintain the original program associated the component. There is a need for a vehicle transfer dongle that can communicate with the vehicle electronics to identify the desired component and its program, down load the identified program to a memory, and write the identified program to the new or repaired component. This process maintains the original electronic controls or operating parameters associated with the new or repaired component.
SUMMARY
The disclosed transfer dongle connects directly to a vehicle's data link connector, directly, such as by OBD-II, or wireless, such as by Bluetooth or Wi-Fi, to locate the component's associated program and reads that program to a storage or memory location in the dongle. When the repair is completed to the point where the stored program is needed, the dongle reconnects with the vehicle electronics and writes the stored program from the memory back into the component. Preferably, the dongle is configured for use with a specific component, for example a transmission, and a specific vehicle, for example an SUV. This simplifies the dongle and avoids the potential for reading the wrong program to the dongle's memory, or if the dongle were to communicate, the possibility of writing the program to the wrong vehicle.
Preferably, the transfer dongle is configured for a specifically identified vehicle and is a limited use OBD-II dongle. More preferably, the transfer dongle is configured for a specific component or module of the identified vehicle. The dongle, when connected directly to a vehicle OBD-II connector (Data Link Connector) in a vehicle network port, initiates a process of communicating with a specified vehicle module or component, interrogating that module or component, and reading the control information associated with it into a memory. The information is store temporarily in the memory until it is ultimately written back into a repaired or replacement module or component. The transfer dongle communicates with the vehicle through the available media and is suitable for use with vehicles having Bluetooth or Wi-Fi connectivity.
The transfer dongle is a convenient alternative to data transfer procedures requiring the use of expensive scan tools or computers.



BRIEF DESCRIPTION OF THE DRAWINGS
A more detailed understanding may be had from the following description, given by way of example in conjunction with the accompanying drawing:
FIG. 1a is a dongle housing usable to contain the dongle elements or modules and interface with the vehicle's on board electronics;
FIG. 1b is a block diagram illustrating the elements or modules of an OBD-II compatible transfer dongle;
FIG. 2 is a schematic of a representative connector circuit for the transfer dongle;
FIG. 3 is a schematic of a circuit for reading information from a selected vehicle module;
FIG. 4 is a schematic of a representative memory for holding data read from the selected module;
FIG. 5 is a schematic of a circuit for writing information from the memory to a vehicle module;
FIG. 6 is a circuit schematic for a transfer dongle in-vehicle network CAN BUS;
FIG. 7 is a circuit schematic for a transfer dongle in-vehicle network SINGLE WIRE CAN BUS;
FIG. 8 is a circuit schematic for a transfer dongle in-vehicle J1850 network;
FIG. 9 is a circuit schematic for a transfer dongle input switch;
FIG. 10 is a circuit schematic of a power supply for a transfer dongle;
FIG. 11 is a circuit schematic for an alert buzzer; and,
FIG. 12 is a circuit schematic for a microcontroller for a data transfer dongle.



DETAILED DESCRIPTION
The following description of the invention is made with reference to above identified Figures.
The dongle 10 has housing 12 that contains the electronics for accomplishing the transfer and a connector 14 for interfacing with the vehicle electronics. The housing 12 and connector 14 are known elements in the art; however, the electronics elements are specific to the present invention. As will be described herein, many of the electronic components are available from industry suppliers and it is their arrangement and the programing of the microcontroller that enable the data transfer.
FIG. 1b is a block diagram illustrating the elements or modules of the transfer dongle 10. The dongle components comprising the electronics are assembled as printed circuits which may be on one or multiple boards as generally illustrated at 40. It will be understood by those skilled in the art that the elements shown at 40 are not the only elements capable of providing the necessary function and is various electronic elements do not necessarily have to have arrangement of circuits as indicated at 41. The connector 42 is of a known configuration for standard vehicle communications with vehicle onboard diagnostics (OBD)-II systems and includes ISO15765-4 CAN (Both High Speed and Single Wire CAN), ISO 9141-2 (K-Line), KW2000 and J1850 (Both VPW and PWM variations). The dongle 10 has power supply 43, such as AZ1117CH-3.3TRG1 available from Diodes Incorporated. Element 44 is microcontroller, such as an 8-bit microcontroller STM8S208CBT6 available from STMicroelectronics, for programing the dongle 10 according to the specific application, whether it is vehicle or component specific. Element 45 is a CAN transceiver, such as TJA1050T/VM,118 available from Philips Semiconductors, for connecting to the specified vehicle or module. Element 46 is a switch for selected between the read or write modes of the dongle 10. Element 47 is the reader, such as SN74LVC2T45 available from TI Transceiver, for transferring the selected data or information to a memory. Element 48 is a memory, such as flash memory W25Q64FVSSIG available from Windbond Electronics, for containing the data read from the module or component. In Bluetooth or Wi-Fi circumstances, the data may be stored on a remote memory, such as a cell phone, on a USB, or on the cloud. Element 49 is a writer, such as SN74LVC4245A available from TI Transceiver, for transferring the selected data or information from memory to the specific module or component. Element 50 is a visual indicator, such as an LED, for alerting an operator and element 51 is an audio indicator, such as a speaker or beeper, for altering an operator that a given operation was successfully connected or completed.
As noted earlier, the data transfer dongle 10 preferably is specific to a vehicle and a vehicle module or component. The transfer dongle 10 is configured for specific vehicle application and programed, using known parameters, so that it will initiate an automatic detection of the vehicle's communication interface format. For a given vehicle application, a maximum number of communication systems may be enabled in the transfer dongle to transmit and receive data in accordance with standard communication protocols.
When the vehicle's onboard computer recognizes the connection with the data transfer dongle, the vehicle's onboard computer identifies the proper module(s) to be coupled to the dongle. This connection may be indicated through the visual or audio indicator. Having established the communication path, the specifically configured dongle interrogates the target module and reads the relevant data to the dongle's flash memory. In many applications, the information is secured and some form of security handshake is needed to gather the information. Security can serve the dual purpose of general protection and the more specific purpose of assuring that the communication is directed at the correct component. After the information is captured in the transfer dongle, it is possible to repair or replace, as needed, the specific module or component. After the repair or replacement is completed, the transfer dongle is reconnected to the vehicle and the switch 30 on dongle 10 is moved from the read position to the write position and the data from the flash memory is transferred to the selected module in the same format and condition as it was originally read from the module.
The above description discussed the circumstance where the dongle is communicating through the vehicle; however, it will be recognized by those of skill in the art that some modules or components have embedded information which may be similarly extracted and installed using such a dongle.
In-vehicle networking is a known method for transferring data between electronic modules via a serial data BUS. The Society Automotive Engineers (SAE) standards include the following three categories of in-vehicle network communications: Class A, Class B, and Class C. Class A may be low speed (less than 10 Kb/s) and used for convenience features, such as entertainment. Class B may be medium speed (between 10 and 125 Kb/s) and used for general information transfer, such as emission data and instrumentation. Class C may be high speed (greater than 125 Kb/s) and may be used for real-time control, such as traction control, brake by wire, and the like.
All cars and light trucks built for sale in the United States after 1996 are required to be OBD-II compliant. There are five OBD-II protocol types in use: J1850 PWM, J1850 VPW, ISO 9141-2, ISO 14230 KWP2000, and ISO 15765 CAN. Since each protocol differs electrically and by communication format, the transfer dongle is configured to be compatible with the vehicle's specific protocol in order to communicate with the vehicle's network.
FIGS. 2-12 depict representative circuits or modules associated with the dongle 10. FIG. 2 illustrates a representative connector circuit for the transfer dongle. FIG. 3 illustrates a circuit for reading information from a selected vehicle module. FIG. 4 illustrates a data memory. FIG. 5 illustrates a circuit for writing information from the data memory. FIG. 6 illustrates a circuit for dongle in-vehicle network CAN BUS. FIG. 7 illustrates a circuit for dongle in-vehicle network SINGLE WIRE CAN BUS. FIG. 8 illustrates a circuit for dongle in-vehicle J1850 network. FIG. 9 illustrates a circuit for a dongle input switch. FIG. 10 illustrates a power supply circuit for a dongle. FIG. 11 illustrates a circuit for an alert buzzer. FIG. 12 illustrates a circuit for a microcontroller usable in a data transfer dongle.
As noted previously, the dongle is preferable a single use dongle. However, the single use aspect of the invention does not mean that an operator will have only one attempt to connect and read data or only one attempt to connect and write data. It is contemplated that the dongle will provide three to five attempts to read and/or write data. In operation, a successful connection to the vehicle may trigger a visual indicator, such as an LED. Successful connection to the component may trigger an audio indicator, such as one or more beeps, or a visual indicator, such as a flashing LED. The visual and audio indicators can be repeatedly alternated or modulated in accordance with the number of successful operations expected. If an operator exceeds the permitted number or attempts at any particular operation, the dongle is preferably programmed to deactivate. Once an operator has received an indication that the data was successfully written to the module or component, the dongle is programed to provide an indication of that success and to deactivate or disable itself so that it is not reusable.

## Claims

1. A data transfer dongle for transferring information associated with a first vehicle module to a predetermined second vehicle module which replaces the first vehicle module, the dongle comprising:
an interface that connects with a vehicle's on-board electronics;
a diagnostic circuit which initiates an automatic detection process in which the vehicle's on-board electronics identify the first vehicle module and establishes a communication path between the dongle and the first vehicle module;
a circuit that collects and stores pre-existing data associated with the first vehicle module via the established communication path; and
a circuit that transfers the stored pre-existing data associated with the first vehicle module into a predetermined second vehicle module.

2. The data transfer dongle of claim 1, wherein the diagnostic circuit is pre-configured to be associated with a vehicle module group that includes the first vehicle module and the second vehicle module.

3. The data transfer dongle of claim 2, wherein the pre-configuration of the diagnostic circuit causes the vehicle's on-board electronics to initiate the automatic detection process.

4. A dongle for collecting information from an existing vehicle module and transferring the collected information to another module having the same functions, the dongle comprising:
an interface that connects with a vehicle's on-board electronics;
a diagnostic circuit that initiates a detection process through which the vehicle's on-board electronics identifies a predetermined vehicle module and establishes a communication channel between the dongle and the predetermined vehicle module;
a circuit that collects and stores data from the predetermined vehicle module; and
a circuit that transfers the collected and stored data from the predetermined vehicle module into another module through the vehicle's on-board electronics.

5. The dongle of claim 4, wherein the diagnostic circuit is pre-configured for a predetermined vehicle and vehicle module.

6. A data transfer dongle for transferring data associated with a selected vehicle's existing module to a replacement module, the dongle comprising:
an interface that connects with a vehicle's on-board electronics;
a diagnostic circuit which initiates an automatic detection process through which a vehicle's on-board electronics identifies a selected existing module and establishes a communication path with the dongle;
a circuit that collects and stores data associated with functions of the selected existing module via the established communication path; and
a circuit that transfers the stored data associated with functions of the selected existing module to a replacement module.

7. The data transfer dongle of claim 6, wherein the diagnostic circuit is pre-configured to be associated with a predetermined vehicle module group that includes the existing module and the replacement module.