Pairing enhanced to facilitate seamless Bluetooth® / WiFi connection

JP2025522947A5Pending Publication Date: 2026-06-16TOYOTA MOTOR NORTH AMERICA INC

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
TOYOTA MOTOR NORTH AMERICA INC
Filing Date
2023-06-09
Publication Date
2026-06-16

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Exemplary operations include one or more of detecting that a plurality of wireless devices are located in a vehicle, pairing a wireless device of the plurality of wireless devices with a head unit of the vehicle when the wireless device is receiving or transmitting audio, and transmitting audio through the head unit of the vehicle.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] Generally, vehicles or means of transportation, such as passenger cars, motorcycles, trucks, airplanes, trains, etc., provide transportation needs for passengers and / or goods in various ways. The functions related to the means of transportation can be identified and utilized by various computing devices such as smartphones or computers located on the means of transportation and / or located away from the means of transportation.

Summary of the Invention

[0002] An exemplary embodiment provides a method including one or more of: detecting that a plurality of wireless devices are located in a vehicle; pairing a wireless device among the plurality of wireless devices with a head unit of the vehicle when the wireless device is receiving or transmitting voice; and transmitting voice through the head unit of the vehicle.

[0003] Another exemplary embodiment provides a system including a processor and a memory communicatively connected to each other, where the processor detects that a plurality of wireless devices are located in a vehicle, pairs a wireless device among the plurality of wireless devices with a head unit of the vehicle when the wireless device is receiving or transmitting voice, and transmits voice through the head unit of the vehicle.

[0004] A further exemplary embodiment provides a computer-readable storage medium comprising instructions that, when read by a processor, cause the processor to perform one or more of: detecting that a plurality of wireless devices are located in a vehicle; pairing a wireless device among the plurality of wireless devices with a head unit of the vehicle when the wireless device is receiving or transmitting voice; and transmitting voice through the head unit of the vehicle.

Brief Description of the Drawings

[0005]

Figure 1A

Figure 1B

Figure 1C

Figure 1D

Figure 1E

Figure 1F

Figure 1G

Figure 2A

Figure 2B

Figure 2C

Figure 2D

Figure 2E

Figure 2F

Figure 2G

Figure 2H

Figure 2I

Figure 2J

Figure 2K

Figure 2L

Figure 2M

Figure 2N

Figure 3A

Figure 3B

Figure 3C

Figure 4

Figure 5A

Figure 5B

Figure 6A

Figure 6B

Figure 6C

Figure 6D

Figure 7

[0006] It will be readily understood that the components described herein and illustrated in the figures can be arranged and designed in a wide variety of different configurations. Accordingly, the following detailed description of at least one embodiment of a method, apparatus, computer-readable storage medium, and system, as represented in the accompanying figures, is not intended to limit the scope of the claimed application and represents only the selected embodiments. The multiple embodiments described herein are not intended to limit the scope of the solution. The computer-readable storage medium can be a non-transitory computer-readable medium or a non-transitory computer-readable storage medium.

[0007] Communication between a means of transportation and a specific entity such as a remote server, other means of transportation, and local computing devices (e.g., smartphones, personal computers, computers incorporated into the means of transportation, etc.) can be transmitted, received, and processed by one or more "components" that can be hardware, firmware, software, or a combination thereof. The components can be part of any of the entity or computing device or a specific other computing device. In one example, the determination of consensus related to a blockchain transaction can be made by one or more computing devices or components (which can be any element described and / or depicted herein) associated with the means of transportation, as well as by one or more of the components located outside or away from the means of transportation.

[0008] The functions, structures, or features described in this specification can be combined in any suitable manner in one or more embodiments. For example, the use of phrases such as "exemplary embodiments", "some embodiments", or other similar terms throughout this specification indicates that the specific functions, structures, or features described in relation to the embodiments can be included in at least one example. Thus, even if phrases such as "exemplary embodiments", "in some embodiments", "in other embodiments", or other similar terms appear throughout this specification, they do not necessarily all refer to the same group of embodiments, and the described functions, structures, or features can be combined in any suitable manner in one or more embodiments. In the figures, any connection between elements can enable one-way and / or two-way communication, even if the depicted connection is a one-way or two-way arrow. In this solution, the vehicle or means of transportation can include one or more of a passenger car, a truck, a walking area battery electric vehicle (BEV), an e-Palette, a fuel cell bus, a motorcycle, a scooter, a bicycle, a boat, a recreational vehicle, an airplane, and any object that can be used to transport people and / or goods from one place to another.

[0009] In addition, although the term "message" may be used in the description of the embodiments, other types of network data such as packets, frames, and datagrams can also be used. Furthermore, specific types of messages and signaling can be depicted in the preferred embodiments, but they are not limited to specific types of messages and signaling.

[0010] An exemplary embodiment provides a method, system, component, non-transitory computer-readable medium, device, and / or network that provides at least one of a means of transportation (also referred to herein as a vehicle or passenger vehicle), a data collection system, a data monitoring system, a verification system, an approval system, and a vehicle data distribution system. Vehicle status condition data received in the form of communication messages such as wireless data network communications and / or wired communication messages can be processed to identify the status condition of the vehicle / means of transportation and provide feedback regarding the status and / or changes of the means of transportation. In one example, a user profile can be applied to a particular means of transportation / vehicle to approve current vehicle events, service stops at a service station, subsequent vehicle rental services, and enable vehicle-to-vehicle communication.

[0011] Within a communication infrastructure, a distributed database is a distributed storage system that includes multiple nodes that communicate with each other. A blockchain is an example of a distributed database that includes an append-only and immutable data structure (i.e., a distributed ledger) that can maintain records among untrusted parties. Untrusted parties are referred to herein as peers, nodes, or peer nodes. Each peer maintains a copy of the database records, and no peer can modify the database records without reaching a consensus among the distributed peers. For example, peers can execute a consensus protocol to verify blockchain storage entries, group the storage entries into blocks, and construct a hash chain through the blocks. This process forms a ledger by ordering the storage entries as needed for consistency. In a public or permissionless blockchain, anyone can participate without having specific identifying information. A public blockchain is involved with cryptocurrencies and can use consensus based on various protocols such as proof-of-work (PoW). Conversely, a permissioned blockchain database can guarantee transactions among a group of entities that share a common goal but do not fully trust or cannot trust each other, such as businesses that exchange funds, goods, information, and the like. This solution can function in permissioned and / or permissionless blockchain settings.

[0012] A smart contract is a trusted decentralized application that leverages the tamper-resistant properties of a shared or distributed ledger (which can be in the form of a blockchain) and the underlying agreement between member nodes, referred to as an endorsement or endorsement policy. Generally, blockchain entries are "approved" before being committed to the blockchain, while unapproved entries are ignored. With a typical endorsement policy, smart contract executable code can specify endorsers for entries in the form of a set of peer nodes required for endorsement. When a client sends an entry to the peers specified in the endorsement policy, the entry is executed to verify the entry. After verification, the entry enters an ordering phase, in which the consensus protocol generates an ordered sequence of approved entries grouped into blocks.

[0013] A node is a communication entity in a blockchain system. A "node" can perform a logical function in the sense that multiple different types of nodes can operate on the same physical server. Nodes are grouped within a trust domain and associated with a logical entity that controls the nodes in various ways. Nodes can include different types such as a client or presenting client node that presents entry calls to endorsers (e.g., peers) and broadcasts entry proposals to an ordering service (e.g., an ordering node). Another type of node is a peer node, which can receive client-presented entries, commit the entries, and maintain the state and a copy of the blockchain entry ledger. A peer can also act as an endorser. An ordering service node or orderer is a node that performs a communication service for all nodes and implements delivery guarantees such as broadcasting to each of the peer nodes in the system when committing an entry to modify the blockchain world state. The world state can typically consist of initial blockchain entries that include control and configuration information.

[0014] A ledger is an ordered and tamper-resistant record of all state transitions in a blockchain. State transitions can occur as a result of calls (i.e., entries) to smart contract executable code presented by participating parties (such as client nodes, ordering nodes, endorser nodes, peer nodes, etc.). An entry can result in a set of key-value pairs of assets committed to the ledger as one or more operands such as create, update, delete, and the like. The ledger includes a blockchain that stores immutable and ordered records in blocks (also referred to as a chain). The ledger also includes a state database that maintains the current state of the blockchain. Typically, there is one ledger per channel. Each peer node maintains a copy of the ledger for each channel of which it is a member.

[0015] The chain is an entry log constructed as hash-linked blocks, where each block contains a sequence of N entries, where N is greater than or equal to 1. The block header includes the hash of the entries in the block and the hash of the header of the previous block. In this way, all entries in the ledger can be ordered and cryptographically bound together. Therefore, it is impossible to tamper with the ledger data without breaking the hash link. The hash of the most recently added blockchain block represents all entries on the chain that occurred before it, thereby ensuring that all peer nodes are in a consistent and trusted state. The chain is stored in a peer node file system (i.e., local, attached storage, cloud, etc.) and can efficiently support the append-only nature of the blockchain workload.

[0016] The current state of the immutable ledger represents the latest value for all keys included in the chain entry log. Since the current state represents the value of the latest key known in the channel, it may be referred to as the world state. Calls to smart contract executable code execute entries against the current state data of the ledger. To efficiently handle the interactions of the smart contract executable code, the latest value of the key can be stored in the state database. The state database can simply be an indexed view of the chain's entry log and thus can be regenerated from the chain at any time. The state database can be automatically restored (or generated if necessary) when the peer node starts up and before entries are accepted.

[0017] The blockchain differs from traditional databases in that it is a distributed, immutable, and secure storage rather than a central storage, where nodes must share changes to the records in the storage. Some of the properties inherent in the blockchain and that help in its implementation include, but are not limited to, immutable ledger, smart contract, security, privacy, decentralization, consensus, endorsement, accessibility, and the like.

[0018] Exemplary embodiments provide services for a particular vehicle and / or user profiles applied to the vehicle. For example, the user can be the owner of the vehicle or an operator of a vehicle owned by another party. The vehicle may require services at specific intervals, and the service request may require approval before allowing the service to be received. Also, the service center can provide services to vehicles in the nearby area based on the vehicle's current route plan and the relative level of service requirements (e.g., emergency, critical, moderate, mild, etc.). The vehicle's requests can be monitored via one or more vehicle and / or road sensors or cameras that report the sensed data to a central controller computer device inside and / or away from the vehicle. This data is transferred to the management server for consideration and operation. The sensors can be located on one or more of the inside of the means of transportation, the outside of the means of transportation, on a fixed object away from the means of transportation, and on another means of transportation proximate to the means of transportation. The sensors can also be associated with the speed of the means of transportation, the brakes of the means of transportation, the acceleration of the means of transportation, the fuel level, the service request, the gear shift of the means of transportation, the steering of the means of transportation, and the like. The sensors as described herein can also be devices such as wireless devices inside and / or proximate to the means of transportation. Also, the sensor information can be used to identify whether the vehicle is operating safely and whether the occupants have been involved in any unexpected vehicle conditions, such as during vehicle access and / or usage periods. The vehicle information collected before, during, and / or after the operation of the vehicle can be identified and stored in a transaction on a shared / distributed ledger, and the transaction can be generated and committed to an immutable ledger as determined by a consortium that grants permissions and thus in a "distributed" manner, such as by a blockchain membership group.

[0019] Each party with an interest (i.e., owner, user, company, agency, etc.) may want to limit the exposure of private information, and thus, the blockchain and its immutability can be used to manage permissions for each specific user vehicle profile. Smart contracts can be used to provide compensation, quantify user profile scores / ratings / considerations, apply permissions for vehicle events, determine when services are needed, identify collision events and / or degradation events, identify events of safety concern, identify the parties to an event, and distribute to registered entities attempting to access the vehicle event data. Also, results can be identified and the necessary information can be shared among registered companies and / or individuals based on the consensus method associated with the blockchain. Such a method could not be implemented with a conventional centralized database.

[0020] To create maps of terrain and roads that the means of transportation can use for navigation and other purposes, the various driving systems of the present solution can utilize software, sensor arrays, and machine learning capabilities, light detection and ranging (Lidar) projectors, radar, ultrasonic sensors, and the like. In some embodiments, instead of Lidar, GPS, maps, cameras, sensors, and the like can also be used in autonomous vehicles.

[0021] In certain embodiments, the solution includes authorizing a vehicle for a service via an automated and rapid authentication scheme. For example, driving to a charging station or a fuel pump can be done by a vehicle operator or an autonomous transportation means, and authorization to receive charge or fuel can be done without any delay if the authorization is received by the service and / or the charging station. The vehicle can provide a communication signal providing the vehicle's identification information, which is linked to a currently active profile that is authorized to receive services that can be later modified by compensation. Additional measures can be used to provide further authentication, for example, another identifier can be wirelessly transmitted from the user's device to the service center to replace or supplement a first authentication operation between the transportation means and the service center using an additional authorization operation.

[0022] Shared and received data can be stored in a database, which generally maintains data in a particular location within a single database (e.g., a database server). This location is often a central computer, such as a desktop central processing unit (CPU), a server CPU, or a mainframe computer. Information stored in a centralized database is usually accessible from multiple different points. A centralized database is easy to manage, maintain, and control, and is particularly for security purposes since the centralized database is in a single location. Within a centralized database, the fact that all data is in a single storage location also means that a given data set has only one primary record, so data redundancy is minimized. A blockchain can be used to store data and transactions related to transportation means.

[0023] Any of the operations described herein may be performed by one or more processors (e.g., microprocessors, sensors, electronic control units (ECUs), head units, and the like) with or without memory that may be located on-board the transportation means and / or off-board the transportation means (e.g., servers, computers, mobile / wireless devices, etc.). The one or more processors may communicate with other memories and / or other processors that are on-board or off-board in other transportation means to utilize data transmitted by and / or in the transportation means. The one or more processors and other processors may transmit data, receive data, and utilize this data to perform one or more of the operations described or depicted herein.

[0024] FIG. 1A shows a system diagram 100 in a certain set of embodiments. In some embodiments, the present solution is executed fully or partially in the memory of the processor 108 of a computer associated with the vehicle 102, the memory of the server 106, the memory of the processor 128 associated with the head unit 114, and / or the memory of one or more other processors associated with the devices and / or entities mentioned herein. In some embodiments, the head unit 114 is a multimedia system. One or more of the server 106, the processor 108, and / or the head unit 114 may be communicatively connected to the network 104. In some embodiments, the present solution is executed fully or partially in any processor or server located in any element in the system diagram 100.

[0025] In some embodiments, the processor 108, the processor 128, and / or the server 106 are configured to detect the presence of a plurality of wireless devices, such as the first wireless device 110 and the second wireless device 112, in the vehicle 102. For example, mobile devices such as the first wireless device 110 and the second wireless device 112 transmit wireless signals called probe frames to detect nearby wireless networks. The first set of probe frames transmitted by the first wireless device 110 may include a first media access control (MAC) address that uniquely identifies the first wireless device 110. Similarly, the second set of probe frames transmitted by the second wireless device 112 may include a second MAC address that uniquely identifies the second wireless device 112. The presence of the first wireless device 110 in the vehicle 102 may be determined by the WiFi transceiver 132 of the head unit 114 that scans one or more WiFi channels to detect at least one probe frame of the first set of probe frames transmitted by the first wireless device 110. Similarly, the presence of the second wireless device 112 in the vehicle 102 may be determined by the WiFi transceiver 132 that scans one or more WiFi channels to detect at least one probe frame of the second set of probe frames transmitted by the second wireless device 112. When the WiFi transceiver 132 receives two or more different (i.e., unique) MAC addresses corresponding to two or more different mobile devices, the presence of multiple wireless devices may be determined. This technique may also function in scenarios where the first and second MAC addresses are randomized for privacy reasons.

[0026] Alternatively or additionally, detection of the presence of the first wireless device 110 and / or the second wireless device 112 in the vehicle 102 may be performed via Bluetooth®, but not all wireless device users continuously or constantly enable the Bluetooth® function. Thus, in some cases, WiFi may be more reliable than Bluetooth® for detecting the presence of the first and / or second wireless devices 110, 112.

