# Patent

## Title
Transfer dongle for stored vehicle information

## Abstract

A data transfer dongle for transferring electronic information from an existing specific vehicle module to a predetermined specific vehicle module. The dongle collects and stores data specific to a module or component in the original format and enables that original data to be written or uploaded to a repaired or new module or component. Preferably, the dongle is programmed for limited use and will disable itself after a successful data transfer to the module or component.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. application Ser. No. 14/928,854, filed on Oct. 30, 2015, which claims the benefit of U.S. Provisional Application No. 62/222,982, filed Sep. 24, 2015, the contents 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 programming 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 programming 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 programmed, 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 programmed 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 vehicle module, the dongle comprising:
an interface that connects with a vehicle's on-board database;
a diagnostic circuit that determines a communication protocol associated with a specific vehicle module;
a circuit that reads data associated with the specific vehicle module to a memory;
a circuit that writes the data from the memory into a predetermined vehicle module; and,
a circuit that deactivates the dongle upon confirmation that the collected data from the memory was written into the predetermined vehicle module.

2. The dongle of claim 1 further comprising an indicator, which signals that the diagnostic circuit successfully determined a communication protocol associated with the specific vehicle module.

3. The dongle of claim 1 further comprising an indicator, which signals that the memory stored the read data.

4. The dongle of claim 3 further comprising an indicator, which signals that the diagnostic circuit successfully determined a communication protocol associated with a specific vehicle module.

5. The dongle of claim 3, wherein the dongle connects through a communication protocol selected from a group comprised of: J1850 PWM; J1850 VPW; ISO 9141-2; ISO 14230; KWP2000; and, ISO 15765 CAN.

6. The dongle of claim 1, wherein the dongle connects through a communication protocol selected from a group comprised of: J1850 PWM; J1850 VPW; ISO 9141-2; ISO 14230; KWP2000; and, ISO 15765 CAN.

7. The dongle of claim 1, wherein the memory is a remote memory that communicates wirelessly with the circuit that reads the data associated with the specific vehicle module and the circuit that writes the data from the memory into the predetermined vehicle module.

8. The dongle of claim 7 further comprising an indicator, which signals that the memory stored the read data.

9. The dongle of claim 7 further comprising an indicator, which signals that the diagnostic circuit successfully determined a communication protocol associated with the specific vehicle module.

10. The dongle of claim 9 further comprising an indicator, which signals that the memory stored the read data.

11. The dongle of claim 1 further comprising a security key that prevents the circuit that reads data from reading data associated with any component other than the specific vehicle component.

12. A vehicle data transfer dongle comprising:
an interface module that connect with a vehicle's on-board database;
a diagnostic module that identifies a communication protocol associated with a specific vehicle module;
a module that collects and stores preexisting database data associated with the specific vehicle module in a memory;
a module that transfers the preexisting data from the memory into a predetermined vehicle module; and,
a module that deactivates the dongle upon receipt of confirmation that the preexisting data was written into the predetermined vehicle module.

13. The dongle of claim 12 further comprising a module that generates a signal that the diagnostic module identified a communication protocol associated with the specific vehicle module.

14. The dongle of claim 12 further comprising a module that generates a signal that the read data was stored in the memory.

15. The dongle of claim 14 further comprising a module that generates a signal that the diagnostic module identified a communication protocol associated with the specific vehicle module.

16. A vehicle data transfer dongle comprising:
an interface module that connect with a vehicle's preexisting on-board database;
a diagnostic module that identifies a communication protocol associated with a specific vehicle module;
a module that collects and stores preexisting database data associated with the specific vehicle module;
a module that transfers the stored preexisting database data into a predetermined vehicle module; and,
a module that deactivates the dongle upon receipt of confirmation that the stored preexisting database data associated with the specific vehicle module was transferred to the predetermined vehicle module.

17. The dongle of claim 16 further comprising a module that generates a signal that the diagnostic module identified a communication protocol associated with the specific vehicle module.

18. The dongle of claim 16 further comprising a module that generates a signal that the read preexisting data was stored in the memory.

19. The dongle of claim 18 further comprising a module that generates a signal that the diagnostic module identified a communication protocol associated with the specific vehicle module.

20. The dongle of claim 16, wherein the module that collects and stores database data associated with the specific vehicle module and the module that transfers the stored database data into a predetermined vehicle module are combined in a read/write module.

21. A system for transferring information associated with a vehicle module, the system comprising:
an module that connects with a vehicle's on-board database;
a module that determines a communication protocol associated with a specific vehicle module;
a module that reads data associated with a specified vehicle module from the on-board database data;
a memory;
a module that communicates the read on-board database data associated with the specified vehicle module to the memory in the determined communications protocol;
a module that writes the on-board database data from the memory into another specified vehicle module; and,
a module that deactivates the system upon confirmation that the data stored in the memory was written into the another predetermined vehicle module.

22. The system of claim 21 wherein at least one of the modules is wireless.

23. The system of claim 21 wherein all of the modules are wireless.