IP Library › Granted Patent US 12,242,843
Granted Patent B2
US 12,242,843 · App. 18/540,712 · Granted Mar 4, 2025

Management of transport software updates

Inventors: Louis Brugman (Frisco, TX); Devang H. Parekh (Dallas, TX); Wilson-Boon Siang Khoo (Allen, TX)
Assignee: TOYOTA MOTOR NORTH AMERICA, INC.
G06F8/65G06F8/70G06F9/44589H04L67/12H04L67/34
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,242,843
App. No.
18/540,712
Granted
Mar 4, 2025
Kind
B2
Abstract

An example operation may include one or more of receiving a software update at a transport of a subset of transports, validating the software update based on one or more of: a period of time when the software update is in use, and a number of utilizations of the software update by the subset of the transports, propagating the software update based on the validating, to a further subset of transports, wherein the further subset of the transports is larger than the subset of the transports.

Claims (55)

1. A method, comprising:

identifying, by a master transport, that a first transport and a second transport are within a determined distance of one another; and

sending, by the master transport, an instruction to the first transport to send a first portion of a software update to the second transport to create a complete software update at the second transport; and

sending, by the master transport, an instruction to the second transport to send the complete software update to the first transport.

2. The method of claim 1 , further comprising:

performing, by at least one of the first transport and the second transport, an operation to validate the complete software update based on a period of time that the complete software update is used by the at least one of the first transport or the second transport.

3. The method of claim 2 , further comprising:

in response to successfully validating the complete software update, propagating, by the at least one of the first transport and the second transport, the complete software update to another transport.

4. The method of claim 2 , wherein the performing of the operation to validate the complete software update further comprises:

performing, by the least one of the first transport and the second transport, a first operation to validate the complete software update in a first environment; and

in response to successfully validating the complete software update in the first environment, the method further comprises:

performing, by the least one of the first transport and the second transport, a second operation to validate the complete software update in a second environment that is different than the first environment.

5. The method of claim 2 , further comprising:

in response to a failure in validating the complete software update:

alerting any transport having the complete software update of the failure; and

reverting the any transport to a previous software update.

6. The method of claim 1 , wherein the master transport, the first transport, and the second transport are nodes in a blockchain network.

7. The method of claim 6 , comprising:

executing a smart contract of the blockchain network to validate the complete software update and to propagate the complete software update through a plurality of the transports.

8. A system, comprising:

a master transport comprising a processor that, when executing one or more instructions stored in an associated memory, is configured to:

identify that a first transport and a second transport are within a determined distance of one another; and

send an instruction to the first transport to send a first portion of a software update to the second transport to create a complete software update at the second transport; and

send an instruction to the second transport to send the complete software update to the first transport.

9. The system of claim 8 , wherein at least one of the first transport and the second transport are configured to:

perform an operation to validate the complete software update based on a period of time that the complete software update is used by the at least one of the first transport or the second transport.

10. The system of claim 9 , wherein the at least one of the first transport and the second transport is further configured to:

in response to a successful validation of the complete software update, propagate the complete software update to another transport.

11. The system of claim 9 , wherein when the at least one of the first transport and the second transport is configured to perform the operation to validate the complete software update, the at least one of the first transport and the second transport is further configured to:

perform a first operation to validate the complete software update in a first environment; and

in response to a successful validation of the complete software update in the first environment, the at least one of the first transport and the second transport is further configured to:

perform a second operation to validate the complete software update in a second environment that is different than the first environment.

12. The system of claim 9 , wherein in response to a failure to validate the complete software update, one or more of the processor and the least one of the first transport and the second transport is further configured to:

alert any transport having the complete software update of the failure; and

revert the any transport to a previous software update.

13. The system of claim 8 , wherein the master transport, the first transport, and the second transport are nodes in a blockchain network.

14. The system of claim 13 , wherein the least one of the first transport and the second transport are further configured to:

execute a smart contract of the blockchain network to validate the complete software update and to propagate the complete software update through a plurality of the transports.

15. A non-transitory computer-readable medium comprising one or more instructions that, when executed by one or more processors, cause the one or more processors to perform:

identifying, by a master transport, that a first transport and a second transport are within a determined distance of one another; and

sending, by the master transport, an instruction to the first transport to send a first portion of a software update to the second transport to create a complete software update at the second transport; and

sending, by the master transport, an instruction to the second transport to send the complete software update to the first transport.

16. The non-transitory computer-readable medium of claim 15 , wherein the one or more instructions further cause the one or more processors to perform:

executing, by at least one of the first transport and the second transport, an operation to validate the complete software update based on a period of time that the complete software update is used by the at least one of the first transport or the second transport.

17. The non-transitory computer-readable medium of claim 16 , wherein the executing the operation to validate the complete software update further comprises:

performing, by the least one of the first transport and the second transport, a first operation to validate the complete software update in a first environment; and