[0027] In another embodiment, the presence of the first and / or second wireless devices 110, 112 is detected by a sensor 118 operably connected to the processor 108 and / or the processor 128. For example, the sensor 118 may be configured to detect RF energy emitted by the first and / or second wireless devices 110, 112. In some embodiments, the sensor 118 may include a mechanism for sensing the frequency, occupancy bandwidth, and / or communication channel of the detected RF energy to provide a basis for distinguishing the first wireless device 110 from the second wireless device 112. In some embodiments, the sensor 118 may include a mechanism for receiving and demodulating packets received from the first and / or second wireless devices 110, 112. The demodulated packets may include first and second MAC addresses that uniquely identify the first and second wireless devices 110, 112.

[0028] In some embodiments, the processor 108, the processor 128, and / or the server 106 are configured to pair a wireless device among a plurality of wireless devices, for example, the first wireless device 110 and the head unit 114 when the first wireless device 110 is receiving or transmitting audio. In some embodiments, this pairing is performed using the Bluetooth transceiver 120 of the first wireless device 110 and the Bluetooth transceiver 130 of the head unit 114. Bluetooth pairing is a form of information registration that communicably links the first wireless device 110 with the head unit 114. The first wireless device 110 and the head unit 114 perform Bluetooth pairing by exchanging device information. The device information regarding the head unit 114 is stored in the memory of the first wireless device 110. Similarly, the device information regarding the first wireless device 110 is stored in the memory of the processor 128 of the head unit 114. Since each device stores the necessary information in its memory and can thus maintain the communication connection, after pairing the first wireless device 110 with the head unit 114, it may not be necessary to repeat the above pairing process every time Bluetooth communication between the wireless device 110 and the head unit 114 is requested. However, the processor 128 of the head unit 114, and / or the processor 108, can erase, delete, and / or overwrite the device information regarding the first wireless device 110 from the memory of the processor 128, thereby unpairing the first wireless device 110 and the head unit 114. Similarly, the device information regarding the head unit 114 can be erased, deleted, or overwritten from the memory of the first wireless device 110, and thus the first wireless device 110 and the head unit 114 can be unparied.

[0029] In some embodiments, pairing is performed using the WiFi transceiver 122 of the first wireless device 110 and the WiFi transceiver 132 of the head unit 114. For example, WiFi pairing can be performed using WiFi Direct. WiFi Direct is a connection that enables device - to - device communication by linking devices together without the need for a centralized network. In some embodiments, a first device, such as the first wireless device 110, functions as an access point. A second device, such as the head unit 114, can connect to the first wireless device 110 using the WiFi Protected Setup (WPS) security protocol and the WiFi Protected Access (WPA / WPA2) security protocol. In other embodiments, the head unit 114 functions as an access point and the first wireless device connects to the head unit 114 using the WPS and WPA / WPA2 security protocols. Although WiFi Direct and Bluetooth® may seem similar at first glance, there are some differences. For example, WiFi Direct is faster than Bluetooth® and can process more information at speeds up to about 10 times faster under optimal conditions. Therefore, WiFi Direct can be used when the peer - to - peer connection needs to transmit data - rich content, such as high - resolution images or videos.

[0030] In some embodiments, the first wireless device 110 and the head unit 114 are paired when the first wireless device 110 is receiving or transmitting audio. For example, the first wireless device 110 may be receiving an incoming voice call, making an outgoing voice call, or receiving audio from a streaming application. Some exemplary examples of streaming applications may include online radio stations, online music services, podcasts, online movies, or audio-visual presentations. In some embodiments, the received audio is transmitted from the Bluetooth transceiver 120 of the first wireless device 110 to the Bluetooth transceiver 130 of the head unit 114. In other embodiments, the received audio is transmitted from the WiFi transceiver 122 of the first wireless device 110 to the WiFi transceiver 132 of the head unit 114.

[0031] In some embodiments, the processor 108, the processor 128, and / or the server 106 are configured to determine the priority of a wireless device transmitting audio, such as the first wireless device 110, and another wireless device receiving an incoming call, such as the second wireless device 112. For example, the first wireless device 110 may be paired with the head unit 114 to transmit audio to the head unit 114 from an on-demand streaming application such as an online radio station, an online music service, a podcast, an online movie, or an audio-visual presentation. The second wireless device 112 may be associated with a user. The second wireless device 112 may be receiving an incoming phone call from another wireless device. The other wireless device may be associated with, for example, the spouse, family member, close friend, workplace colleague, or supervisor of the user associated with the second wireless device 112. In some embodiments, the second wireless device 112 comprises an application (i.e., an "app") that provides a notification to the processor 108 and / or the processor 128 in the network 104 in response to the second wireless device 112 receiving an incoming call.

[0032] The incoming call received by the second wireless device 112 may include an urgent matter or an unexpected development that is more important than listening to the on-demand audio stream transmitted by the first wireless device 110. However, even if the incoming call relates to a routine or non-urgent matter, the on-demand audio stream transmitted by the first wireless device 110 is typically non-interactive and can be resumed, restarted, or played again at a later time. In contrast, the incoming call received by the second wireless device 112 is interactive and occurs in real time.

[0033] In some embodiments, an incoming phone call from the second wireless device 112 is considered to have a higher priority than the streaming audio transmitted by the first wireless device 110. The incoming call at the second wireless device 112 blocks, terminates, and / or ends the previously executed pairing with the first wireless device 110 with respect to the head unit 114, thereby unpairing the wireless device 110 and the head unit 114, and can be prioritized over the on-demand audio stream received by the first wireless device 110. In some embodiments, the unpairing is performed by the processor 128 and / or the processor 108 resetting, erasing, and / or overwriting a portion of the computer-readable memory related to the processor 128 of the head unit 114 used to store device information regarding the first wireless device 110. Then, a pairing between the second wireless device 112 and the head unit 114 can be performed. In some embodiments, the Bluetooth® transceiver 130 of the head unit 114 implements a pairing with the Bluetooth® transceiver 124 of the second wireless device 112. The audio from the incoming phone call received by the second wireless device 112 is transmitted by the head unit 114. In other embodiments, the WiFi transceiver 132 of the head unit 114 implements a pairing with the WiFi transceiver 126 of the second wireless device 112 as previously described in relation to WiFi Direct. The audio from the incoming phone call received by the second wireless device 112 can be transmitted by the head unit 114.

[0034] In some embodiments, the priorities of a wireless device transmitting audio, e.g., a first wireless device 110, and another wireless device receiving an incoming call, e.g., a second wireless device 112, are determined using a lookup table stored in a computer-readable memory. For example, the lookup table may be stored in the memory of processor 108, the memory of processor 128, the memory of server 106, the memory of the first wireless device 110, and / or the memory of the second wireless device 112. In a further embodiment, the streaming audio transmitted by the first wireless device 110 is blocked from the head unit 114 by unpairing the first wireless device 110 and the head unit 114 and then pairing the second wireless device 112 with the head unit 114 to connect the incoming call if the recipient of the call is in the lookup table.

[0035] In another embodiment, the solution uses at least one microphone 153 in the cabin of the vehicle 102 to receive audio including speech from the user of the second wireless device 112 in the incoming call. The received audio may be analyzed by the head unit 114, processor 128, and / or processor 108 to determine an estimated level of urgency of the speech. When the analysis indicates that the estimated level of urgency of the speech is above a threshold, the streaming audio from the first wireless device 110 to the head unit 114 may be blocked by unpairing the wireless device 110 and the head unit 114. The head unit 114 and the second wireless device 112 may then be paired by connecting the incoming call to the head unit 114. In a further embodiment, the estimated level of urgency is based on either a match of specific decision words in the speech with a set of words stored in an emergency word table in the memory of processor 108, processor 128, and / or server 106, or specific pitch and / or energy of the speech as determined by analysis of the received audio by the head unit 114, processor 128, and / or processor 108.

[0036] In some embodiments, the processor 108, the processor 128, and / or the server 106 are configured to determine when a wireless device, such as a first wireless device 110, is in proximity to the vehicle 102 and not paired with the head unit 114. In response to determining that the first wireless device 110 is in proximity to the vehicle 102 and not paired with the head unit 114, the head unit 114 transmits a message to the first wireless device 110 indicating that pairing with the head unit 114 is available. For example, the first wireless device 110 transmits a first set of probe frames to detect nearby wireless networks. The first set of probe frames transmitted by the first wireless device 110 may include a first MAC address that uniquely identifies the first wireless device 110. The presence of the first wireless device 110 in proximity to the vehicle 102 may be determined by the WiFi transceiver 132 of the head unit 114 scanning one or more WiFi channels to detect at least one probe frame of the first set of probe frames transmitted by the first wireless device 110. Alternatively or additionally, detection of the presence of the first wireless device 110 in proximity to the vehicle 102 may be performed via Bluetooth®, although not all wireless device users keep the Bluetooth® function continuously or persistently enabled. Thus, in some cases, WiFi may be more reliable than Bluetooth® for detecting the presence of the first wireless device 110 in proximity to the vehicle 102.

[0037] In some embodiments, the processor 128 determines that the head unit 114 is not paired with the first wireless device 110 by searching the memory of the processor 128 for device information corresponding to the first wireless device 110. For example, the processor 128 may compare a first MAC address received from at least one probe frame of a first set of probe frames of the first wireless device 110 with one or more MAC addresses stored in the memory of the processor 128. If the processor 128 does not detect the first MAC address in the memory of the processor 128, the head unit 114 is not paired with the first wireless device 110. In contrast, if the processor 128 detects the first MAC address in the memory of the processor 128, the first wireless device 110 is paired with the head unit 114.

[0038] In some embodiments, an incoming call is received by the first wireless device 110. The processor 108, the processor 128, and / or the server 106 are configured to determine that the incoming call is at least one of a multimedia call or a video call. When the first wireless device 110 is paired with the head unit 114, the incoming call is presented on the display 134 of the vehicle 102. In some embodiments, the display 134 is incorporated within the head unit 114.

[0039] In some embodiments, multimedia and video calls are distinguished from voice calls by analyzing the data transfer rate of packets transmitted from the Bluetooth transceiver 120 of the first wireless device 110 to the Bluetooth transceiver 130 of the head unit 114. In other embodiments, multimedia and video calls are distinguished from voice calls by analyzing the data transfer rate of packets transmitted from the WiFi transceiver 122 of the first wireless device 110 to the WiFi transceiver 132 of the head unit 114. For example, a typical voice call may exhibit a relatively slow data transfer rate in the range of 4 Kbps to 13 Kbps. In contrast, a typical video call may exhibit a relatively fast data transfer rate in the range of 1 Mbps to 8 Mbps. In other embodiments, multimedia and video calls are distinguished from voice calls by loading an application (i.e., an "app") on the first wireless device 110, and the application is configured to send a notification to the head unit 114 that enables multimedia and video calls to be distinguished from voice calls.

[0040] Multimedia Messaging Service (MMS) is a technology for sending messages containing multimedia content to and from the first wireless device 110 in a cellular network such as the network 104. Users and providers may refer to messages such as PXT, picture messages, or multimedia messages. Unlike text-only SMS, MMS can deliver any of a variety of media including videos up to 40 seconds long, single images, slideshows of multiple images, and / or audio. One exemplary use of MMS includes sending photos from a camera-equipped wireless device. Some media companies commercially utilize MMS as a way to deliver news and entertainment content. Some retailers are deploying MMS as a tool to deliver scannable coupon codes, product images, and videos.

[0041] MMS messages can be encoded and encapsulated by a transmitting device, such as a first wireless device 110, using Multipurpose Internet Mail Extensions (MIME). The encoded and encapsulated MMS messages can be transferred in the network 104 to a first MMS store and transfer server called a Multimedia Messaging Service Center (MMSC). The MMSC can be associated with a wireless carrier that provides services to the transmitting device. If an MMS message recipient device, such as a second wireless device 112, uses a wireless carrier different from the transmitting device, the first MMSC can function as a relay to transfer the MMS message in the network 104 to a second MMSC of the wireless carrier associated with the recipient device. For example, the MMS message can be transferred using the Internet. When the second MMSC receives the MMS message, the second MMSC determines whether a wireless device, such as a second wireless device 112, is MMS-capable. If the second wireless device 112 supports MMS, the content of the MMS message is extracted to a temporary storage server that is communicatively connected to the network 104 and accessible via a Hypertext Transfer Protocol (HTTP) front end. An SMS control message including a Uniform Resource Locator (URL) of the content stored in the temporary storage server is sent to the second wireless device 112.

[0042] In some embodiments, an application in the second wireless device 112 sends the SMS control message to a head unit 114. The head unit 114 can then access the URL in the SMS control message to obtain and display the MMS message.

[0043] In some embodiments, the voice from the Bluetooth transceiver 120 of the first wireless device 110 is received by the Bluetooth transceiver 130 of the head unit 114. In other embodiments, the voice from the WiFi transceiver 122 of the first wireless device 110 is received by the WiFi transceiver 132 of the head unit 114. The processor 108 and / or the processor 128 may monitor the incoming speech in the received voice by converting the incoming speech into a digital representation of the phoneme and / or text and identifying one or more confidential words using the digital representation of the phoneme and / or text. The processor 108 and / or the processor 128 may maintain a running count indicating the number or amount of confidential words in the received voice. When the running count exceeds a threshold, the first wireless device 110 may be unpair from the head unit 114. For example, a portion of the memory of the processor 128 storing device information regarding the first wireless device 110 may be erased, deleted, and / or overwritten. In some embodiments, the one or more confidential words may include terms dealing with money, funds, health status, death, monopoly business strategies, national security, intellectual property, and / or other confidential or personal matters. In some embodiments, the one or more confidential words are stored in a searchable data table in the memory of the processor 128 or the processor 108.

[0044] Figure 1B shows a diagram of system 150 in a certain set of embodiments. In some embodiments, the present solution is executed fully or partially in the computer-readable memory of the processor 108 of the computer associated with vehicle 102, the memory of server 106, the memory of the processor 128 associated with head unit 114, and / or the computer-readable memory of one or more other processors associated with the devices and / or entities mentioned herein. In some embodiments, head unit 114 is a multimedia system. One or more of server 106, processor 108, and / or head unit 114 may be communicatively connected to network 104. In some embodiments, the present solution is executed fully or partially in any processor or server located in any element in system diagram 150.

[0045] In some embodiments, processor 108, processor 128, and / or server 106 pair a wireless device associated with a non-owner of vehicle 102, e.g., non-owner wireless device 162, with head unit 114. For example, in some embodiments, the Bluetooth transceiver 166 of non-owner wireless device 162 is paired with the Bluetooth transceiver 130 of head unit 114. In other embodiments, the WiFi transceiver 170 of non-owner wireless device 162 is paired with the WiFi transceiver 132 of head unit 114. Next, processor 108, processor 128, and / or server 106 may detect at least one of receiving a call or initiating a call at a wireless device associated with an owner of vehicle 102, e.g., owner wireless device 160. In some embodiments, owner wireless device 160 of the vehicle owner includes an application (i.e., an "app") that provides a notification to processor 108, processor 128, and / or server 106 in network 104 in response to the owner wireless device 160 of the vehicle owner receiving an incoming call. In some embodiments, incoming phone calls received at owner wireless device 160 of the vehicle owner are considered to have a higher priority than non-owner wireless device 162.

[0046] In some embodiments, an incoming call on the vehicle owner's wireless device 160 is prioritized over a non-owner's wireless device 162 with the head unit 114 by blocking, terminating, and / or ending (i.e., unpairing) a previously executed pairing with the non-owner's wireless device 162. In some embodiments, unpairing is performed by resetting, erasing, or overwriting a portion of the computer-readable memory related to the processor 128 of the head unit 114 that is used to store device information regarding the non-owner's wireless device 162. Next, pairing of the vehicle owner's wireless device 160 with the head unit 114 can be performed by the processor 108, processor 128, server 106, and / or the vehicle owner's wireless device 160. In some embodiments, the Bluetooth® transceiver 130 of the head unit 114 implements a pairing with the Bluetooth® transceiver 164 of the vehicle owner's wireless device 160. Audio from an incoming phone call received by the vehicle owner's wireless device 160 is transmitted by the head unit 114. In other embodiments, the WiFi transceiver 132 of the head unit 114 implements a pairing with the WiFi transceiver 168 of the vehicle owner's wireless device 160 as previously described in relation to WiFi Direct. Audio from an incoming phone call received by the vehicle owner's wireless device 160 is transmitted by the head unit 114.

