Wireless Multicasting for Remote Software Upload in Vehicles With Realistic Vehicle Movements

Future vehicles will have many features that include, but are not limited to, drive-by-wire, telematics, pre-crash warning, highway guidance and traffic alert systems. From time to time the vehicles will need to have their software modules updated for various reasons, such as to introduce new features in vehicles, the need to change the navigation map, the need to fine tune various features of the vehicles, etc. A remote software update has a number of advantages, such as it does not require consumers to take their vehicles to the dealers, and the dealers do not need to spend time on vehicles on an individual basis. Thus, remote software updates can save consumers' valuable time, as well as cost savings for the vehicle manufacturers. Since wireless links have limited bandwidth, uploading software in thousands of vehicles in a cost-effective and timely manner is a challenge. Another major issue related to the remote software update is the security of the update process. In another paper, we addressed the security issue of the update process. In this paper, we present a wireless multicasting technique for uploading software in vehicles. Since the servers that will be broadcasting the software are located in some permanent places, and the vehicles are located all over the country, the software upload process has to depend on an infrastructure such as the cellular infrastructure. We have developed simulation models to determine the performance of our proposed wireless multicasting technique for remote software uploads. We simulated hundreds of vehicles distributed around a city area. In the simulation model, we assumed realistic speeds for the vehicles depending upon where the vehicles were located. The vehicles transfer the software from a buffer to an electronic control unit (ECU) when their ignition is off. Our simulation results show that if the multicast technique is used instead of the unicast technique (one vehicle at a time), then the software can be updated in a very cost-effective manner. The paper will give a detailed description of our technique and provide numerous results of the simulations collected for various distributions of the systems and vehicles. INTRODUCTION Today, most of the electronic controller units (ECUs) have in-vehicle programming (IVP) capabilities. Some of the ECUs in the modern vehicle are IC (instrument cluster), ABS (antilock brake system), ECM (engine control module), PCM (power control module), BCM (body control module), HVAC, infotainment systems, radio, MP3 player, DVD, On Star, door module, seat module, airbag module, navigation module, etc. Sometimes software needs to be updated for various reasons, such as: calibration update, a problem with the existing software in modules, a recall of the vehicle due to software error, a new implementation, or the addition of new features. Some component suppliers only have a limited time to develop their products, and sometimes products go into production with very little testing. Such components are at high risk of unacceptable behavior later on, and it is very useful to have a cost-effective reprogramming system in place. Nowadays, if there is a need for a software update, a customer usually goes to the dealer, and the technician reprograms the module by physically plugging a programmer into the connector that has access to the intervehicele bus or busses such as CAN, LIN, J1850, UBP, SCP, etc. The programmer then uploads software into the vehicle’s modules. Technicians at a dealership upload new software into vehicles one vehicle at a time. If there is a vehicle recall due to software error, dealers would have to reprogram hundreds of thousands of vehicles. The process of uploading software into each vehicle is an inconvenience for both the dealers and the customers. The car manufacturers lose money and the customers lose confidence because of this process. For each module to be programmed, it will take time for setup and actual servicing, including taking the customer's time to make the appointment, physically bringing the vehicle to the dealer, and spending time while the vehicle is being serviced. In addition, it takes months to update the software in all the vehicles, and there is no guarantee that all customers will bring in their vehicles for service. Our motivation is to bring down the cost of updating modules by broadcasting the software that will be updated in particular modules in vehicles. Cellular towers are currently located in cities, towns and near major roads where the most vehicles are located. Car manufacturers can jointly work with major cellular companies to have some channels reserved for their needs, or lease the channels when needed. Software can be updated in vehicles by using either a unicast or a multicast process. In a unicast process, the vehicles will receive software on an individual basis, but in a multicast process, all vehicles within the range of a tower will receive software in parallel. However, updating software using the multicast process will need significantly less bandwidth than that needed by the unicast process. Security of the transferred software is an important aspect of multicast programming. A vehicle network must have a cost-effective security system. The desired level of security needs to have a good balance of cost and extensiveness [3]. We will mainly focus on the wireless update process and leave security issues for another paper. This paper presents simulation models for performing remote software updates in vehicles. The simulation results show that updating software using the multicast process is very cost-effective compared to using the unicast process.