in response to successfully validating the complete software update in the first environment, the method further comprises:

performing, by the least one of the first transport and the second transport, a second operation to validate the complete software update in a second environment that is different than the first environment.

18. The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions further cause the processor to perform:

in response to a failure in validating the complete software update:

alerting any transport having the complete software update of the failure; and

reverting the any transport to a previous software update.

19. The non-transitory computer-readable medium of claim 15 , wherein the master transport, the first transport, and the second transport are nodes in a blockchain network.

20. The non-transitory computer-readable medium of claim 19 , wherein the one or more instructions further cause the one or more processors to perform:

executing execute a smart contract of the blockchain network to validate the complete software update and to propagate the complete software update through a plurality of the transports.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2023
From: BRUGMAN, LOUIS; PAREKH, DEVANG H.; KHOO, WILSON-BOON SIANG
To: TOYOTA MOTOR NORTH AMERICA, INC.
Reel/Frame 065877/0188 →
Continuity (3)
Continuation 17506755 · Oct 21, 2021
Continuation 16597770 · Oct 9, 2019
Related Publication 20240111517A1 · Apr 4, 2024
References Cited (100)
US 7222187B2 · Yeager et al. · 2007 [cited by applicant]
US 7360208B2 · Joshi et al. · 2008 [cited by applicant]
US 7555551B1 · McCorkendale et al. · 2009 [cited by applicant]
US 7584470B2 · Barker et al. · 2009 [cited by applicant]
US 7886200B1 · Hernacki et al. · 2011 [cited by applicant]
US 8285883B2 · Bishop · 2012 [cited by applicant]
US 8751100B2 · Johnson · 2014 [cited by examiner]
US 9083425B1 · Frolov et al. · 2015 [cited by applicant]
US 9443358B2 · Breed · 2016 [cited by applicant]
US 9715378B2 · Dickerson et al. · 2017 [cited by applicant]
US 9753713B2 · Mani et al. · 2017 [cited by applicant]
US 9985718B2 · Frolov et al. · 2018 [cited by applicant]
US 10031790B1 · Fuchs et al. · 2018 [cited by applicant]
US 10050760B2 · Ross et al. · 2018 [cited by applicant]
US 10157050B2 · Kotani et al. · 2018 [cited by applicant]
US 10240935B2 · Breed · 2019 [cited by applicant]
US 10261777B2 · Fox · 2019 [cited by applicant]
US 10339034B2 · Armitage · 2019 [cited by applicant]
US 10373129B1 · James et al. · 2019 [cited by applicant]
US 10447483B1 · Su · 2019 [cited by examiner]
US 10572244B1 · Michel · 2020 [cited by examiner]
US 10666767B1 · Floyd et al. · 2020 [cited by applicant]
US 11055088B2 · Fox · 2021 [cited by examiner]
US 11144296B2 · Rodriguez Bravo · 2021 [cited by examiner]
US 11301347B2 · Bujan · 2022 [cited by applicant]
US 11669323B2 · Harata · 2023 [cited by examiner]
US 11868757B2 · Brugman · 2024 [cited by examiner]
US 20020091988A1 · Murphy · 2002 [cited by examiner]
US 20050044214A1 · Schwertfuehrer · 2005 [cited by examiner]
US 20050050538A1 · Kawamata et al. · 2005 [cited by applicant]
US 20050283759A1 · Peteanu · 2005 [cited by examiner]
US 20060106806A1 · Sperling · 2006 [cited by examiner]
US 20090100128A1 · Czechowski et al. · 2009 [cited by applicant]
US 20090119657A1 · Link · 2009 [cited by applicant]
US 20120167073A1 · Stevens · 2012 [cited by applicant]
US 20130139140A1 · Rao · 2013 [cited by examiner]
US 20140176301A1 · Banares et al. · 2014 [cited by applicant]
US 20140306834A1 · Ricci · 2014 [cited by applicant]
US 20150339114A1 · Rockwell et al. · 2015 [cited by applicant]
US 20160013934A1 · Smereka et al. · 2016 [cited by applicant]
US 20160259637A1 · Kumar · 2016 [cited by applicant]
US 20160294614A1 · Searle et al. · 2016 [cited by applicant]
US 20170060559A1 · Ye · 2017 [cited by examiner]
US 20170075677A1 · Gross et al. · 2017 [cited by applicant]
US 20170118573A1 · Yae · 2017 [cited by examiner]
US 20170195459A1 · e Costa · 2017 [cited by examiner]
US 20180005254A1 · Bai · 2018 [cited by examiner]
US 20180018723A1 · Nagla et al. · 2018 [cited by applicant]
US 20180052681A1 · Pereira Cabral · 2018 [cited by examiner]
US 20180099564A1 · Koebler et al. · 2018 [cited by applicant]
US 20180176229A1 · Bathen et al. · 2018 [cited by applicant]
US 20180260125A1 · Botes et al. · 2018 [cited by applicant]
US 20180285088A1 · Lancioni et al. · 2018 [cited by applicant]
US 20180341571A1 · Kislovskiy · 2018 [cited by examiner]
US 20180365131A1 · Armitage · 2018 [cited by applicant]
US 20190146778A1 · Smith et al. · 2019 [cited by applicant]
US 20190265965A1 · Acharya · 2019 [cited by examiner]
US 20200029209A1 · Nölscher et al. · 2020 [cited by applicant]
US 20200042012A1 · Zander · 2020 [cited by applicant]
US 20200068365A1 · Esselink · 2020 [cited by examiner]
US 20200073651A1 · Bravo et al. · 2020 [cited by applicant]
US 20200081699A1 · Majed et al. · 2020 [cited by applicant]
US 20200151817A1 · Mahfouz · 2020 [cited by applicant]
US 20200242464A1 · Hirai · 2020 [cited by examiner]
US 20200334032A1 · Smith · 2020 [cited by applicant]
US 20200348923A1 · Mezaael et al. · 2020 [cited by applicant]
US 20200387367A1 · Eklund · 2020 [cited by examiner]
US 20210157573A1 · Abe · 2021 [cited by examiner]
CA 2823070C · 2016 [cited by applicant]
CN 105718293A · 2016 [cited by applicant]
DE 102005021103A1 · 2005 [cited by applicant]
DE 112012007197 · 2015 [cited by applicant]
DE 102017217668A1 · 2019 [cited by applicant]
EP 2863303A1 · 2015 [cited by applicant]
EP 2425333B1 · 2017 [cited by applicant]
JP 06019699U · 1994 [cited by applicant]
JP 2004199493A · 2004 [cited by applicant]
JP 2012133789A · 2012 [cited by applicant]
JP 2019101706A · 2019 [cited by applicant]
KR 101462551B1 · 2014 [cited by applicant]
WO 2011135629A1 · 2011 [cited by applicant]
WO 2012021903A1 · 2012 [cited by applicant]
WO 2014088567A1 · 2014 [cited by applicant]
WO 2019021064A1 · 2019 [cited by applicant]
Steger, “SecUp: Secure and Efficient Wireless Software Updates for Vehicles”, 2016, IEEE (Year: 2016). [cited by examiner]
Baza et al.; “Blockchain-Based Firmware Update Scheme Tailored for Autonomous Vehicles.” 2019 IEEE Wireless Communications and Networking Conference (WCNC); Apr. 15, 2019 (Year: 2019). [cited by applicant]
Christidis et al.; “Blockchains and Smart Contracts for the Internet of Things”; IEEE Access; 2016 (Year: 2016). [cited by applicant]
Cindy Sridharan; “Testing in Production, the Safe Way”; Medium.com website [full url in ref.];Mar. 25, 2018 (Year: 2018). [cited by applicant]
Dorri et al.; “BlockChain: A Distributed Solution to Automotive Security and Privacy”; IEEE Communications Magazine (v. 55, No. 12 ) (pp. 119-125); Dec. 2017 (Year: 2017). [cited by applicant]
FDA, “General Principles of Software Validation; Final Guidance for Industry and FDA Staff”, 2002, Published by FDA (Year: 2002). [cited by applicant]
Feng et al.; “An Augmented Reality Environment for Connected and Automated Vehicle Testing and Evaluation”; 2018 IEEE Intelligent Vehicles Symposium (pp. 1549-1554); Jun. 26-30, 2018 (Year: 2018). [cited by applicant]
Flaming, “9 Reliability-Based Best Practices for Canary Deploys”; NewRelic.com website [full url in ref.]; Mar. 4, 2019 (Year: 2019). [cited by applicant]
Jankowski, “Strategic distribution of seeds to support diffusion in complex network”, 2018, Published at https://journals.plos.org/ plosone/article?id=10.1371/journal.pone.0205130 (Year: 2018). [cited by applicant]
Lee, J.; “Patch Transporter: Incentivized, Decentralized Software Patch System for WSN and IoT Environments”; Sensors (Basel); Feb. 13, 2018 (Year: 2018). [cited by applicant]
Notice of Reasons for Rejection issued in JP Application No. 2022-515514, mailed on May 30, 2023. [cited by applicant]
Simoni, “RankSlicing: A decentralized protocol for supernode selection”, 2014, IEEE (Year: 2014). [cited by applicant]
Notice of Allowance issued in the U.S. Appl. No. 17/506,755, mailed on Sep. 27, 2023. [cited by applicant]
Advisory Action issued in the U.S. Appl. No. 17/506,755, mailed on Jul. 21, 2023. [cited by applicant]
Final Office Action issued in the U.S. Appl. No. 17/506,755, mailed on May 4, 2023. [cited by applicant]
Non Final Office Action issued in the U.S. Appl. No. 17/506,755, mailed on Feb. 8, 2023. [cited by applicant]