[0047] In some embodiments, the vehicle owner's wireless device 160 and the non-owner's wireless device 162 are determined using MAC addresses. Mobile devices such as the vehicle owner's wireless device 160 and the non-owner's wireless device 162 transmit wireless signals called probe frames to detect nearby wireless networks. A first set of probe frames transmitted by the vehicle owner's wireless device 160 may include a first media access control (MAC) address that uniquely identifies the vehicle owner's wireless device 160. Similarly, a second set of probe frames transmitted by the non-owner's wireless device 162 may include a second MAC address that uniquely identifies the non-owner's wireless device 162. For example, the presence of the vehicle owner's wireless device 160 proximate to the vehicle 102 may be determined by the WiFi transceiver 132 of the head unit 114 that scans one or more WiFi channels to detect at least one probe frame of the first set of probe frames transmitted by the vehicle owner's wireless device 160. Similarly, the presence of the non-owner's wireless device 162 proximate to the vehicle 102 may be determined by the WiFi transceiver 132 that scans one or more WiFi channels to detect at least one probe frame of the second set of probe frames transmitted by the non-owner's wireless device 162. In some embodiments, one or more of the first MAC address of the vehicle owner's wireless device 160 and / or the second MAC address of the non-owner's wireless device 162 are stored in the memory of the processor 108. In other embodiments, one or more of the first MAC address of the vehicle owner's wireless device 160 and / or the second MAC address of the non-owner's wireless device 162 are stored in the memory of the processor 128. In some embodiments, the processor 108 and / or the processor 128 compare the stored first MAC address and / or the stored second MAC address with the probe signals received by the WiFi transceiver 132 to distinguish the vehicle owner's wireless device 160 from the non-owner's wireless device 162.

[0048] In some embodiments, the processor 108, the processor 128, the server 106, and / or the non-owner wireless device 162 pair the non-owner wireless device 162 with the head unit 114. The first call is received at the non-owner wireless device 162. In some embodiments, the first call is detected by the Bluetooth® transceiver 130 and / or the WiFi transceiver of the head unit 114. In other embodiments, the first call is detected by an application (i.e., an “app”) running on the non-owner wireless device 162. The application is configured to generate a notification to the processor 108, the processor 128, and / or the server 106 in the network 104 in response to the reception of the first call. The second call is received at the vehicle owner's wireless device 160. In some embodiments, the second call is detected by an application (i.e., an “app”) running on the vehicle owner's wireless device 160. The application is configured to generate a notification to the processor 108, the processor 128, and / or the server 106 in the network 104 in response to the reception of the second call.

[0049] In some embodiments, processor 108, processor 128, and / or server 106 determine a priority among a first call and a second call based on at least one of a first party participating in the first call, a second party participating in the second call, a future meeting of the first party, a future meeting of the second party, a previous meeting of the first party, a previous meeting of the second party, and / or a date and time. For example, the first party participating in the first call can be determined by an application executed on the non-owner wireless device 162, and this application accesses a list of contacts associated with the non-owner wireless device 162. Similarly, the second party participating in the second call can be determined by an application executed on the vehicle owner's wireless device 160, and this application accesses a list of contacts associated with the vehicle owner's wireless device 160. For example, an incoming call from a contact with a name such as "boss", "supervisor", "mom", or "dad" can be considered to have the highest priority level.

[0050] The future meeting of the first party and the previous meeting of the first party can be determined by an application executed on the non-owner wireless device 162, and the application accesses the calendar function of the non-owner wireless device 162. Similarly, the future meeting of the second party and the previous meeting of the second party can be determined by an application executed on the vehicle owner's wireless device 160, and the application accesses the calendar function of the vehicle owner's wireless device 160. For example, a first incoming call including a meeting (such as a previous meeting or a future meeting) can be considered to have a higher priority than a second incoming call not including a meeting, while a third incoming call including a previous meeting can be considered to have the same priority as a fourth incoming call including a future meeting.

[0051] The date and time can be determined by a clock executed in any of the vehicle owner's wireless device 160, non-owner's wireless device 162, network 104, server 106, processor 108, and / or processor 128. For example, a call received from a workplace contact can be considered to have a higher priority if received during working hours, but a lower priority if received outside of working hours. According to another example, a call received from a family contact or a friend can be considered to have a higher priority when received outside of working hours, but a lower priority when received during working hours.

[0052] In some embodiments, when the determined priority is for a second call, the non-owner's wireless device 162 and the head unit 114 are unpair. Then, the vehicle owner's wireless device 160 can be paired with the head unit 114. In some embodiments, the unpairing of the wireless device 162 and the head unit 114 is performed by resetting, erasing, or overwriting a portion of the memory related to the processor 128 of the head unit 114 that is used to store device information regarding the non-owner's wireless device 162. Then, the pairing of the vehicle owner's wireless device 160 with the head unit 114 can be performed by the processor 108, processor 128, server 106, and / or the vehicle owner's wireless device 160. In some embodiments, the Bluetooth® transceiver 130 of the head unit 114 pairs with the Bluetooth® transceiver 164 of the vehicle owner's wireless device 160. The voice from an incoming phone call received by the vehicle owner's wireless device 160 can be transmitted by the head unit 114. In other embodiments, the WiFi transceiver 132 of the head unit 114 pairs with the WiFi transceiver 168 of the vehicle owner's wireless device 160 as described above in relation to WiFi Direct. The voice from an incoming phone call received by the vehicle owner's wireless device 160 can be transmitted by the head unit 114.

[0053] Figure 1C depicts a flowchart 160C of a guest mode wirelessly connected via a multimedia (MM) prompt according to an exemplary embodiment. For the front end 162C, the process starts when a customer enters the vehicle (164C). An MM prompt 178C with available Bluetooth® devices from the back end 176C appears (166C), and the customer is asked to connect to the possible options (similar to the available Wi-Fi connection prompt for the phone). When the customer selects a device from the list (168C), the selection is received. To avoid future customer confusion, the options below exist to disable the GUI window from future displays. The pairing code is sent to the device to establish a connection between the device and the vehicle (170C). The customer enters the pairing code (172C), and the device is connected (174C).

[0054] Figure 1D depicts a flowchart 160D of a wireless icon in a user menu according to an exemplary embodiment. For the front end 162D, the process starts when a customer enters the vehicle (164D). The customer selects a wireless icon such as a Bluetooth® icon (166D). Available BT devices 178D appear (168D), and the customer is asked to connect to the possible options (similar to the available Wi-Fi connection prompt for the phone). When the customer selects a device from the list, the selection is received (170D). The device is paired (172D), and the device is connected (174D).

[0055] Figure 1E depicts a flowchart 160E of a guest mode wirelessly connected using a shared digital key according to an exemplary embodiment. In the front end 162E of the system, the owner shares the digital key (164E) via communication with another device, for example, via SMS messaging. The digital key is received at another device (166E). The digital key is used to perform operations such as unlocking the vehicle (168E). In some embodiments, the MAC ID of the mobile device is transmitted to the digital key ECU. The digital key ECU transmits the MAC ID to the vehicle's multimedia / head unit (170E).

[0056] Figure 1F depicts a flowchart 160F of a guest mode connected via a QR code (registered trademark) or application download using a digital key according to an exemplary embodiment. In the front end 162F, the QR code (registered trademark) is scanned or accessed via an application running on a mobile device, and the code is associated with a rentable object such as a vehicle. The QR includes digital key access (164F). The digital key is received via the mobile device (166F). The vehicle is accessed via the use of the received digital key (168F). The digital key ECU transmits the MAC ID to the vehicle's multimedia / head unit (170F). The mobile device is connected to the vehicle's multimedia / head unit (172F).

[0057] Figure 1G depicts a flowchart of a guest mode connected by scanning a QR code (registered trademark) or downloading an app without using a digital key according to an exemplary embodiment. In the front end 162G, an application executed on a mobile device is used to reserve a vehicle online (164G). The web interface remotely provides an instruction to scan a QR code (registered trademark) for pairing (166G). The QR code (registered trademark) is scanned (168G). The link to the MAC ID and the vehicle identification number is transmitted to the CTP (170G). The DCM of the vehicle receives a notification having the MAC ID, and the MAC ID is transmitted to the vehicle's multimedia / head unit for storage (172G). When the mobile device approaches the vehicle, automatic pairing is performed (174G).

[0058] The flowcharts described herein, such as Figure 1A, Figure 1B, Figure 1C, Figure 1D, Figure 1E, Figure 1F, Figure 1G, Figure 2C, Figure 2D, Figure 2E, Figure 3A, Figure 3B, and Figure 3C, are separate examples and can be of the same or different embodiments. Any of the operations in a particular flowchart can be adopted in another flowchart and shared with another flowchart. The exemplary operations are not intended to limit any embodiment or the subject matter of the corresponding claims.

[0059] All the flowcharts and corresponding processes obtained from Figure 1A, Figure 1B, Figure 1C, Figure 1D, Figure 1E, Figure 1F, Figure 1G, Figure 2C, Figure 2D, Figure 2E, Figure 3A, Figure 3B, and Figure 3C may be part of the same process or may share sub-processes with each other. Thus, it is important to note that while no single specific operation is required, the figures can be combined into a single preferred embodiment that performs specific operations from one exemplary process and one or more additional processes. All the exemplary processes are related to the same physical system and can be used separately or interchangeably.

[0060] FIG. 2A shows a transportation means network diagram 200 according to an exemplary embodiment. The network includes elements including a transportation means 202 including a processor 204 and a transportation means 202' including a processor 204'. The transportation means 202 and 202' communicate with each other via the processors 204 and 204' and other elements (not shown) including other elements such as a transceiver, a transmitter, a receiver, a storage, a sensor, and other elements capable of providing communication. The communication between the transportation means 202 and 202' can occur directly, can occur via a private network and / or a public network (not shown), or can occur via other transportation means and elements including one or more of a processor, a memory, and software. Although depicted as a single transportation means and processor, there can be multiple transportation means and processors. One or more of the applications, functions, steps, solutions, etc. described and / or depicted herein can be utilized and / or provided by this element.

[0061] FIG. 2B shows another transportation means network diagram 210 according to an exemplary embodiment. The network includes elements including a transportation means 202 including a processor 204 and a transportation means 202' including a processor 204'. The transportation means 202 and 202' communicate with each other via the processors 204 and 204' and other elements (not shown) including other elements such as a transceiver, a transmitter, a receiver, a storage, a sensor, and other elements capable of providing communication. The communication between the transportation means 202 and 202' can occur directly, can occur via a private network and / or a public network (not shown), or can occur via other transportation means and elements including one or more of a processor, a memory, and software. The processors 204 and 204' can further communicate with one or more elements 230 including a sensor 212, a wired device 214, a wireless device 216, a database 218, a mobile phone 220, a transportation means 222, a computer 224, an I / O device 226, and a voice application 228. The processors 204 and 204' can further communicate with elements including one or more of a processor, a memory, and software.

[0062] Although a single transport means, processor, and element are depicted, multiple transport means, processors, and elements may exist. Information or communication may be to and / or from any of processors 204, 204' and element 230. For example, mobile phone 220 may provide information to processor 204 that may initiate an operation on transport means 202, may further provide information or additional information to processor 204' that may initiate an operation on transport means 202', and may further provide information or additional information to mobile phone 220, transport means 222, and / or computer 224. One or more of the applications, functions, steps, solutions, etc. described and / or depicted herein may be utilized and / or provided by this element.

[0063] FIG. 2C shows yet another transport means network diagram 240 according to an exemplary embodiment. The network comprises elements including transport means 202, processor 204, and non-transitory computer-readable medium 242C. Processor 204 is communicatively coupled to computer-readable medium 242C and element 230 (depicted in FIG. 2B). Transport means 202 may be a transport means, server, or any device having a processor and a memory.

[0064] Processor 204 performs one or more of detecting that a plurality of wireless devices are located in the vehicle 244C, pairing a wireless device of the plurality of wireless devices with the vehicle's head unit when the wireless device is receiving or transmitting voice 246C, and transmitting voice through the vehicle's head unit 248C.

[0065] Figure 2D shows a further transportation means network diagram 250 according to an exemplary embodiment. The network comprises elements including a transportation means 202, a processor 204, and a non-transitory computer-readable medium 242D. The processor 204 is communicatively connected to the computer-readable medium 242D and the element 230 (depicted in FIG. 2B). The transportation means 202 can be a transportation means, a server, or any device having a processor and a memory.

[0066] The processor 204 determines a wireless device with a higher priority among the wireless devices transmitting voice and among the other wireless devices among the plurality of wireless devices receiving a call, and pairs the wireless device with a higher priority with the vehicle's head unit 244D; determines that the wireless device is in the vicinity of the vehicle and the wireless device is not paired with the head unit, and transmits a message to the wireless device that pairing with the head unit is available 245D; receives an incoming call by the wireless device, determines that the incoming call is at least one of a multimedia call or a video call, and presents the incoming call on the vehicle's display when the wireless device is paired with the head unit 246D; pairs the head unit with a wireless device associated with a non-owner of the vehicle, detects at least one of receiving a call or starting a call in the wireless device associated with the owner of the vehicle, unpairs the wireless device associated with the non-owner of the vehicle, and pairs the wireless device associated with the owner of the vehicle with the head unit 247D; monitors the received voice, and when the received voice exceeds a threshold for one or more confidential words in the received voice, unpairs the wireless device from the head unit 248D; pairs one of the plurality of wireless devices with the head unit, receives a first call in one of the plurality of wireless devices, receives a second call in another one of the plurality of wireless devices, and based on at least one of the first party participating in the first call, the second party participating in the second call, the future meeting of the first party, the future meeting of the second party, the previous meeting of the first party, the previous meeting of the second party, and / or the date and time, determines the priority between the first call and the second call, and when the determined priority is in the second call, unpairs one of the plurality of wireless devices from the head unit and pairs another one of the plurality of wireless devices with the head unit 249D, and performs one or more of the above.

[0067] Figure 2E shows an additional transportation means network diagram 260 according to an exemplary embodiment. Referring to Figure 2E, the network diagram 260 includes a transportation means 202 connected to other transportation means 202' and an update server node 203 in a blockchain network 206. The transportation means 202 and 202' may represent transportation means / vehicles. The blockchain network 206 may have a ledger 208 that stores software update verification data and a source 207 of verification for future use (e.g., in an audit).

[0068] This example describes only one transportation means 202 in detail, but multiple such nodes may be connected to the blockchain 206. It should be understood that the transportation means 202 may include additional components, and some of the components described herein may be removed and / or modified without departing from the scope of the present application. The transportation means 202 may have a computing device or a server computer, or the like, and may include a processor 204, and the processor 204 may be a semiconductor-based microprocessor, a central processing unit (CPU), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), and / or another hardware device. Although a single processor 204 is depicted, it should be understood that the transportation means 202 may include multiple processors, multiple cores, or the like without departing from the scope of the present application. The transportation means 202 may be a transportation means, a server, or any device having a processor and a memory.

[0069] The processor 204 receives an event confirmation from one or more of the elements described or depicted herein, the confirmation comprising a blockchain consensus among peers represented by any of the elements 244E, and performs one or more of executing a smart contract to record the confirmation in the blockchain based on the blockchain consensus 246E. The consensus is formed among any of the elements 230 and / or one or more of any of the elements described or depicted herein including, for example, a means of transportation, a server, a wireless device, or the like. In another example, the means of transportation 202 can be any of the elements 230 and / or one or more of any of the elements described or depicted herein including, for example, a server, a wireless device, or the like.

[0070] The processor and / or computer-readable medium 242E can be wholly or partially located inside or outside of the means of transportation. The steps or functions stored in the computer-readable medium 242E can be performed wholly or partially, in any order, by any of the processor and / or elements. Further, additions, omissions, combinations, later executions, and the like can be made to one or more of the steps or functions.

[0071] Figure 2F shows FIG. 265 depicting the power supply of one or more elements. In one example, the transport means 266 may provide the electric power stored in its battery to one or more elements including other transport means 268, charging stations 270, and the electrical grid 272. The electrical grid 272 is connected to one or more of the charging stations 270, and the charging stations 270 may be connected to one or more of the transport means 268. This configuration enables the distribution of the electricity / power received from the transport means 266. The transport means 266 may also interact with other transport means 268 via vehicle-to-vehicle (V2V) technology, cellular communication, WiFi, and the like. The transport means 266 may also interact with other transport means 268, charging stations 270, and / or the electrical grid 272 wirelessly and / or wired. In one example, the transport means 266 is routed (or routes itself) to the electrical grid 272, the charging station 270, or other transport means 268 in a safe and efficient manner. Using one or more embodiments of the present solution, the transport means 266 may provide energy to one or more of the elements described herein in various advantageous ways as described and / or depicted herein. Further, it may enhance the safety and efficiency of the transport means and may have a beneficial impact on the environment as described and / or depicted herein.

[0072] The term "energy" may be used to refer to any form of energy received, stored, used, shared, and / or lost by a transport means. Energy may be referred to in relation to the voltage source and / or current supply of the charge provided from an entity to the transport means during a charging / usage operation. Energy may also be in the form of fossil fuels (for example, for use in a hybrid transport means), or alternatively, without limitation, lithium-based, nickel-based, hydrogen fuel cells, atomic / nuclear energy, nuclear fusion-based energy sources, and energy generated on the spot during an energy sharing and / or usage operation that increases or decreases the energy level of one or more transport means at a given time by alternative power sources.

[0073] In one example, the charging station 270 manages the amount of energy transmitted from the transport means 266 such that sufficient charge remains in the transport means 266 to reach the destination. In one example, a wireless connection is used to wirelessly direct the amount of energy transfer between transport means 268, which may both be moving. In one embodiment, wireless charging can occur via a fixed charger and the battery of the transport means aligned with each other (such as a charging mat in a garage or parking space). In one example, an unused vehicle, such as vehicle 266 which may be autonomous, is directed to provide a certain amount of energy to the charging station 270 and return to its original location (e.g., its original location or a different destination). In one example, a mobile energy storage unit (not shown) collects surplus energy from at least one other transport means 268 and is used to transmit the stored surplus energy at the charging station 270. In one example, factors such as distance, time, and traffic conditions, road conditions, environmental / weather conditions, vehicle conditions (such as weight), the schedule of passengers during vehicle use, and the expected schedule of passengers waiting for the vehicle determine the amount of energy transmitted to the charging station 270. In one example, the transport means 268, the charging station 270, and / or the electrical grid 272 can provide energy to the transport means 266.

[0074] In one embodiment, a location such as a building, house, or the like (not depicted) is communicatively connected to one or more of the electrical grid 272, the transport means 266, and / or the charging station 270. The rate of current to one or more of the location, the transport means 266, and other transport means 268 is modified according to external conditions such as weather. For example, when the external temperature is extremely high or extremely low, increasing the likelihood of a power outage, the flow of electricity to the connected vehicles 266 / 268 is slowed to help minimize the likelihood of a power outage.

[0075] In one example, the solutions described and depicted herein can be used to determine the impact of a load on a transportation means and / or system, provide energy to the transportation means and / or system based on future demand and / or priorities, provide information between a device including modules and a vehicle, and enable a processor of the device to communicate wirelessly with the vehicle regarding the amount of energy storage of a battery in the vehicle. In one example, the solution can also be used to provide a charge from the transportation means to a location based on factors such as the temperature of the location, the cost of energy, and the power level of the location. In one example, the solution can also be used to manage the amount of energy remaining in the transportation means after a portion of the charge has been transmitted to a charging station. In one example, the solution can also be used to notify the vehicle to provide the amount of energy of the battery in the transportation means, and the amount of energy transmitted is based on the distance of the transportation means to the module for receiving the energy.

[0076] In one example, the solution can also be utilized to use a mobile energy storage unit, which moves to a means of transportation having excess energy using a determined route and deposits the stored energy into the electrical grid. In one example, the solution can also be utilized to determine the priority of the determination of the means of transportation regarding the demand for providing energy to the grid and the current demand priority regarding the means of transportation, e.g., the priority of passengers or future passengers or the current load or future load. In one example, the solution can also be utilized to determine that when the vehicle is not in use, the vehicle is to be maneuvered to a location to discharge excess energy into the energy grid and then return to the previous location. In one example, the solution can also be utilized to determine the amount of energy required by a means of transportation based on one or more conditions such as weather, traffic, road conditions, the condition of the passenger vehicle, and passengers and / or articles within another means of transportation, and route the means of transportation to another means of transportation to provide energy by instructing the means of transportation to provide energy. In one example, the solution can also be utilized to transmit energy from one moving vehicle to another moving vehicle. In one example, the solution can also be utilized to extract energy by a means of transportation based on the energy consumed by the means of transportation to reach a location to meet another means of transportation and provide services and the estimated energy consumption to return to the original location. In one example, the solution can also be utilized to provide the remaining distance required to reach a charging station, where the charging station determines the amount of energy extracted from the means of transportation, and the remaining charge amount is based on the remaining distance. In one example, the solution can also be utilized to manage a means of transportation that is charged simultaneously by more than one point, e.g., both a charging station by a wired connection and another means of transportation by a wireless connection.In one example, the solution may also be utilized to apply priorities to the distribution of energy to the transport means, where the priorities are given to the transport means that provide a portion of the stored charge of the transport means to another entity such as the electrical grid, a residence, and the like.

[0077] In one embodiment, transport means 266 and 268 may be utilized as bi-directional transport means. The bi-directional transport means may function as a mobile microgrid that assists in supplying power to grid 272 and / or reduces power consumption when the grid is stressed. In addition to receiving charge for the transport means, the bi-directional transport means incorporates bi-directional charging, where the transport means can take energy from the transport means and "push" the energy back to grid 272, which is otherwise referred to as "V2G" in other cases. In bi-directional charging, electricity flows in both the direction to the transport means and the direction from the transport means. When the transport means is charged, alternating current (AC) electricity from grid 272 is converted to direct current (DC). This can be done by one or more of the converters in the converter of the transport means itself or charger 270. The energy stored in the battery of the transport means can be sent back to the grid in the opposite direction. The energy is converted from DC to AC through a converter, typically located in charger 270, which is otherwise referred to as a bi-directional charger in other cases. Further, the solution as described and depicted with respect to FIG. 2F can be utilized in this network and / or system, as well as other networks and / or systems.

[0078] FIG. 2G is FIG. 275 showing the interconnections between different elements. This solution can be stored and / or executed in whole or in part on one or more computing devices 278’, 279’, 281’, 282’, 283’, 284’, 276’, 285’, 287’, and 277’ associated with various entities and all communicably connected to communicate with network 286, and / or by said one or more computing devices. Database 287 is communicably connected to the network and enables storage and retrieval of data. In one example, the database is an immutable ledger. One or more of the various entities can be a means of transportation 276, one or more service providers 279, one or more public buildings 281, one or more transportation infrastructures 282, one or more residential houses 283, an electrical grid / charging station 284, a microphone 285, and / or another means of transportation 277. Other entities and / or devices such as one or more private users using a smartphone 278, a laptop 280, an augmented reality (AR) device, a virtual reality (VR) device, and / or any wearable device can also cooperate with this solution. The smartphone 278, the laptop 280, the microphone 285, and other devices can be connected to one or more of the connected computing devices 278’, 279’, 281’, 282’, 283’, 284’, 276’, 285’, 287’, and 277’. One or more public buildings 281 can include various institutions. One or more public buildings 281 can utilize the computing device 281’. One or more service providers 279 can include a sales agency, a tow truck service, a collision center, or other repair shops. One or more service providers 279 can utilize the computing device 279’. These various computer devices can be connected to each other directly and / or communicably via a wired network, a wireless network, a blockchain network, and the like. In one example, the microphone 285 can be utilized as a virtual assistant.In one example, the one or more transportation infrastructures 282 may include one or more traffic signals, one or more sensors including one or more cameras, vehicle speed sensors or traffic sensors, and / or other transportation infrastructures. The one or more transportation infrastructures 282 may utilize a computing device 282'.

[0079] In one example, the transportation means 277 / 276 may transport people, objects, permanently or temporarily attached devices, and the like. In one example, the transportation means 277 may communicate with the transportation means 276 via V2V communication through the computers 276' and 277' associated with each transportation means, and may be referred to as transportation means, passenger cars, vehicles, automobiles, and the like. The transportation means 276 / 277 may be a self-propelled and wheeled vehicle such as a passenger car, sports utility vehicle, truck, bus, wagon, or other motor or battery-driven, or fuel cell-driven transportation means. For example, the transportation means 276 / 277 may be an electric vehicle, a hybrid vehicle, a hydrogen fuel cell vehicle, a plug-in hybrid vehicle, or any other type of vehicle having a fuel cell stack, a motor, and / or a generator. Other examples of vehicles include bicycles, scooters, trains, airplanes, boats, and any other form of vehicle capable of transportation. The transportation means 276 / 277 may be semi-autonomous or autonomous. For example, the transportation means 276 / 277 may be self-driving and operated without human input. An autonomous vehicle may have one or more sensors and / or a navigation unit and use them to drive autonomously.

[0080] In one example, the solution described and depicted herein can be utilized to determine access to a means of transportation via blockchain consensus. In one example, the solution can also be utilized to perform profile verification before enabling use of the means of transportation by a passenger. In one example, the solution can also be utilized to cause the means of transportation to indicate (visually, but also in another example by words, etc.) on or from the means of transportation actions that a user needs to perform and that need to be confirmed as being correct actions (which can be pre-recorded). In one example, the solution can also be utilized to provide the ability for the means of transportation to determine, based on the risk level associated with the data and the driving environment, a way to split the data and distribute a portion of the split data with a lower risk level in a safe driving environment to the passenger and, after the passenger has left the means of transportation, to later distribute the remaining portion of the split data with a higher risk level to the passenger. In one example, the solution can also be utilized to use blockchain and / or smart contracts to address the movement of vehicles across (country / state / etc.) boundaries and apply the rules of a new area to the vehicle.

[0081] In one example, the solution may also be utilized to enable the transport means to continue operating outside the boundary when the transport means reaches a consensus based on the operation of the transport means and the characteristics of the occupants of the transport means. In one example, the solution may also analyze the available data upload / download speed of the transport means, the size of the file, and the speed / direction at which the transport means is moving to determine the distance required to complete the data upload / download and be utilized to assign a secure area boundary for the data upload / download being performed. In one example, the solution may also perform normally dangerous maneuvers in a safe manner and command the transport means of interest and other nearby transport means to enable the transport means of interest to exit in a safe manner, such as when the system determines that an exit is approaching or when the transport means appears not to be ready to exit (e.g., in the wrong lane or moving at a speed not suitable for exiting in the future). In one example, the solution may also be utilized to verify the diagnosis of another transport means using one or more vehicles while both the one or more vehicles and the other transport means are moving.

[0082] In one example, the solution can also be used to detect the use of lanes at a particular location and time, and inform or instruct the occupants of the transportation means whether to recommend a lane change or not. In one example, the solution can also be used to eliminate the need to send information via email and the need for the driver / occupant to respond by making payments via email or directly. In one example, the solution can also be used to provide services to the occupants of the transportation means, the services provided are subscription-based, and permissions are obtained from other transportation means connected to the occupant's profile. In one example, the solution can also be used to record changes in the state of a rented object. In one example, the solution can also be used to request a blockchain consensus from other transportation means in the vicinity of a damaged transportation means. In one example, the solution can also be used to receive media from servers such as insurance entity servers and computers of transportation means that may be related to an accident. The server accesses one or more media files, accesses the damage to the transportation means, and stores the damage assessment on the blockchain. In one example, the solution can also be used to obtain a consensus and determine the severity of an event from several devices at various times prior to the event related to the transportation means.

[0083] In one example, the solution can also be used to solve the problem of lack of video evidence about an accident related to a transportation means. This solution details a query for media related to an accident to other transportation means that may have been in the vicinity of the accident by the transportation means involved in the accident. In one example, the solution can also be used to record specific parts of a damaged transportation means using the transportation means and other devices (e.g., a pedestrian's mobile phone, a streetlight camera, etc.).

[0084] In one example, the solution may also be used to warn a passenger when a transport means is being steered towards a dangerous area and / or event, and to notify the passenger or a central controller of the transport means of a possible dangerous area that is on or near the current path of the transport means. In one example, the solution may also be used to detect when at least one other transport means is being used to assist in decelerating the transport means so that the impact on traffic is minimized when the transport means is moving at high speed. In one example, the solution may also be used to identify a dangerous driving situation, where media is captured by a vehicle involved in the dangerous driving situation. A geo-fence is established based on the distance of the dangerous driving situation, and further media is captured by at least one other vehicle within the established geo-fence. In one example, the solution may also be used to send a notification to one or more passengers of the transport means that the transport means is approaching a traffic regulation sign on the road, and then to receive an indication of bad driving from other nearby transport means if the transport means goes beyond the sign. In one example, the solution may also be used to partially disable the transport means by (in certain embodiments) limiting speed, limiting the ability to approach another vehicle, limiting speed to a maximum value, and allowing only a given number of miles (about 1.609 km) per period.

[0085] In one example, the solution can also be utilized to overcome the need for dependence on software updates and to correct problems associated with the transportation means when the transportation means is not operating correctly. Through the observation of other transportation means on the route, the server receives data from a plurality of other transportation means that may have observed dangerous or incorrect operation of the transportation means. Through analysis, the observation can result in a notification to the transportation means when the data suggests dangerous or incorrect operation. In one example, the solution can also be utilized to notify between the transportation means and a dangerous situation that may involve a person unrelated to the transportation means. In one example, the solution can also be utilized to transmit data to the server by either a device associated with an accident involving the transportation means or a device in proximity to the accident. Based on the severity of the accident or near the accident, the server notifies the sender of the data. In one example, the solution can also be utilized to provide recommendations regarding the operation of the transportation means to either the driver or passenger of the transportation means based on data analysis. In one example, the solution can also be utilized to establish a geofence associated with a physical structure to determine liability for payment for the transportation means. In one example, the solution can also be utilized to adjust whether a vehicle can be dropped off at a location using both the current state and the proposed future state of the location and the navigation destinations of other vehicles. In one example, the solution can also be utilized to adjust the ability to automatically prepare for the drop-off of a vehicle at a location such as a transportation means rental entity.

[0086] In one example, the solution may also be utilized to move a transport means to another location based on a user's event. More specifically, the system tracks the user's device and modifies the transport means to move closer to the user based on the result of the original or modified event. In one example, the solution may also be utilized to enable verification of available locations within an area through the transport means present within the area. An approximate time when a location may become available is also determined based on verification from the transport means present. In one example, the solution may also be utilized to move the transport means to a closer parking space when a certain parking space becomes available and the elapsed time from the first parking is less than the average event time. Further, when the event is completed or depending on the location of a device associated with at least one passenger of the transport means, the transport means is moved to a final parking space. In one example, the solution may also be utilized to plan for parking prior to approaching congestion. The system communicates with the transport means to provide some services at less than the regular rate and / or guide the transport means to an alternative parking location based on the priority of the transport means, thereby improving the optimization of the parking situation prior to arrival.

[0087] In one example, the solution can also be used to sell fractional ownership of transportation means or to determine prices and availability for rideshare applications. In one example, the solution can also be used to provide accurate and timely reports of sales activities of sales agents that are far superior to what is currently available. In one example, the solution can also be used to enable a sales agent to claim an asset on the blockchain. By using the blockchain, consensus is obtained before any asset is transferred. Further, the process is automated and payments can be initiated on the blockchain. In one example, the solution can also be used to prepare agreements made with multiple entities (such as service centers), where consensus is obtained and operations (such as diagnostics) are performed. In one example, the solution can also be used to associate digital keys with multiple users. The first user can be an operator of the transportation means and the second user can be a party responsible for the transportation means. The key is approved by a server, where the proximity of the key is verified against the location of the service provider. In one example, the solution can also be used to determine the services required at the destination of the transportation means. The location of one or more service locations that can provide the required services is located within the area on the route to the destination and where the execution of the services is available. The navigation of the transportation means is updated at the location of the determined service. A smart contract containing a compensation value for the service is identified and the blockchain transaction is stored in the distributed ledger for the transaction.

[0088] In one example, the solution can also be used to associate the service provider's means of transportation with the profiles of the passengers of the means of transportation to determine services and goods that may be of interest to the passengers within the means of transportation. The services and goods are determined by the passengers' history and / or preferences. The means of transportation then receives an offer from the service provider's means of transportation and, in another example, meets with the means of transportation providing the service / goods. In one example, the solution can also be used to detect a range of means of transportation and send an offer of a service (such as an offer of maintenance, an offer of a product, or the like) to the means of transportation. An agreement is made between the system and the means of transportation, and the service provider is selected by the system to provide the agreement. In one example, the solution can also be used to assign one or more means of transportation as road managers, and the road managers assist in traffic control. The road managers can generate road displays (such as traffic lights, displays, and sounds) to assist in the flow of traffic. In one example, the solution can also be used to warn the driver of the means of transportation by a device, which can be a traffic light or can be near an intersection. The warning is sent in the event of an event such as when the traffic light turns green and the means of transportation in front of the list of means of transportation does not move.

[0089] Figure 2H is another block diagram 290 showing the interconnection between different elements in an example. A transport means 276 is presented, including ECUs 295, 296 and a head unit (otherwise known as an infotainment system in other cases) 297. An electronic control unit (ECU) is a system incorporated in automotive electronics that controls one or more of the electrical systems or subsystems within a transport means. The ECU may include, but is not limited to, the management of the transport means' engine, braking system, transmission system, door locks, dashboard, airbag system, infotainment system, electronic differential, and active suspension. The ECU is connected to the controller area network (CAN) bus 294 of the transport means. The ECU can also communicate with the computer 298 of the transport means via the CAN bus 294. The processor / sensor 298 of the transport means (such as the computer of the transport means) can communicate with external elements such as a server 293 via a network 292 (such as the Internet). Each ECU 295, 296 and the head unit 297 may include its own security policy. The security policy defines the allowed processes that can be executed in an appropriate context. In one example, the security policy may be provided partially or completely in the computer 298 of the transport means.

[0090] ECU 295, 296, and the head unit 297 may each include a custom security feature element 299 that defines an approved process and the context in which the operation of that process is permitted. By context-based approval to determine whether a process can be executed, the ECU can maintain secure operation and prevent unauthorized access from elements such as the controller area network (CAN bus) of the transportation means. If the ECU encounters an unauthorized process, the ECU may block the operation of the process. Automotive ECUs use various contexts such as the context of proximity, such as nearby objects, the distance to approaching objects, speed, the trajectory relative to other moving objects, and the indication of whether the transportation means is moving or parked, the context of operation, such as the current speed of the transportation means, the transmission state, devices connected to the transportation means via a wireless protocol, the use of infotainment, cruise control, parking assistance, driving assistance, and other user-related contexts, location-based contexts, and / or other contexts to determine whether a process is operating within its permitted boundaries.

[0091] In one example, the solutions described and depicted herein can be utilized to partially disable a means of transportation by, in certain embodiments, restricting speed, restricting the ability to approach another vehicle, limiting speed to a maximum value, and allowing only a given number of miles (about 1.609 km) per period. In one example, the solution can also be utilized to facilitate the exchange of ownership of a vehicle using a blockchain, and data is sent to a server by either a device associated with an accident involving the means of transportation or a device in proximity to the accident. Based on the severity of the accident or near-accident, the server notifies the sender of the data. In one example, the solution can also be utilized to assist a means of transportation in avoiding an accident, such as when the means of transportation is involved in an accident, by a server querying other means of transportation in proximity to the accident. The server attempts to obtain data from the other means of transportation, enabling the server to understand the nature of the accident from multiple perspectives. In one example, the solution can also be utilized to determine that the sound from a means of transportation is abnormal and send data related to the sound and the location of the possible source to the server, which can determine the possible cause and avoid a potentially dangerous situation. In one example, the solution can also be utilized to establish a boundary of a location via a system when a means of transportation is involved in an accident. This boundary is based on the decibels associated with the accident. Multimedia content for devices within the boundary is obtained to further assist in understanding the accident scenario. In one example, the solution can also be utilized to associate a vehicle with an accident and then capture media obtained by a device in proximity to the location of the accident. The captured media is stored as a media segment. The media segment is sent to another computing device that constructs a sound profile of the accident. This sound profile will assist in understanding further details surrounding the accident.

[0092] In one example, the solution can also be used to record audio, video, movement, etc. using sensors when a means of transportation contacts or can contact another means of transportation (while in motion or parked), in order to record the area where a potential event has occurred. The system captures data from one or more of the means of transportation and / or sensors that may be present on fixed or movable objects. In one example, the solution can also be used to determine that a means of transportation is damaged by using sensor data to identify a new state of the means of transportation during an event of the means of transportation and comparing that state to the state profile of the means of transportation, thereby enabling important data to be safely and securely captured from the means of transportation that is likely to be involved in a harmful event.

[0093] In one example, the solution can also be used to warn the occupants of a means of transportation when the means of transportation determines via one or more sensors that it is approaching or proceeding in the wrong direction on a one-way road. The means of transportation has sensors / cameras / maps that communicate with the system of this solution. The system recognizes the geographical location of the one-way road. The system can inform the occupants, for example, audibly, that they are "approaching a one-way road". In one example, the solution can also be used to enable a means of transportation to earn rewards, to enable an autonomous vehicle owner to monetize the data collected and stored by their vehicle sensors, to create an incentive for the vehicle owner to share their data and provide additional data to an entity to improve the performance of future vehicles, and to provide services to the vehicle owner.

[0094] In one example, the solution may also be utilized to increase or decrease a vehicle's functionality in response to the vehicle's operation over a period of time. In one example, the solution may also be utilized to assign fractional ownership to a means of transportation. Sensor data associated with one or more means of transportation and devices proximate to the means of transportation is used to determine the state of the means of transportation. The fractional ownership of the means of transportation is determined based on the state, and the responsibility for the new means of transportation is defined. In one example, the solution may also be utilized to provide data to replacement / upfitting parts, and the data permits the parts to use the approved functionality of the replacement / upfitting parts in response to an attempt to break the approved functionality of the replacement / upfitting parts and the approved functionality not being broken.

[0095] In one example, the solution may also be utilized to enable a passenger to be assured that a passenger is within a means of transportation and that the passenger should reach a particular destination. Further, the system ensures that a driver (in the case of a non-autonomous means of transportation) and / or other passengers are authorized to interact with the passenger. Pickup, drop-off, and location are also mentioned. All of the above are stored in the blockchain in an immutable manner. In one example, the solution may also be utilized to determine a driver's characteristics through an analysis of driving style and other factors, and to take measures when the driver is not driving normally, such as when the driver has driven in a particular state before, e.g., during the day, at night, in the rain, in the snow, etc. Further, the attributes of the means of transportation are also taken into account. The attributes include weather, whether headlights are on, whether navigation is being used, whether an HUD is being used, whether a certain volume of media is being played, etc. In one example, the solution may also be utilized to notify a passenger within a means of transportation of a dangerous situation when an item within the means of transportation indicates that the passenger may not be aware of the dangerous situation.

[0096] In one example, the solution can also be utilized to attach a calibration device to equipment fixed to the vehicle, and various sensors on the means of transportation can automatically self-adjust based on what should be detected by the calibration device as compared to what is actually detected. In one example, the solution can also be utilized to enable a remote diagnostic function by requiring consensus from a plurality of service centers using a blockchain when the means of transportation requiring service transmits malfunction information, and the consensus is required from other service centers regarding what the severity threshold for the data is. Once the consensus is received, the service center can transmit the malfunction security level to the stored blockchain. In one example, the solution can also be utilized to determine the difference between sensor data external to the means of transportation and the sensor data of the means of transportation itself. The means of transportation requests software for fixing the problem from the server. In one example, the solution can also be utilized to enable messaging of means of transportation that are near or within the area when an event (e.g., a collision) occurs.

[0097] Referring to FIG. 2I, the operating environment 290A of a connected means of transportation according to some embodiments is shown. As depicted, the means of transportation 276 includes a controller area network (CAN) bus 291A that connects elements 292A-299A of the means of transportation. Other elements can be connected to the CAN bus but are not depicted herein. The depicted elements connected to the CAN bus include a sensor set 292A, an electronic control unit 293A, an autonomous function or advanced driver assistance system (ADAS) 294A, and a navigation system 295A. In some embodiments, the means of transportation 276 includes a processor 296A, a memory 297A, a communication unit 298A, and an electronic display 299A.

[0098] The processor 296A includes an arithmetic logic unit, a microprocessor, a general-purpose controller, and / or a similar processor array, and performs calculations to provide an electronic display signal to the display unit 299A. The processor 296A may include various computing architectures, including processing data signals and implementing a complex instruction set computer (CISC) architecture, a reduced instruction set computer (RISC) architecture, or an architecture implementing a combination of instruction sets. The transport means 276 may include one or more processors 296A. Other processors, operating systems, sensors, displays, and physical configurations (not depicted) that are communicatively connected to each other may be used in this solution.

[0099] The memory 297A is a non-transitory memory that stores instructions or data that can be accessed and executed by the processor 296A. The instructions and / or data may include code for performing the techniques described herein. The memory 297A may be a dynamic random access memory (DRAM) device, a static random access memory (SRAM) device, a flash memory, or another memory device. In some embodiments, the memory 297A may also include a hard disk drive, a floppy disk drive, a CD-ROM device, a DVD-ROM device, a DVD-RAM device, a DVD-RW device, a flash memory device, or some other mass storage device for permanently storing information, and may include non-volatile memory or a similar permanent storage device and media. A portion of the memory 297A may be reserved for use as a buffer or virtual random access memory (virtual RAM). The transport means 276 may include one or more memories 297A without departing from the solution.

[0100] The memory 297A of the transport means 276 can store one or more of the following types of data, namely, the navigation route data 295A and the autonomous function data 294A. In some embodiments, the memory 297A stores data that may be necessary for the navigation application 295A to provide its functions.

[0101] The navigation system 295A can represent at least one navigation route including a starting point and an end point. In some embodiments, the navigation system 295A of the transport means 276 receives a request from the user for a navigation route, and the request includes a starting point and an end point. The navigation system 295A can inquire (via the network 292) of a real-time data server 293, such as a server that provides a driving direction, about the navigation route data corresponding to the navigation route including the starting point and the end point. The real-time data server 293 transmits the navigation route data to the transport means 276 via the wireless network 292, and the communication system 298A stores the navigation data 295A in the memory 297A of the transport means 276.

[0102] The ECU 293A controls the operation of a number of systems of the transport means 276 including the ADAS system 294A. The ECU 293A can disable any dangerous and / or unselected autonomous functions during the period of the journey controlled by the ADAS system 294A in response to an instruction received from the navigation system 295A. In this way, the navigation system 295A can control whether to enable or make the ADAS system 294A available so that the ADAS system 294A can be enabled on a given navigation route.

[0103] Sensor set 292A may include any sensor that generates sensor data in the transport means 276. For example, sensor set 292A may include a short-range sensor and a long-range sensor. In some embodiments, the sensor set 292A of the transport means 276 includes the following vehicle sensors, namely, cameras, LiDAR sensors, ultrasonic sensors, automotive engine sensors, radar sensors, laser altimeters, manifold absolute pressure sensors, infrared detectors, motion detectors, thermostats, sound detectors, carbon monoxide sensors, carbon dioxide sensors, oxygen sensors, mass air flow sensors, engine coolant temperature sensors, throttle position sensors, crankshaft position sensors, valve timers, air-fuel ratio meters, blind spot meters, curve feelers, defect detectors, Hall effect sensors, parking sensors, speed guns, speedometers, speed sensors, tire pressure monitoring sensors, torque sensors, transmission fluid temperature sensors, turbine speed sensors (TSS), variable reluctance sensors, vehicle speed sensors (VSS), moisture sensors, wheel speed sensors, GPS sensors, mapping functions, and one or more of any other type of automotive sensor. The navigation system 295A may store sensor data in the memory 297A.

[0104] The communication unit 298A transmits and receives data to and from the network 292 or on another communication channel. In some embodiments, the communication unit 298A may include a DSRC transceiver, a DSRC receiver, and any other hardware or software necessary to make the transport means 276 a DSRC-equipped device.

[0105] The transport means 276 may communicate with other transport means 277 via V2V technology. In one example, V2V communication includes detecting radar information corresponding to the relative distance to an external object, receiving GPS information of the transport means, setting an area as the area where other transport means 277 are located based on the detected radar information, calculating the probability that the GPS information of the target vehicle is located in the set area, and identifying the transport means and / or object corresponding to the radar information and GPS information of the target vehicle based on the calculated probability.

[0106] In one example, the solution described and depicted herein may be utilized to manage emergency scenarios and the functions of a transport means when it is determined that the transport means is in an area without network access. In one example, the solution may also be utilized to manage and provide functions (such as voice, video, navigation, etc.) in a transport means without network connectivity. In one example, the solution may also be utilized to determine when the profile of a person in proximity to the transport means matches the profile attributes of the profile of at least one passenger within the transport means. A notification is sent from the transport means to establish communication.

[0107] In one example, the solution may also be utilized to analyze the availability of passengers within each transport means where voice communication is available, based on the amount of time remaining within the transport means and the context of the communication being made. In one example, the solution may also be utilized to determine two threat levels regarding road obstacles, receive a gesture indicating that the obstacle does not reach a warning threshold, and be used by the transport means to proceed along the road. In one example, the solution may also be utilized to delete confidential data from the transport means when the transport means has received damage such that it is rendered inoperable.

[0108] In one example, the solution can also be used to confirm that customer data to be removed is truly removed from all necessary locations within an enterprise that has declared GDPR compliance. In one example, the solution can also be used to provide a consideration from one means of transportation to another in exchange for data related to safety and important notifications, etc., to enhance the autonomous capabilities of a lower level of autonomous vehicle. In one example, the solution can also be used to provide the ability for a means of transportation to receive data based on a first biometric associated with a passenger. Then, based on the verification of a second biometric, the means of transportation decrypts the encrypted data, and the second biometric is a continuation of the first biometric. The means of transportation provides the decrypted data to the passenger only when the passenger can receive the decrypted data, deletes the confidential portion of the decrypted data when the confidential portion is provided, and deletes the non-confidential portion after the period associated with the biometric has elapsed. In one example, the solution can also be used to provide the ability for a means of transportation to verify an individual based on the weight and gripping pressure applied to the steering wheel of the means of transportation. In one example, the solution can also be used to provide a function that exists but is not currently made available in a passenger vehicle, to present a function reflecting the characteristics of the passenger to the passenger of the vehicle.

[0109] In one example, the solution can also be used to enable the reflection of modifications regarding the means of transportation, in particular inside and outside the means of transportation, and to assist at least one passenger in one example. In another example, the reproduction of the passenger's work environment and / or home environment is disclosed. The system can attempt to "reproduce" the user's work environment / home environment while the user is inside the means of transportation if the means of transportation determines that the user is in "work mode" or "home mode". All data related to the inside and outside of the means of transportation and all passengers using the means of transportation is stored in the blockchain and executed via smart contracts. In one example, the solution can also be used to detect the gestures of the passenger and assist in communication with nearby means of transportation, and the means of transportation can be controlled accordingly. In one example, the solution can also be used to use a gesture definition data store to provide the means of transportation with the ability to detect the intended gestures. In one example, the solution can also be used to provide the means of transportation with the ability to take various measures based on the pace and the gestures of the user. In one example, the solution can also be used to ensure that the driver of the means of transportation, who is currently involved in various operations (such as driving while talking to navigation), does not exceed the number of dangerous operations before the permission of gestures.

[0110] In one example, the solution can also be used to assign a situation to each occupant within a means of transportation and verify gestures from the occupants based on the occupants' situations. In one example, the solution can also be used to collect details of sounds related to a collision (such as where, in which direction, whether it is getting louder or quieter, from which device, data associated with the device, e.g., type, manufacturer, owner, and the number of sounds occurring simultaneously and the time when the sounds were emitted) and provide them to the system when the analysis of the data helps in determining details regarding the collision. In one example, the solution can also be used to determine whether the operation of the means of transportation is dangerous. The means of transportation includes a plurality of components that interact to control the means of transportation, and each component is associated with a key of a separate component. An encryption key is sent to the means of transportation to reduce its functionality. In response to receiving the encryption key, the means of transportation disables one or more of the component keys. The disabling of one or more component keys results in one or more of restricting the means of transportation from moving faster than a given speed, restricting the means of transportation from approaching another means of transportation by a certain distance, and restricting the means of transportation from moving farther than a threshold distance.

[0111] In one example, the solution can also be used to provide a display from a particular means of transportation (trying to vacate a location) to another particular means of transportation (trying to occupy the location), and the blockchain is used for authentication and coordination. In one example, the solution can also be used to determine partial responsibility for a means of transportation. It is used by the system to update co-ownership when multiple people own a single means of transportation and the use of the means of transportation can be changed over a period of time. Other embodiments include uses that involve the availability of the means of transportation rather than its use, and minimal ownership of the means of transportation based on the decisions of the operator of the means of transportation and other factors.

[0112] In one example, the solution can also be used in the transportation means for the user to permit their subscription regarding people in a closed group such as family or friends. For example, a user may want to share the membership, and in that case, the associated transaction is stored in the blockchain or a conventional database. When the material for the regular subscription is requested by a user who is not the main subscriber, the blockchain node (i.e., the transportation means) can verify that the person requesting the service is an approved person with whom the subscriber has shared the profile. In one example, the solution can also be used to enable a person to use an auxiliary transportation means to reach the intended destination. Functional relationship values (e.g., values indicating various parameters and their importance when determining which type of alternative transportation means should be used) are used when determining the auxiliary transportation means. In one example, the solution can also be used to enable passengers in an accident to access other transportation means and continue to their original destination.

[0113] In one example, the solution may also be used to communicate a software / firmware upload to a first subset of transport means. This first set of transport means tests the update and, when the test is successful, the update is communicated to a further set of transport means. In one example, the solution may also be used to communicate a software / firmware update from a master transport means to a vehicle, where the update is communicated through the vehicle's network from a first subset, then a larger subset, etc. A portion of the update may be sent first and then the remainder may be sent from the same vehicle or a different vehicle. In one example, the solution may also be used to provide an update for a transport means' computer to the transport means and the operator's / passenger's device of the transport means. The update may be approved by all drivers and / or all passengers. The software update is provided to the vehicle and the device. The user need do nothing other than go near the vehicle and the function occurs automatically. A notification indicating that the software update is complete is sent to the device. In one example, the solution may also be used to verify that an OTA software update is being performed by an authorized technician and that the circumstances related to the originator of the verification code, the procedure for receiving the software update wirelessly, the information included in the software update, and the result of the verification are being generated by components of one or more transport means.

[0114] In one example, the solution can also be utilized to provide the ability for a software update located within a first component to be parsed by a second component. Next, a first portion of the important update and a second portion of the non-important update are identified, and in the transport means, the identified first portion is assigned to a certain process, and in that process for a certain period, the identified first portion is operated, and in response to a positive result based on that period, after that period, in another process, the identified first portion is operated. In one example, the solution can also be utilized to provide a choice of services to the passengers, and the services are based on the profile of the passengers of the transport means and a shared profile shared with the profile of the passengers. In one example, the solution can also be utilized to store user profile data in a blockchain and intelligently present offers and recommendations to the user based on the automatically collected purchase history of the user and the preferences obtained from the user profile on the blockchain.

[0115] To make the transport means sufficiently secure, the transport means needs to be protected from unauthorized physical access and unauthorized remote access (e.g., cyber threats). In one example, to prevent unauthorized physical access, the transport means is equipped with a secure access system such as keyless entry. On the other hand, in one example, a security protocol is added to the computer and computer network of the transport means to facilitate secure remote communication with the transport means.

[0116] An electronic control unit (ECU) is a node within a means of transportation that controls tasks ranging from tasks such as windshield wiper operation to tasks such as an anti-lock braking system. ECUs are often interconnected with each other through a central network of the means of transportation, which can be referred to as a controller area network (CAN). State-of-the-art functions such as autonomous driving strongly depend on the implementation of new and complex ECUs such as advanced driver assistance systems (ADAS), sensors, and the like. These new technologies have helped improve the safety and driving experience of the means of transportation, but these new technologies also increase the number of external communication units within the means of transportation and make the external communication units more vulnerable to attacks. The following are some examples of protecting the means of transportation from physical and remote intrusions.

[0117] FIG. 2J shows a keyless entry system 290B for preventing unauthorized physical access to a means of transportation 291B according to an exemplary embodiment. Referring to FIG. 2J, in one example, a key fob 292B transmits commands to the means of transportation 291B using a radio frequency signal. In this example, the key fob 292B includes a transmitter 2921B having an antenna capable of transmitting short-range radio signals. The means of transportation 291B includes a receiver 2911B having an antenna capable of receiving short-range radio signals transmitted from the transmitter 2921B. The key fob 292B and the means of transportation 291B each also include CPUs 2922B and 2913B that control their respective devices. Here, there is memory for the CPUs 2922B and 2913B (or accessible to the CPUs). In one example, each of the key fob 292B and the means of transportation 291B includes a power supply 2924B and 2915B that powers their respective devices.

[0118] When the user presses the button 293B of the key fob 292B (or in other cases, when the fob is activated, etc.), the CPU 2922B is activated within the key fob 292B and transmits a data stream output via the antenna to the transmitter 2921B. In other embodiments, the user's intention is recognized in the key fob 292B via other means such as a microphone that receives voice, a camera that captures images and / or videos, or other sensors commonly used in the art to detect intentions from the user, including the reception of gestures, movements, eye movements, and the like. The data stream can be a signal with a length ranging from 64 bits to 128 bits, including one or more of a preamble, a command code, and a rolling code. The signal can be transmitted at a speed between 2KHz and 20KHz, but the embodiments are not limited thereto. Accordingly, the receiver 2911B of the transport means 291B captures the signal from the transmitter 2921B, demodulates the signal, and transmits the data stream to the CPU 2913B. The CPU 2913B decodes the signal and transmits a command (e.g., locking or unlocking a door, etc.) to the command module 2912B.

[0119] If the key fob 292B and the transport means 291B use a fixed code between them, a replay attack can be carried out. In this case, if an attacker can capture / find out the fixed code during short-range communication, the attacker can replay this code to achieve access to the transport means 291B. To improve security, the key fob and the transport means 291B can use a rolling code that changes after each use. Here, the key fob 292B and the transport means 291B are synchronized with an initial seed 2923B (for example, a random number or a pseudo-random number, etc.). This is called pairing. The key fob 292B and the transport means 291B also include a shared algorithm that modifies the initial seed 2914B each time the button 293B is pressed. The next key press takes the result of the previous key press as input and converts it into the next number in the sequence. In some cases, the transport means 291B can store a plurality of next codes (for example, 255 next codes) if the key presses of the key fob 292B are not detected by the transport means 291B. Therefore, a large number of key presses of the key fob 292B that are not recognized by the transport means 291B do not prevent the transport means from becoming asynchronous.

[0120] In addition to the rolling code, the key fob 292B and the transport means 291B can adopt other methods to make the attack even more difficult. For example, various frequencies can be used to transmit the rolling code. As another example, two-way communication between the transmitter 2921B and the receiver 2911B can be used to establish a secure session. As another example, the code can have a limited expiration date or timeout. Further, the solution as described and depicted with respect to FIG. 2J can be utilized in this network and / or system, as well as other networks and / or systems, including those described and depicted herein.

[0121] FIG. 2K shows a Controller Area Network (CAN) 290C within a transportation means according to an exemplary embodiment. Referring to FIG. 2K, CAN 290C includes a CAN bus 297C having high and low terminals, and a plurality of electronic control units (ECUs) 291C, 292C, 293C, etc. connected to CAN bus 297C via a wired connection. CAN bus 297C is designed to enable microcontrollers and devices to communicate with each other in an application without using a host computer. CAN bus 297C implements a message-based protocol (i.e., ISO 11898 standard) that enables ECUs 291C - 293C to send commands to each other at the root level. On the other hand, ECUs 291C - 293C represent controllers that control electrical systems or subsystems within the transportation means. Examples of electrical systems include power steering, antilock brakes, air conditioning, tire pressure monitoring, cruise control, and numerous other functions.

[0122] In this example, ECU 291C includes a transceiver 2911C and a microcontroller 2912C. The transceiver can be used to send and receive messages to and from CAN bus 297C. For example, transceiver 2911C can convert data from microcontroller 2912C into the format of CAN bus 297C, and also convert data from CAN bus 297C into a format for microcontroller 2912C. On the other hand, in one example, microcontroller 2912C interprets messages and determines which messages to send using the ECU software installed in microcontroller 2912C.

[0123] To protect the CAN290C from cyber threats, various security protocols can be implemented. For example, a subnetwork (such as subnetwork A and B, etc.) can be used to divide the CAN290C into smaller sub-CANs to limit the ability of an attacker who remotely accesses the transportation means. In the example of Figure 2K, the ECUs 291C and 292C can be part of the same subnetwork, while the ECU 293C is part of an independent subnetwork. Further, a firewall 294C (or a gateway, etc.) can be added to prevent messages from crossing the CAN bus 297C across the subnetwork. If an attacker achieves access to a certain subnetwork, the attacker does not have access to the entire network. In one example, to make the subnetwork even more secure, the most important ECUs are not placed in the same subnetwork.

[0124] Although not shown in Figure 2K, other examples of security control within the CAN include an intrusion detection system (IDS), which can be added to each subnetwork to read all passing data and detect malicious messages. If a malicious message is detected, the IDS can notify the vehicle user. Other possible security protocols can include encryption / security keys that can be used to obfuscate the messages. As another example, in one example, an authentication protocol that enables the message to authenticate itself is implemented.

[0125] In addition to protecting the internal network of the transport means, the transport means can also be protected when communicating with external networks such as the Internet. One advantage of having a connection of the transport means to a data source such as the Internet is that information from the transport means can be transmitted through the network to a remote location for analysis. Examples of transport means information include GPS, on-board diagnostics, tire pressure, and the like. Since these communication systems include a combination of telecommunications and informatics, such communication systems are often referred to as telematics. Further, the solution as described and depicted with respect to FIG. 2K can be utilized in this network and / or system, as well as other networks and / or systems, including those described and depicted herein.

[0126] FIG. 2L shows a secure end-to-end transport means communication channel according to an exemplary embodiment. Referring to FIG. 2L, a telematics network 290D includes a transport means 291D and a host server 295D located at a remote location (such as a web server, a cloud platform, a database, etc.) and connected to the transport means 291D via a network such as the Internet. In this example, a device 296D associated with the host server 295D can be installed inside the transport means 291D within the network. Further, although not shown, the device 296D can be connected to other elements of the transport means 291D, such as a CAN bus, an on-board diagnostic (ODBII) port, a GPS system, a SIM card, a modem, and the like. The device 296D can collect data from any of these systems and transmit the data to the server 295D via the network.

[0127] Secure management of the data begins with the transportation means 291D. In some embodiments, the device 296D may collect information before, during, and after movement. The data may include GPS data, movement data, passenger information, diagnostic data, fuel data, speed data, and the like. However, the device 296D may simply communicate and return the collected information to the host server 295D in response to the ignition and completion of movement of the transportation means. Further, the communication may be initiated only by the device 296D and not by the host server 295D. Thus, in one example, the device 296D does not receive communications initiated by an external source.

[0128] To perform the communication, the device 296D may establish a secure private network between the device 296D and the host server 295D. Here, the device 296D may include an anti-tampering SIM card that provides secure access to the carrier network 294D via the radio tower 292D. When preparing to send data to the host server 295D, the device 296D may establish a one-way secure connection with the host server 295D. The carrier network 294D may communicate with the host server 295D using one or more security protocols. As a non-limiting example, the carrier network 294D may communicate with the host server 295D via a VPN tunnel that enables access through the firewall 293D of the host server 295D. As another example, the carrier network 294D may use data encryption (e.g., AES encryption, etc.) when sending data to the host server 295D. In some cases, the system may use multiple security measures such as both VPN and encryption to make the data more secure.

[0129] In addition to communicating with external servers, the transport means can also communicate with each other. In particular, a vehicle-to-vehicle (V2V) communication system enables the transport means to communicate with each other, with roadside infrastructure (such as traffic lights, signs, cameras, parking meters, etc.), and with others of the same kind through a wireless network. The wireless network can include one or more of a Wi-Fi network, a cellular network, a dedicated short-range communication (DSRC) network, and the like. The transport means can use V2V communication, for example, to provide information regarding the speed, acceleration, brakes, and direction of the transport means to other transport means. Thus, the transport means can receive insights into the forward state before that state becomes visible, and thus can greatly reduce collisions. Further, the solution as described and depicted with respect to Figure 2L can be utilized in this network and / or system, as well as in other networks and / or systems, including those described and depicted herein.

[0130] Figure 2M shows an example 290E of transport means 293E and 292E that perform secure V2V communication using security certificates, according to an exemplary embodiment. Referring to Figure 2M, transport means 293E and 292E can communicate via V2V communication through a short-range network, a cellular network, or the like. Before sending a message, transport means 293E and 292E can sign the message using their respective public key certificates. For example, transport means 293E can sign a V2V message using public key certificate 294E. Similarly, transport means 292E can sign a V2V message using public key certificate 295E. In one example, public key certificates 294E and 295E are respectively associated with transport means 293E and 292E.

[0131] When receiving communications from each other, the transport means can confirm the signature with the certification authority 291E or the like. For example, the transport means 292E can confirm with the certification authority 291E that the public key certificate 294E used by the transport means 293E for signing V2V communications is a certified one. When the transport means 292E successfully confirms the public key certificate 294E, the transport means recognizes that the data is from a legitimate source. Similarly, the transport means 293E can confirm with the certification authority 291E that the public key certificate 295E used by the transport means 292E for signing V2V communications is a certified one. Furthermore, the solution as described and depicted with respect to FIG. 2M can be utilized in this network and / or system, as well as other networks and / or systems, including those described and depicted herein.

[0132] FIG. 2N shows a further additional FIG. 290F depicting an example of a transport means that interacts with a security processor and a wireless device according to an exemplary embodiment. In some embodiments, the computer 224 shown in FIG. 2B can include a security processor 292F as shown in the process 290F of the example of FIG. 2N. In particular, the security processor 292F can perform approval, authentication, encryption (e.g., encryption), and the like for data transmissions sent between the ECU and other devices on the vehicle's CAN bus, as well as for data messages sent between different vehicles.

[0133] In the example of FIG. 2N, the security processor 292F may include an approval module 293F, an authentication module 294F, and an encryption module 295F. The security processor 292F may be implemented within the computer of the transport means and may communicate with other transport means elements, such as the ECU / CAN network 296F, wired and wireless devices 298F, such as a wireless network interface, an input port, and the like. The security processor 292F may ensure that data frames (such as CAN frames, etc.) transmitted internally within the transport means (e.g., via the ECU / CAN network 296F) are secure. Similarly, the security processor 292F may ensure that messages transmitted between different transport means and devices attached or connected to the transport means computer via wires are also secure.

[0134] For example, the approval module 293F may store passwords, usernames, PIN codes, biometric scans, and the like for various transport means users. The approval module 293F may determine whether a user (or technician) has the permission to access certain settings, such as those of the transport means computer. In some embodiments, the approval module may communicate with a network interface to download any necessary approval information from an external server. When a user requests to make changes to the transport means settings or modify the technical details of the transport means via a console or GUI within the transport means or via an attached / connected device, the approval module 293F may request the user to identify itself in some way before the settings are changed. For example, the approval module 293F may require a username, password, PIN code, biometric scan, a predefined line drawing or gesture, and the like. Accordingly, the approval module 293F may determine whether the user has the required permission (such as access, etc.) requested.

[0135] The authentication module 294F can be used to authenticate the internal communication between ECUs in the vehicle's CAN network. As an example, the authentication module 294F can provide information for authenticating the communication between ECUs. As an example, the authentication module 294F can send a bit signature algorithm to the ECUs of the CAN network. The ECU can use the bit signature algorithm to insert authentication bits into the CAN fields of the CAN frame. All ECUs on the CAN network usually receive each CAN frame. Each time a new CAN frame is generated by one of the ECUs, the bit signature algorithm can dynamically change the position and amount of the authentication bits, etc. The authentication module 294F can also provide a list of ECUs that are exempted (are in the safe list) and do not need to use authentication bits. The authentication module 294F can communicate with a remote server to retrieve updates and the like for the bit signature algorithm.

[0136] The encryption module 295F can store an asymmetric key pair used by the transport means to communicate with other external user devices and transport means. For example, the encryption module 295F can provide the private key used by the transport means to encrypt / decrypt communication, while the corresponding public key can be provided to other user devices and the transport means so that other devices can decrypt / encrypt the communication. The encryption module 295F can communicate with a remote server to receive new keys, updates to the keys, keys for new transport means or users, and the like. The encryption module 295F can also send any updates to the local private / public key pair to the remote server.

[0137] Figure 3A shows a flow diagram 300 according to an exemplary embodiment. Referring to Figure 3A, the flow includes one or more of: detecting that a plurality of wireless devices are located in a vehicle 302; pairing a wireless device of the plurality of wireless devices with a head unit of the vehicle when the wireless device is receiving or transmitting audio 304; and transmitting audio through the head unit of the vehicle 306.

[0138] Figure 3B shows another flowchart 320 according to an exemplary embodiment. Referring to Figure 3B, the flow includes determining a higher-priority wireless device among a wireless device transmitting voice and another wireless device among a plurality of wireless devices receiving a call, and pairing between the higher-priority wireless device and the vehicle's head unit 322; determining if the wireless device is close to the vehicle and not paired with the head unit, and transmitting a message to the wireless device that pairing with the head unit is available 323; receiving an incoming call by the wireless device, determining that the incoming call is at least one of a multimedia call or a video call, and presenting the incoming call on the vehicle's display when pairing the wireless device with the head unit 324; pairing the head unit with a wireless device associated with a non-owner of the vehicle, detecting at least one of receiving a call or starting a call in a wireless device associated with the vehicle's owner, un-pairing the wireless device associated with the non-owner of the vehicle, and pairing the head unit with the wireless device associated with the vehicle's owner 325; monitoring the received voice, and un-pairing the wireless device from the head unit when a threshold for one or more confidential words in the received voice is exceeded 326; pairing one of a plurality of wireless devices with the head unit, receiving a first call in one of the plurality of wireless devices, receiving a second call in another of the plurality of wireless devices, determining a priority between the first call and the second call based on at least one of the first party participating in the first call, the second party participating in the second call, future meetings of the first party, future meetings of the second party, previous meetings of the first party, previous meetings of the second party, and / or date and time, and when the determined priority is in the second call, un-pairing one of the plurality of wireless devices from the head unit and pairing another of the plurality of wireless devices with the head unit 327; and including one or more of the above.

[0139] Figure 3C shows yet another flow diagram 340 according to an exemplary embodiment. Referring to Figure 3C, the flow diagram includes receiving an event confirmation from one or more of the elements described or depicted herein, the confirmation comprising a blockchain consensus among peers represented by any of the elements 342, and executing a smart contract to record the confirmation in the blockchain based on the blockchain consensus 344, among one or more of the above.

[0140] Figure 4 shows a machine learning transportation means network diagram 400 according to an exemplary embodiment. The network 400 includes transportation means 402 coupled to a machine learning subsystem 406. The transportation means includes one or more sensors 404.

[0141] The machine learning subsystem 406 includes a learning model 408, which is a mathematical artifact created by a machine learning training system 410 that generates predictions by finding patterns within one or more training data sets. In some embodiments, the machine learning subsystem 406 is present within the transportation means 402. In other embodiments, the machine learning subsystem 406 is present external to the transportation means 402.

[0142] The transportation means 402 transmits data from one or more sensors 404 to the machine learning subsystem 406. The machine learning subsystem 406 provides the data from one or more sensors 404 to the learning model 408, and the learning model 408 returns one or more predictions. The machine learning subsystem 406 transmits one or more instructions to the transportation means 402 based on the predictions from the learning model 408.

[0143] In a further embodiment, the transport means 402 may transmit data from one or more sensors 404 to the machine learning training system 410. In yet another example, the machine learning subsystem 406 may transmit data from the sensors 404 to the machine learning subsystem 410. One or more of the applications, functions, steps, solutions, etc. described and / or depicted herein may utilize the machine learning network 400 as described herein.

[0144] FIG. 5A shows an exemplary vehicle configuration 500 for managing database transactions associated with a vehicle, according to an exemplary embodiment. Referring to FIG. 5A, when a particular transport means / vehicle 525 is involved in a transaction (e.g., a vehicle service, a dealership transaction, a delivery / pickup, a transportation service, etc.), the vehicle may receive (510) and / or give / deliver (512) an asset according to the transaction. The transport means processor 526 is present within the vehicle 525, and there is communication between the transport means processor 526, the database 530, the transport means processor 526, and the transaction module 520. The transaction module 520 may record information such as assets, parties, credits, service descriptions, dates, times, locations, results, notifications, unexpected events, etc. The transaction in the transaction module 520 may be replicated within the database 530. The database 530 may be one of an SQL database, an RDBMS, a relational database, a non-relational database, a blockchain, a distributed ledger, and may be on-board in the transport means, off-board in the transport means, accessible directly and / or through a network, or accessible to the transport means.

[0145] FIG. 5B shows an exemplary vehicle configuration 550 that manages database transactions performed between various vehicles according to an exemplary embodiment. When a vehicle reaches a situation where a service needs to be shared with another vehicle, vehicle 525 can engage with another vehicle 508 to perform various operations such as sharing, transmitting, and obtaining service requests. For example, vehicle 508 may be scheduled for battery charging and / or may have a problem with its tires and may be within the route to pick up the goods for delivery. The transportation means processor 528 is present within vehicle 508, and there is communication between the transportation means processor 528, the database 554, and the transaction module 552. Vehicle 508 can notify another vehicle 525 that is within its network and operating on its blockchain member service. The transportation means processor 526 is present within vehicle 525, and there is communication between the transportation means processor 526, the database 530, the transportation means processor 526, and the transaction module 520. Then, vehicle 525 can receive information via a wireless communication request and pick up the goods from vehicle 508 and / or from a server (not shown). The transaction is logged in the transaction modules 552 and 520 of both vehicles. Credits are transmitted from vehicle 508 to vehicle 525, and the record of the service transmitted is logged in the database 530 / 554 assuming that the blockchains are different from each other, or is logged in the same blockchain used by all members. The database 554 can be one of an SQL database, an RDBMS, a relational database, a non-relational database, a blockchain, a distributed ledger, can be on-board in the transportation means, can be off-board in the transportation means, and can be accessible directly and / or through the network.

[0146] FIG. 6A shows a blockchain architecture configuration 600 according to an exemplary embodiment. Referring to FIG. 6A, the blockchain architecture 600 may include a group of blockchain member nodes 602-606 as part of a particular blockchain element, such as a blockchain group 610. In an exemplary embodiment, in a permissioned blockchain, only members who have permission to access blockchain data, rather than all parties, are accessible. Blockchain nodes are involved in a number of activities, such as the addition and verification process (consensus) of blockchain entries. One or more of the blockchain nodes may approve an entry based on an endorsement policy and may provide an ordering service to all blockchain nodes. The blockchain nodes may initiate blockchain operations (such as authentication), attempt to write to the blockchain ledger stored on the blockchain, and a copy thereof may also be stored on the underlying physical infrastructure.

[0147] When the transaction is received and approved by the consensus model determined by the member nodes, the blockchain transaction 620 is stored in the computer's memory. The approved transaction 626 is stored in the current block of the blockchain and committed to the blockchain via a commit procedure, which includes hashing the data content of the transactions within the current block and referencing the previous hash of the previous block. There may be one or more smart contracts 630 within the blockchain that define the conditions for the agreement and operation of transactions included within the smart contract executable application code 632, such as registered recipients, vehicle functions, requirements, permissions, sensor thresholds, etc. The code can be configured to identify whether the entity making the request is registered to receive vehicle services, what service functions the entity is eligible / required to receive considering the entity's profile status, and whether to monitor the entity's operation in subsequent events. For example, when a service event occurs and the user is in the vehicle, the monitoring of sensor data can be triggered, and specific parameters such as the charge level of the vehicle can be identified as exceeding / falling below a specific threshold over a specific period, and then as a result, the current situation can be changed, which may require sending a warning to the management parties (i.e., vehicle owner, vehicle operator, server, etc.), and the service can be identified and stored for reference. The vehicle sensor data collected can be based on the type of sensor data used to collect information about the vehicle's situation. The sensor data can also be the basis for vehicle event data 634 such as the location where it is moving, average speed, maximum speed, acceleration, whether there has been any collision, whether the expected route has been taken, where the next destination is, whether safety measures are being implemented, whether there is sufficient charge / fuel in the vehicle, etc. All such information can be the basis for the smart contract conditions 630, which are then stored in the blockchain.For example, the sensor thresholds stored in the smart contract can be used as a basis for determining whether the detected service is required and when and where the service should be performed.

[0148] FIG. 6B shows the configuration of a shared ledger according to an exemplary embodiment. Referring to FIG. 6B, an example 640 of blockchain logic includes a blockchain application interface 642 as an API or plug-in application that couples to a computing device and an execution platform for a particular transaction. The blockchain configuration 640 may include one or more applications coupled to an application programming interface (API) to access and execute stored program / application code (e.g., smart contract executable code, smart contracts, etc.), and the program / application code may be created according to a customization configuration required by participants, maintain its own state, control its own assets, and receive external information. This can be deployed and installed as an entry by appending to a distributed ledger on all blockchain nodes.

[0149] The smart contract application code 644 provides a basis for blockchain transactions by establishing application code that enables transaction conditions and states when executed. The smart contract 630, when executed, causes a particular approved transaction 626 to be generated, and the transaction 626 is then transferred to the blockchain platform 652. The platform includes security / approval 658, a computing device 656 that performs transaction management, and a storage unit 654 as a memory for storing transactions and smart contracts in the blockchain.

[0150] A blockchain platform may include blockchain data of various layers, services (such as encryption trust services, virtual execution environments, etc.), and underlying physical computer infrastructure that can be used to provide access to auditors who are attempting to receive and store new entries and access data entries. The blockchain may expose an interface that processes program code to provide access to the virtual execution environment required to participate in the physical infrastructure. Encryption trust services may be used to verify entries such as asset exchange entries and keep information private.

[0151] The blockchain architecture configurations of FIGS. 6A and 6B may process and execute program / application code through one or more interfaces exposed and services provided by the blockchain platform. As a non-limiting example, smart contracts may be created to execute reminders, updates, and / or other notifications that are the subject of changes or updates. The smart contracts themselves may be used to identify approval and access requirements and the rules associated with the use of ledgers. For example, the information may include new entries that can be processed by one or more processing entities (such as processors, virtual machines, etc.) included in the blockchain layer. The result may include a decision to reject or approve new entries based on criteria defined by the smart contract and / or peer consensus. The physical infrastructure may be utilized to retrieve any of the data or information described herein.

[0152] Within the smart contract executable code, the smart contract is created via a high-level application and programming language and can then be written to blocks within the blockchain. The smart contract can include executable code that is registered, stored, and / or replicated using a blockchain (e.g., a distributed network of blockchain peers). The entry is the execution of the smart contract code, which can occur in response to the conditions associated with the smart contract being satisfied. The execution of the smart contract can trigger a reliable modification to the state of the digital blockchain ledger. Modifications to the blockchain ledger resulting from the execution of the smart contract can be automatically replicated throughout the distributed network of blockchain peers by one or more consensus protocols.

[0153] The smart contract can write data to the blockchain in the format of key-value pairs. Further, the smart contract code can read values stored in the blockchain and use those values during application operation. The smart contract code can write the output of various logical operations into the blockchain. The code can be used to create temporary data structures within a virtual machine or other computing platform. The data written to the blockchain can be made public and / or encrypted and maintained as private. Temporary data used / generated by the smart contract is held in memory by the provided execution environment and then deleted when the data required by the blockchain is identified.

[0154] Smart contract executable code may include the code interpretation of a smart contract with additional functionality. As described herein, smart contract executable code may be program code deployed on a computing network, where the program code is executed and verified by chain validators together during a consensus process. Smart contract executable code receives a hash and extracts a hash associated with a data template created by using a previously stored function extractor from a blockchain. When the hash of the hash identifier matches the hash created from the stored identifier template data, the smart contract executable code then sends an approval key to the requested service. Smart contract executable code may write data related to encryption details to a blockchain.

[0155] FIG. 6C shows a blockchain configuration for storing blockchain transaction data according to an exemplary embodiment. Referring to FIG. 6C, an exemplary configuration 660 provides a vehicle 662, a user device 664, and a server 666 that share information with a distributed ledger (i.e., a blockchain) 668. In an event where a known established user profile attempts to rent a vehicle using an established rating profile, the server may represent a service provider entity that queries the vehicle service provider to share user profile rating information. The server 666 may receive and process data related to the service requirements of the vehicle. When a service event occurs, such as vehicle sensor data indicating a need for fuel / charge or maintenance services, smart contracts may be used to call rules, thresholds, collection of sensor information, etc., which may be used to trigger a vehicle service event. Blockchain transaction data 670 is stored for each transaction, such as access events, subsequent updates to the service status of the vehicle, and event updates. The transaction may include the parties involved, requirements (e.g., 18 years old, eligible candidates for services, valid driver's license, etc.), compensation levels, distance traveled between events, registered recipients permitted access to the event and provision of vehicle services, rights / permissions, sensor data retrieved during vehicle event operations to log details of the next service event and identify the status of the vehicle, and thresholds used to determine whether the service event has been completed and whether the status of the vehicle has changed.

[0156] FIG. 6D shows the content of the blockchain block 680 that can be added to the distributed ledger and the block structures 682A to 682n according to an exemplary embodiment. Referring to FIG. 6D, a client (not shown) can present an entry to a blockchain node to perform activities on the blockchain. As an example, the client can be an application that functions on behalf of a requester such as a device, a person, or an entity to propose an entry to the blockchain. A plurality of blockchain peers (e.g., blockchain nodes) can maintain the state of the blockchain network and a copy of the distributed ledger. Various types of blockchain nodes / peers in the blockchain network can include an approval peer that simulates and approves the entry proposed by the client, and a commit peer that verifies the endorsement, verifies the entry, and commits the entry to the distributed ledger. In this example, the blockchain node can perform the role of an endorser node, a committer node, or both.

[0157] This system includes a blockchain that stores immutable and ordered records in blocks, and a state database (current world state) that maintains the current state of the blockchain. One distributed ledger may exist for each channel, and each peer maintains its own copy of the distributed ledger for each channel of which it is a member. This blockchain is an entry log constructed as a hash-linked block, where each block contains a sequence of N entries. A block may contain various components such as those shown in FIG. 6D. The linking of blocks can be generated by adding a hash regarding the header of the previous block into the block header of the current block. In this way, all entries in the blockchain are ordered and cryptographically linked to prevent the tampering of blockchain data without breaking the hash link. Further, because they are linked, the latest block in the blockchain represents all the entries that have occurred before it. This blockchain can be stored on a peer file system (local or attached storage) that supports the workload of an append-only blockchain.

[0158] The current state of the blockchain and the distributed ledger can be stored in the state database. Here, the current state data represents the latest values for all keys included in the chain entry log of the blockchain. The invocation of smart contract executable code executes an entry against the current state in the state database. To make the interaction of the smart contract executable code extremely efficient, the latest values of all keys are stored in the state database. The state database may include an indexed view of the entry log of the blockchain, and thus it can be regenerated from the chain at any time. The state database can be automatically restored (or generated if necessary) at the startup of the peer before an entry is accepted.

[0159] The approval node receives an entry from a client and approves the entry based on the simulated results. The approval node holds a smart contract that simulates the entry proposal. When the approval node approves an entry, the approval node creates an entry endorsement, and the entry endorsement is a signed response from the approval node to the client application, indicating the endorsement of the simulated entry. The method of approving an entry depends on the endorsement policy that can be specified within the smart contract executable code. An example of an endorsement policy is that "the majority of the approving peers must approve the entry". Different channels may have different endorsement policies. The approved entry is transferred by the client application to the ordering service.

[0160] The ordering service receives the approved entry, orders the entry within a block, and distributes the block to the commit peers. For example, the ordering service may start a new block when the threshold of the entry is reached, when the timer times out, or under another condition. In this example, the blockchain node is the commit peer that received the data block 682A to be stored on the blockchain. The ordering service can be composed of an orderer cluster. The ordering service does not process entries or smart contracts, nor does it maintain a shared ledger. Instead, the ordering service can receive the approved entry and specify the order in which the entry is committed to the distributed ledger. The architecture of the blockchain network can be designed such that a specific implementation of "ordering" (e.g., Solo, Kafka, BFT, etc.) is a pluggable component.

[0161] Entries are written to the distributed ledger in a consistent order. The order of the entries is established to ensure that updates to the state database are valid when the entry is committed to the network. Unlike a blockchain system for a cryptocurrency (e.g., Bitcoin) where ordering occurs by solving an encryption puzzle or by mining, in this example, the parties to the distributed ledger can select the ordering mechanism that best suits the network.

[0162] Referring to FIG. 6D, a block 682A (also referred to as a data block) stored on a blockchain and / or a distributed ledger may include a plurality of data segments such as block headers 684A - 684n, transaction-specific data 686A - 686n, and block metadata 688A - 688n. It should be understood that the various blocks and their contents, such as block 682A and its contents, are for illustrative purposes only and do not mean to limit the scope of the exemplary embodiments. In some cases, both block header 684A and block metadata 688A may be smaller than the transaction-specific data 686A that stores entry data, but this is not a requirement. Block 682A may store transaction information for N (e.g., 100, 500, 1000, 2000, 3000, etc.) entries within block data 690A - 690n. Block 682A may also include a link to a previous block (e.g., on the blockchain) within block header 684A. In particular, block header 684A may include the hash of the header of the previous block. Block header 684A may also include a unique block number, the hash of block data 690A of the current block 682A, and the like. The block number of block 682A is unique and can be assigned in an increasing / continuous order starting from zero. The first block in the blockchain may be referred to as a genesis block that includes information about the blockchain, its members, and the data stored therein.

[0163] The block data 690A can store the entry information of each entry recorded in the block. For example, the entry data includes the type, version, timestamp, channel ID of the distributed ledger, entry ID, epoch, visibility of the payload, path of the smart contract executable code (deployed and sent), name of the smart contract executable code, version of the smart contract executable code, input (smart contract executable code and functions), client (creator) identification information such as public key and certificate, client signature, endorser identification information, endorser signature, proposal hash, event of the smart contract executable code, response status, namespace, read set (list of keys and versions read by the entry, etc.), write set (list of keys and values, etc.), start key, end key, list of keys, query summary of the Merkle tree, and one or more of the same kind. The entry data can be stored for each of the N entries.

[0164] In some embodiments, the block data 690A may also store transaction-specific data 686A that adds additional information to the hash link chain of blocks within the blockchain. Thus, the data 686A can be stored in the immutable log of blocks in the distributed ledger. Some of the advantages of storing the data 686A are reflected in the various embodiments disclosed and depicted herein. The block metadata 688A may store multiple fields of metadata (e.g., as a byte array, etc.). The metadata fields may include a signature in block creation, a reference to the last configuration block, an entry filter that identifies valid and invalid entries within the block, the last offset of the ordering service that ordered the block, and the like. The signature, the last configuration block, and the orderer's metadata may be added by the ordering service. On the other hand, a committer of a block (such as a blockchain node) may add valid / invalid information based on an endorsement policy, verification of read / write sets, and the like. The entry filter may include a byte array of a size equal to the number of entries within the block data 610A and a verification code that identifies whether the entry was valid / invalid.

[0165] The other blocks 682B - 682n within the blockchain also have a header, a file, and a value. However, unlike the first block 682A, each of the headers 684A - 684n within the other blocks includes the hash value of the immediately preceding block. The hash value of the immediately preceding block may simply be the hash of the header of the previous block or the hash value of the entire previous block. By including the hash value of the previous block in each of the remaining blocks, tracing can be done block by block back from the Nth block to the genesis block (and the associated original file) as indicated by the arrow 692, establishing an auditable and immutable chain of custody.

[0166] The above-described embodiments can be implemented in hardware, a computer program executed by a processor, firmware, or a combination thereof. The computer program can be embodied on a computer-readable medium such as a storage medium. For example, the computer program can be present in a random access memory ("RAM"), flash memory, read-only memory ("ROM"), erasable programmable read-only memory ("EPROM"), electrically erasable programmable read-only memory ("EEPROM"), register, hard disk, removable disk, compact disc read-only memory ("CD-ROM"), or any other form of storage medium known in the art.

[0167] A preferred storage medium can be connected to the processor such that the processor can read information from and write information to the storage medium. Alternatively, the storage medium can be integrated with the processor. The processor and the storage medium can be present within an application-specific integrated circuit ("ASIC"). Alternatively, the processor and the storage medium can be present as separate components. For example, FIG. 7 shows an exemplary computer system architecture 700 that can represent any of the components described above or can be integrated with any of the components described above.

[0168] FIG. 7 is not intended to imply any limitation with respect to the use or functionality scope of the embodiments of the present application described herein. Nevertheless, the computing node 700 is implementable and / or capable of performing any of the above-described functions herein.

[0169] Within the computing node 700, there exists a computer system / server 702 that can operate in the environment or configuration of many other general-purpose or special-purpose computing systems. Examples of well-known computing systems, environments, and / or configurations that may be suitable for use with the computer system / server 702 include personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable household appliances, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments including any of the above systems or devices, and the like, but are not limited thereto.

[0170] The computer system / server 702 may be described in the general context of computer system-executable instructions, such as program modules, executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, etc. that perform particular tasks or implement particular abstract data types. The computer system / server 702 may be executed in a distributed cloud computing environment where tasks are performed by remote processing devices coupled through a communications network. In a distributed cloud computing environment, program modules may be located in both local computer system storage media including memory storage devices and remote computer system storage media.

[0171] As shown in FIG. 7, the computer system / server 702 within the cloud computing node 700 is shown in the form of a general-purpose computing device. The components of the computer system / server 702 may include, but are not limited to, one or more processors or processing units 704, a system memory 706, and a bus that couples various system components including the system memory 706 to the processor 704.

[0172] The bus represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of various bus architectures. By way of example and not limitation, such architectures include an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Extended ISA (EISA) bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.

[0173] The computer system / server 702 typically includes various computer system-readable media. Such media can be any available media accessible by the computer system / server 702, including both volatile and non-volatile media, removable and non-removable media. In one example, the system memory 706 implements the flow diagrams of other figures. The system memory 706 can include computer system-readable media in the form of volatile memory such as random access memory (RAM) 708 and / or cache memory 710. The computer system / server 702 can further include other removable / non-removable volatile / non-volatile computer system storage media. By way of mere example, the memory 706 can be provided for reading from and writing to a non-removable non-volatile magnetic medium (commonly referred to as a "hard drive" and not shown). Although not shown, a magnetic disk drive for reading from and writing to a removable non-volatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable non-volatile optical disk such as a CD-ROM, DVD-ROM, or other optical media can be provided. In such cases, each can be connected to the bus by one or more data media interfaces. As further depicted and described below, the memory 706 can include at least one program product having a set of program modules (e.g., at least one) configured to execute the functions of various embodiments of the present application.

[0174] A program / utility having a set (at least one) of program modules can be stored, by way of example and without limitation, in memory 706, as well as in an operating system, one or more application programs, other program modules, and program data. Each of the operating system, one or more application programs, other program modules, and program data, or some combination thereof, can include an implementation of a networking environment. The program modules generally execute the functions and / or methods of the various embodiments of the present application described herein.

[0175] As will be understood by those skilled in the art, aspects of the present application can be embodied as a system, a method, or a computer program product. Accordingly, aspects of the present application can take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, microcode, etc.), or an embodiment combining software aspects and hardware aspects that can generally all be referred to herein as a "circuit", "module", or "system". Further, aspects of the present application can take the form of a computer program product embodied in one or more computer-readable media having computer-readable program code embodied thereon.

[0176] The computer system / server 702 can also communicate with one or more external devices via one or more I / O devices 712 (such as I / O adapters) that may include a keyboard, a pointing device, a display, a voice recognition module, etc., one or more devices that enable a user to interact with the computer system / server 702, and / or any device that enables the computer system / server 702 to communicate with one or more other computing devices (such as a network card or a modem). Such communication can occur via the I / O interface of the device 712. Furthermore, the computer system / server 702 can communicate with one or more networks, such as a local area network (LAN), a general wide area network (WAN), and / or a public network (such as the Internet), via a network adapter. As depicted, the device 712 communicates with other components of the computer system / server 702 via a bus. Although not shown, it should be understood that other hardware and / or software components may be used in connection with the computer system / server 702. Examples include, but are not limited to, microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data storage systems.

[0177] Preferred embodiments of at least one of a system, a method, and a non-transitory computer-readable medium are shown in the accompanying drawings and described in the foregoing detailed description, but the present application is not limited to the disclosed embodiments, and it will be understood that many rearrangements, modifications, and substitutions are possible as defined by the following claims. For example, the functions of the systems in the various figures can be performed by one or more of the modules or components described herein, or in a distributed architecture, and can include a transmitter, a receiver, or a pair of both. For example, all or part of the functions performed by individual modules can be performed by one or more of these modules. Further, the functions described herein can be performed at various times in relation to various events internal or external to the modules or components. Also, the information transmitted between the various modules can be transmitted between the modules via at least one of a data network, the Internet, a voice network, an Internet protocol network, a wireless device, a wired device, and / or a plurality of protocols. Also, the messages transmitted or received by any of the modules can be transmitted or received directly and / or via one or more of the other modules.

[0178] Those skilled in the art will understand that "system" can be embodied as a personal computer, a server, a console, a personal digital assistant (PDA), a mobile phone, a tablet computing device, a smartphone, or any other suitable computing device, or a combination of devices. Presenting the functions described above as being performed by a "system" is not intended to limit the scope of the present application in any way, but rather to provide an example of one of many embodiments. In fact, the methods, systems, and devices disclosed herein can be implemented in a local and distributed form that is consistent with computing technology.

[0179] Note that some of the system functions described in this specification are presented as modules to more specifically emphasize the independence of their implementation modes. For example, a module can be implemented as a hardware circuit comprising a custom very large scale integration (VLSI) circuit or gate array, or off-the-shelf semiconductors such as logic chips, transistors, or other individual components. A module can also be implemented in a programmable hardware device such as a field programmable gate array, programmable array logic, programmable logic device, graphics processing unit, or the like.

[0180] A module can also be implemented at least partially in software for execution by various types of processors. For example, an identified unit of executable code can comprise one or more physical or logical blocks of computer instructions that can be organized, for example, as objects, procedures, or functions. Nevertheless, the executable files of the identified modules need not be physically located together and can comprise different instructions stored in different locations that, when logically combined, comprise the module and achieve the specified purpose for the module. Further, a module can be stored on a computer-readable medium, which can be, for example, a hard disk drive, flash device, random access memory (RAM), tape, or any other such medium used to store data.

[0181] In fact, the modules of executable code can be single instructions or multiple instructions, and further, can be distributed across several different memory devices among different programs in several different code segments. Similarly, the arithmetic data can be identified and shown within a module herein, embodied in any suitable form, and organized within any suitable type of data structure. The arithmetic data can be collected as a single data set, or distributed in different locations including different storage devices, and can exist at least partially as mere electronic signals on a system or network.

[0182] It will be readily understood that the components of the present application schematically described and shown in the figures herein can be arranged and designed in a wide variety of different configurations. Accordingly, the detailed description of the embodiments is not intended to limit the scope of the present application as claimed, but represents only selected embodiments of the present application.

[0183] Those skilled in the art will readily understand that the above can be performed in different orders of steps and / or with hardware elements of a different configuration than those disclosed. Accordingly, although the present application is described based on these preferred embodiments, it will be apparent to those skilled in the art that certain modifications, variations, and alternative structures are obvious.

[0184] Although preferred embodiments of the present application are described, the described embodiments are merely exemplary, and it should be understood that the scope of the present application should be determined only by the appended claims when considering all equivalents and modifications (e.g., protocols, hardware devices, software platforms, etc.) of the scope of the appended claims.

Claims

1. The vehicle's head unit receives a first set of probe frames from a first wireless device and a second set of probe frames from a second wireless device, wherein the first set of probe frames includes a first media access control (MAC) address identifying the first wireless device, and the second set of probe frames includes a second MAC address identifying the second wireless device. Pairing the first wireless device with the head unit, Transmitting audio from the first wireless device through the head unit, The system receives audio related to a call being made using the second wireless device via a microphone that communicates with the head unit, The audio is analyzed to determine the level of urgency in the speech, Depending on whether the level of urgency exceeds a threshold, the first wireless device is unpaired from the head unit, and the second wireless device is paired with the head unit. A method comprising transmitting audio from the second wireless device through the head unit.

2. Determining that at least one of the first wireless device or the second wireless device is in close proximity to the vehicle, and that at least one of the first wireless device or the second wireless device is not paired with the head unit, Sending a message to at least one of the first wireless device or the second wireless device indicating that pairing with the head unit is available, The method according to claim 1, including the method described in claim 1.

3. Determining that an incoming call received by the first wireless device or a call being made on the second wireless device is at least one of a multimedia call or a video call, During the pairing of the first wireless device or the second wireless device with the head unit, at least one of the calls or incoming calls is displayed on the vehicle's display. The method according to claim 1, including the method described in claim 1.

4. The method according to claim 1, wherein one of the first wireless device or the second wireless device is associated with the owner of the vehicle, and the other of the first wireless device or the second wireless device is associated with the owner of the vehicle.

5. Monitoring one or more voices from the first wireless device or voices associated with the call, If the number of occurrences of one or more confidential words exceeds a threshold, the head unit will unpair the first wireless device or the second wireless device. The method according to claim 1, including the method described in claim 1.

6. A system, Equipped with the vehicle's head unit processor, When the processor executes an instruction stored in the associated memory, Receiving a first set of probe frames from a first wireless device and a second set of probe frames from a second wireless device, wherein the first set of probe frames includes a first media access control (MAC) address identifying the first wireless device, and the second set of probe frames includes a second MAC address identifying the second wireless device. The first wireless device is paired with the head unit, The first wireless device transmits audio through the head unit, The microphone communicating with the head unit receives audio related to a call being made using the second wireless device. By analyzing the aforementioned audio, the level of urgency of the conversation in the audio is determined. Depending on whether the level of urgency exceeds the threshold, the first wireless device is unpaired from the head unit, and the second wireless device is paired with the head unit. The second wireless device transmits audio through the head unit. A system configured in such a way.

7. The processor is It is determined that at least one of the first wireless device or the second wireless device is in close proximity to the vehicle, and that at least one of the first wireless device or the second wireless device is not paired with the head unit. A message indicating that pairing with the head unit is available is sent to at least one of the first wireless device or the second wireless device. The system according to claim 6, configured as described above.

8. The processor is It is determined that the call received by the first wireless device or the call being made on the second wireless device is at least one of a multimedia call or a video call. When the first wireless device or the second wireless device is paired with the head unit, an incoming call is displayed on the vehicle's display. The system according to claim 6, configured as described above.

9. The system according to claim 6, wherein one of the first wireless device or the second wireless device is associated with the owner of the vehicle, and the other of the first wireless device or the second wireless device is associated with the owner of the vehicle.

10. The processor is The system monitors one or more audio signals from the first wireless device or associated with the call. If the number of occurrences of one or more confidential words exceeds a threshold, the head unit will unpair the first wireless device or the second wireless device. The system according to claim 6, configured to do so.

11. A computer-readable storage medium comprising instructions, wherein, when an instruction is executed by a processor, it provides to the processor: The vehicle's head unit receives a first set of probe frames from a first wireless device and a second set of probe frames from a second wireless device, wherein the first set of probe frames includes a first media access control (MAC) address identifying the first wireless device, and the second set of probe frames includes a second MAC address identifying the second wireless device. Pairing the first wireless device with the head unit, Transmitting audio from the first wireless device through the head unit, The system receives audio related to a call being made using the second wireless device via a microphone that communicates with the head unit, The audio is analyzed to determine the level of urgency in the speech, Depending on whether the level of urgency exceeds a threshold, the first wireless device is unpaired from the head unit, and the second wireless device is paired with the head unit. Transmitting audio from the second wireless device through the head unit, A computer-readable storage medium that enables execution of [something].

12. The instruction is given to the processor, Determining that at least one of the first wireless device or the second wireless device is in close proximity to the vehicle, and that at least one of the first wireless device or the second wireless device is not paired with the head unit, Sending a message to at least one of the first wireless device or the second wireless device indicating that pairing with the head unit is available, A computer-readable storage medium according to claim 11, which further enables the execution of the above.

13. The instruction is given to the processor, Determining that an incoming call received by the first wireless device or a call being made on the second wireless device is at least one of a multimedia call or a video call, During the pairing of the first wireless device or the second wireless device with the head unit, at least one of the calls or incoming calls is displayed on the vehicle's display. A computer-readable storage medium according to claim 11, which further enables the execution of the above.

14. The instruction is given to the processor, Monitoring one or more audio from the first wireless device or audio associated with the call, If the number of occurrences of one or more confidential words exceeds a threshold, the head unit will unpair the first wireless device or the second wireless device. A computer-readable storage medium according to claim 11, which further enables the execution of the above.