an automotive storage and playback device and method for using the same are described . in the following description , for purposes of explanation , numerous specific details are set forth in order to provide a thorough understanding of the present invention . it will be apparent , however , to one skilled in the art that the present invention can be practiced without these specific details . in other instances , well - known structures and devices are shown in block diagram form in order to avoid obscuring the present invention . a set of definitions is provided below to clarify the present invention . the term “ content ” is used to refer to digital audio , video , images , or interactive multimedia . a network is defined as two or more computer devices of any type , such as a personal computer ( pc ), network appliance , or pda , connected together by a digital communication link . a device that has a communication link to the network is often referred to as a node . a local area network ( lan ) is defined as a plurality of nodes connected by the network that are in physically close proximity . the term gateway , used interchangeably with broadband gateway , is defined as an integral modem and router , and may include hub functionality . the modem ( modulator / demodulator ) function is used to change voltage fluctuations on an input carrier line ( a dsl line input or a cable tv input ) into digital data routers are devices that connect one distinct network to another by passing only certain ip addresses that are targeted for specific networks . hubs allow one network signal input to be split and thus sent to many devices . a storage gateway or storage gateway system combines mass storage capability with a gateway . for example , a personal computer ( pc ) connected to a broadband cable modem gateway is considered a storage gateway system a digital cable set - top box with docsis cable modem and a hard disk drive is also considered to be a storage gateway system . a codec , an acronym for “ compression / decompression ”, is a software algorithm function implemented in software or software and hardware for compressing and decompressing audio , graphic , or moving picture data . for example , mp3 is a well - known codec format and is a naming convention for mpeg layer 3 , which is the digital audio layer in an mpeg encoded video data file . subscription is defined to mean a content service whereby new content is periodically provided based on a content selection parameter , such as a particular artist , editorialist , or genre . subscription services may be paid for by the user or can be ad - supported ( free to the user ). an example of a subscription service is a audio sports news file that is downloaded to a user &# 39 ; s pc every day . the basic function of the present invention is to provide a system for delivering digital file - based content to an automobile for playback by a user , and involves wireless communication and information ( content ) transfer between the internet and home pc 18 , and the local area network ( lan )- based automotive storage and playback system 10 . the content may be transferred automatically and periodically , and / or under the direct control of the user . the system includes a broadband connection connected to a pc 18 with a wireless lan access point 30 , located in a residence or at a specific fixed site . there is a lan - based automotive storage and playback system 10 located in the automobile that includes a computer system with a hard disk drive and a wireless lan transceiver . anytime the automobile is within range of the wireless lan access point 30 , the computer system in the automobile becomes a node on the wireless lan , and content maybe transferred from the internet and home pc 18 . the content may be stored in the hard disk drive in the automobile . in terms of its placement into an automobile , in one embodiment , the automobile storage and playback system 10 is schematically similar to systems incorporating multi - cd changers that are typically located in the trunk . one embodiment of the present invention will be described first in terms of the hardware components of the system , then the software components . finally , the operation of the system will be described . alternative embodiments will also be described . referring now to fig1 , a schematic of the lan - based automotive content delivery system is shown . in one embodiment , a pc 18 located in the home is connected to the internet via a broadband connection 38 using a docsis cable modem 22 , and comprises a storage gateway system pc 18 includes a hard disk drive 26 and a wireless lan access point 30 , which is connected to pc 18 via a usb connection . in one embodiment , wireless lan technology based on the ieee 802 . 11b specification is used . the wireless lan 30 system described uses socket - based communication protocols , specifically the tcp / ip standard . referring now to fig2 , a schematic of the automotive storage and playback system 10 is shown super - imposed on an automobile 42 . in fig2 , a dashed line denotes electrical lines that are connectorized at dock 126 . in one embodiment , the automobile storage and playback system 10 is integrated into an automobile 42 with an existing conventional car stereo 46 . automobile storage and playback system 10 includes a storage and datalink unit 14 , and a user interface control module 50 . fig3 shows a block diagram of the components of the automotive storage and playback system 10 . storage and datalink unit 14 includes a microprocessor 82 , flash memory 86 , dynamic random access memory ( dram ) 90 , a power conversion and battery charging sub - system 94 , a digital - to - analog converter ( dac ) 98 , a pc card host controller 102 , a pc card connector 110 , a usb host controller 106 and a 10 gigabyte hard disk drive 112 , and a rechargeable internal battery 122 . a wireless lan pc card 114 is included and located in the pc card connector 110 slot . the electronic components and sub - systems of the storage and datalink unit 14 are functionally connected via a printed circuit board 118 . storage and datalink unit 14 , shown in fig4 and fig5 , may be removably attached to automobile 42 by being placed in a dock 126 that is permanently installed in automobile 42 . the dock 126 includes a cavity for accepting storage and datalink unit 14 . note that in fig5 that internal battery 122 has been removed so as not to obscure the other components . in one embodiment , storage and datalink unit 14 is mounted in the trunk . in other embodiments , storage and datalink unit 14 is mounted underneath a seat , or in the glove compartment . in one embodiment , storage and datalink unit 14 may be locked onto dock 126 using two attachment latches 130 and 134 rotatably attached on either side of dock 126 . fig6 and 7 show a detail view of how latches 130 and 134 function . latch 130 and 134 includes a latch cam 138 that is a cam lobe positioned such that it contacts the dock 126 and tightens as latch 130 rotates toward storage and datalink unit 14 . latch 130 slightly untightens as latch 130 moves over - center and the latch catch 140 is located in the latch slot 152 on the enclosure 150 . this overcenter action insures that latches 130 and 134 stay in the locked position . to remove storage and datalink unit 14 from dock 126 , the user rotates latches 130 and 134 away from storage and datalink unit 14 , and lifts storage and datalink unit 14 out of dock 126 . the bottom cap 146 of storage and datalink unit 14 includes a data connector and a power connector that connect to correspondingly placed connectors on dock 126 . dock 126 connectors functionally connect storage and datalink unit 14 to unswitched and switched car battery power 278 and 282 , connect analog audio signal 286 output to the car stereo 46 head unit , and connect storage and datalink unit 14 to user interface control module 50 in the passenger compartment via a serial connection 290 . a coaxial connector a 190 and connector b 194 is also included for connecting wireless lan transceiver 114 to an antenna extension sub - system 178 that is also located in automobile 42 . storage and datalink unit 14 enclosure 150 , top cap 142 , and bottom cap 146 , consist of injection - molded plastic . fig8 shows user interface control module 50 that includes a microprocessor , lcd with integral backlight 52 , and buttons for allowing the user to control the system , including the following buttons : power on / off 74 , play / pause 54 , stop 58 , forward track 62 , and backward track 66 . a four - way navigation toggle 70 is also provided , as well as a tag button 78 . the electronic components of user interface control module 50 are functionally connected via a printed circuit board . user interface control module 50 is housed in an injection - molded plastic enclosure . fig . 4 shows that the storage and datalink unit 14 includes a handle 154 integral to the top cap 142 to use for carrying the storage and datalink unit 14 . fig5 shows that hard disk drive 112 is mounted in storage and datalink unit 14 enclosure 150 with a vibration dampening subsystem so that vibrations and impulse loads are not transferred from the automobile 42 motion to the platters and heads inside hard disk drive 112 . the vibration dampening subsystem includes of two elastomeric suspension caps 158 , one each attached to the top and bottom of hard disk drive 112 . the elastomeric suspension caps 158 have rectilinear concavities that fit over the ends if hard disk drive 112 . additionally , four screws are placed through holes in the elastomeric suspension caps 158 that correspond with mounting screw holes on hard disk drive 112 , to further secure elastomeric suspension caps 158 to the hard disk drive 112 . each elastomeric suspension cap 158 includes two suspension flexures 162 that are narrow sections of the elastomeric material that extend laterally away from hard disk drive 112 . these suspension flexures 162 elastically deform during shock loads . fig5 also shows that suspension flexures 162 have integral suspension mounts 166 that attach to suspension pins 170 integral to enclosure 150 . the geometry of elastomeric suspension caps 158 and flexures 162 are such that the storage and datalink unit 14 enclosure 150 can move relative to hard disk drive 112 in multiples axes of motion during impulse and vibration loads , to absorb the shock of automobile 42 motions . however , hard disk drive 112 cannot come into contact with any aspect of enclosure 150 or other components other than elastomeric suspension caps 158 . a flexible ribbon cable ( not shown ) electrically connects hard disk drive 112 to the computer sub - system . elastomeric suspension caps 158 are homogeneous parts molded out of dynaflex thermoplastic elastomer , provided by gls corporation , of illinois . in on embodiment , resistance temperature device ( rtd ) temperature sensor 174 , shown in fig5 is conductively attached to hard disk drive 112 with conductive epoxy , and is electrically connected to microprocessor 82 . in one embodiment , as shown in fig9 , an antenna extension sub - system 178 is used to insure that a dipole antenna 182 is positioned to receive a clear signal from wireless lan access point 30 . dipole antenna 182 at the end of a shielded coaxial wire 186 is positioned on the top surface of the rear seat deck in automobile 42 . in another embodiment , antenna 182 is mounted behind a plastic bumper cover . a length of shielded coaxial cable 186 extends into the trunk where it is terminated with one side of a coaxial connector a 190 at dock 126 . a printed circuit board antenna 198 is fixed in storage and datalink unit 14 enclosure 150 in close proximity to wireless lan pc card transceiver 114 antenna 116 . a shielded coaxial cable 187 is connected to printed circuit board antenna 198 and terminates with a coaxial connector b 194 that mates to coaxial connector a 190 when storage and datalink unit 14 is placed into dock 126 . in one embodiment , the output of dac 98 is plugged directly into line level inputs in the existing car stereo 46 system head unit . dac 98 converts decompressed digital audio to an analog signal at line levels . in this case the existing car stereo 46 system must provide the ability to switch to an auxiliary source . in another embodiment , shown schematically in fig1 , the analog audio signal 286 that is output from storage and datalink unit 14 is input into the automobile audio system by being plugged into an fm antenna tap 206 . the analog output from dac is modulated by an fm modulator 202 . to use this set - up , the user must tune the existing car stereo to an fm frequency at the low end of the fm band , such as 87 . 5 , and the audio content is played on the existing car stereo 46 system this type of connection into existing car stereos 46 is commonly found in after - market cd changers . referring now to fig1 , a system control application 210 runs on pc 18 and is comprised of two sub - applications , the core module 214 and the graphical user interface ( gui ) module 218 . core module 214 manages the basic communication between internet and pc 18 , and pc 18 and between automotive storage and playback system 10 . in one embodiment , core module 214 is implemented as a multi - threaded java application running on a pc 18 . a windows version of a java virtual machine ( jvm ) resides and runs on pc 18 and interprets core module 214 instructions for the windows operating system . core module 214 includes the portion of the system control application 210 that acts on content and data 234 from internet 222 and also processes communications with automotive storage and playback system 10 , providing , but not limited to , the following functions : a . accessing content on internet at a prescribed location as determined by user inputs into the gui content editors such as web - based content selection guide 246 , b . communicating with gui module 218 , and c . accessing and communicating with automotive storage and playback system 10 ; 2 . managing the caching ( local storage ) of content from internet or otherwise digital content files 234 ; 3 . reading from and writing to content database 226 . 4 . transfer of content files 234 from internet 222 to lan - based automotive system : a . managing and routing transfers of digital content files 234 from internet 222 to automotive storage and playback system 10 , and b . managing and routing transfers of cached digital content files 234 on pc 18 to automotive storage and playback system 10 ; 5 . scheduling — time - based automation of the accessing , caching , and transfer of content 234 from internet 222 at times prescribed by the user or at times derived by direction given by rules through the gui content editors such as web - based content selection guide 246 . the scheduling function accesses time and date inputs associated with actions stored in content database 226 by gui module 218 . the scheduling function periodically compares these time and date entries with the current state of pc 18 internal timer . when there is a match , the action is taken ; 6 . network address translation ( nat ) and routing — digital file 234 transfers that occur directly from the internet 222 to automotive storage and playback system 10 require a real time connection to internet 222 . 7 . automotive storage and playback system 10 application / software delivery — automotive storage and playback system 10 control firmware 270 updates can be stored at pc 18 and delivered to automotive storage and playback system 10 on an as - needed basis . for example , a new or updated codec 274 ( sent as a blob — binary large object ) can be delivered to automotive storage and playback system 10 via wireless lan 34 and installed into memory . other types of applications can be delivered to automotive storage and playback system 10 . 8 . transcoding — certain types of content 234 will be received at pc 18 , decoded , re - encoded using a different codec at pc 18 , and then transferred to automotive storage and playback system 10 ; 9 . auto - discovery — automotive storage and playback system 10 will automatically authenticate on wireless lan 34 when in range . core module 214 listens for periodic broadcasts from automobile storage and playback system 10 . 10 . message transactions — text or other content or data 234 from the internet 222 can be transferred to automotive storage and playback system 10 and presented on lcd 52 ; 11 . tag servicing — tagging is described in greater detail later in this document . tag servicing includes a function where core module 214 periodically accesses a specific location on internet 222 to acquire and store an accurate time and date ; 12 . synchronization — data , such as user data and related information , such as an accurate time and date , must be synchronized across the three platforms ( web , automotive storage and playback system 10 , and pc 18 ). core module 214 time and date data is thus synchronized with an external ( absolute ) standard . gui module 218 is implemented as a win 32 application and resides and runs on pc 18 . gui module 218 is used by end users to organize and manage digital content 234 and content preferences . user content selections made using gui module 218 are stored in a local content database 226 by core module 214 . based on user inputs into gui module 218 , core module 214 modifies content database 226 using methods called over http and expressed with xml grammar . two examples of gui module 218 functions are provided below to show how system control application 210 functions to deliver content to automotive storage and playback system 10 . an audio playlist editor 238 is described that allows users to organize their local audio content 234 ; and a web - based content selection guide 246 is described that allow users to select digital subscription content services . gui module 218 includes segments of the software application that run the gui , including , but not limited to , the following functions : 1 . displaying gui elements on a computer display for view by the end user ; 2 . acknowledging user responses made via mouse and keyboard , or other pointing and interaction devices ; 3 . allowing for manipulation of the gui elements such as : a . drag and drop of content objects , b . gui button activations , c . text entry , and d . pull down menu and menu selections ; e . initiation and operation of dialog boxes 4 . communication between gui module 218 and core module 214 . the selections and control manipulations made by the end user are communicated to core module 214 where they can be acted upon . system control application 210 is designed to function with a number of instances of core module 214 , content database , and gui module 218 running concurrently on multiple pc 18 s and or storage gateways , all connected by the same lan . it is anticipated that users will own and operate multiple pcs 18 in a single home for example , with different content cached on each pc 18 . in another embodiment , a digital set - top box with a docsis cable modem 22 and a wireless lan transceiver could include an instance of core module 214 and content database 226 in addition to the instance on pc 18 . in one embodiment , the focus will be on a singular gui module 218 located and executed on a pc 18 . fig1 shows the audio playlist editor 238 as it appears to the user on pc desktop 236 , and shows that there are three levels of organization : channels 250 , playlists 254 , and tracks 258 . channels 250 are lists of playlists 254 , and playlists 254 are lists of tracks 258 . a track 258 ( audio file name ) shown in audio playlist editor 238 is a gui element that signifies a file and a path designation on hard disk drive 26 on pc 18 , and a listing in content database 226 . using the audio playlist editor 238 , users can create , delete , and rearrange channels 250 and playlists 254 , can rearrange track 258 orders , and can add tracks 258 to playlists 254 by navigating to the location of the local digital audio files 234 using a standard windows dialog box . tracks 258 can also be added to playlists 254 by dragging and dropping digital audio file 234 icons from windows onto the track field of the audio playlist editor 238 . the user may obtain digital audio files 234 that are stored on pc 18 hard disk drive 26 , such as mp3 files , in a variety of ways , and organize these files , otherwise known as tracks 258 , into channels 250 and playlists 254 using an audio playlist editor 238 aspect of gui module 218 , as described above and shown in fig8 . audio device playlist editor also includes the ability to select specific channels 250 or playlists 254 to be replicated on automobile storage and playback system 10 . as shown in fig1 , this function is accessed by right - clicking on a channel 250 or playlist 254 name and selecting “ sync with auto ”. a right - click pull down menu 262 is shown in fig1 . for example , a user can make a channel 250 entitled “ mycar ” and include several playlists 254 each including several songs , and then make the “ sync with auto ” selection . subsequently , only the “ mycar ” channel 250 and all child playlists 254 and tracks 258 win be wirelessly synchronized into automobile storage and playback system 10 . the right - click menu on each channel 250 and playlist 254 also includes a “ sync now ” selection , which initiates the synchronization and subsequent file transfer process immediately ( assuming that automobile 42 is within range of wireless lan 34 ). additionally , a selection is included under the “ options ” menu to automatically synchronize all channels 250 and playlists 254 with locally cached content 234 . if selection to synchronize all channels 250 is not selected in the “ options ” menu , then no files are transferred to automobile storage and playback system 10 . a user may also make selections for receiving periodic content delivered to automotive storage and playback system 10 using a web - based content selection guide 246 aspect of gui module 218 , as described above and shown in fig1 . selections made using the web - based content guide 246 for periodic content services require system control application 210 to periodically access internet 222 servers where content is located and download and cache content locally on pc 18 hard disk drive 26 . these content selections made by user using aspects of gui module 218 are recorded in content database 226 by core module 214 . in one embodiment , the web - based content selection guide 246 simplifies and facilitate the discovery and selection of subscription content services on the internet 222 for periodic distribution into automobile storage and playback system 10 . referring now to fig1 , web - based content subject guide 242 is html - formatted web pages accessed through a mini - browser , and shows a range of content subjects 248 . selecting “ npr ” on web - based content subject guide 242 results in the content selection web page 246 shown in fig1 . a content selection 264 with a check box 268 is shown . selections made using this interface result in the creation of pointers to locations of digital audio files 234 on internet 222 servers . these files are periodically accessed and downloaded to pc 18 hard disk drive 26 for subsequent transfer to automobile storage and playback system 10 . the periodicity at which subscription content files 234 are downloaded are based on rules provided by each content provider . for example , some content files 234 are refreshed on the content provider &# 39 ; s internet 222 server on a daily basis at 1 : 00 am . in this case , one rule for accessing the server and downloading the content file 234 is that it must happen after 1 : 00 am . the pointers to internet 222 content files 234 as well as the rules governing the downloading of files 234 are stored in content database 226 . web - based content guide capability may include , but is not limited to the following functionality : 1 . content type — as per fig1 , an interface is provided that begins with general content subject 248 links , and as the user makes selections , the content subjects 248 become more specific and culminate in the presentation to the user of content selections 264 . 2 . content selection 264 — as per fig1 , a user may subscribe to a daily version of a radio show . when box 268 is checked , a pointer and rules for downloading the digital audio file 234 are transferred from an internet 222 server to content database 226 ( by core module 214 ). subsequently , the latest version of the radio show digital audio file 234 is automatically transferred from a content provider &# 39 ; s internet 222 server to pc 18 , and from pc 18 to automotive storage and playback system 10 , by core module 214 according to the download rules . 3 . a system to retain user preference information for the purpose of customizing the web - based content guides according to the users preferences . storage and datalink unit 14 includes an operating system that is linux in one embodiment . referring again to fig1 , control firmware 270 is present on storage and datalink unit 14 . a content database is also stored on storage and datalink unit 14 . some functions of control firmware 270 include , but are not limited to the following : 1 . operate wireless lan 34 broadcast duty - cycle to auto - discover automobile storage and playback system 10 . 2 . communicate with pc 18 via wireless lan 34 — includes management of security code that is used to encrypt wireless communications on wireless lan 34 . 3 . synchronize ( transfer or delete ) content as per changes in content database 226 on pc 18 — when communication with pc 18 occurs , control firmware 270 compares the contents of content database 226 on pc 18 with content database 230 on automotive storage and playback system 10 . this action is described in greater detail below . 4 . monitor and respond to control inputs from user interface control module 50 . 5 . decode digital audio files 234 and convert to analog signal 286 as per input from controls — codecs 274 stored in memory and executed by operating system decode digital audio files 234 . control firmware 270 includes a large buffering function where hard disk drive 112 can read ahead and store significant amounts of digital audio file 234 that is currently being decoded , in dram , so that hard disk drive 112 head can park . by buffering large amounts of digital audio file 234 in this way , hard disk drive 112 head can maintain a shorter operating duty cycle when the head is in its read position over a platter . the less time the head is located over a platter , the less likely a head crash will occur due to an impulse load from the motion of automobile 42 . 6 . hard disk drive 112 temperature monitoring — the temperature sensor on hard disk drive 112 is continually monitored with a duty cycle of 1 – 2 minutes . if the temperature closely approaches the specified operating temperature limits of hard disk drive 112 ( typically between 5 and 55 degrees celsius ), hard disk drive 112 , control firmware will disable hard disk drive 112 ( the platters will not be allowed to spin and the head will be parked ). when automobile 42 is running , wireless lan transceiver 114 is disabled , automobile storage and playback system 10 may be operated using automobile battery power , and automobile 42 power system is recharging storage and datalink unit &# 39 ; s 14 internal battery 122 . when automobile 42 is turned off , automotive storage and playback system 10 may be used to play music ( discussed below ) using internal battery 122 as the power source . when automobile 42 is turned off , computer sub - system in storage and datalink unit 14 is operational , wireless lan transceiver 114 is enabled and , under control of control firmware 270 , broadcasts a message every 10 minutes . this activity is powered by the automotive storage and playback system 10 &# 39 ; s internal battery 122 . by using internal battery 122 , the automobile &# 39 ; s 42 main battery is never drawn down by automotive storage and playback system 10 activity . this message broadcast by storage and datalink unit 14 is encoded using the user &# 39 ; s security code , thus the automotive storage and playback system 10 will only receive a response when it is in the presence of the user &# 39 ; s wireless lan 34 radio - frequency field . once wireless lan - based communication is established between automotive storage and playback system 10 and gateway storage system , core module 214 and control firmware 270 engage such that the content database 226 on pc 18 and content database 230 in automotive storage and playback system 10 hard disk drive 112 are compared and actions are taken . fig1 is a flowchart showing the process for comparing the content databases 226 and 230 and for synchronizing content according to new user selections . referring to fig2 , user interface control module 50 is connected to storage and datalink unit 14 via a cable , and is located in passenger compartment within reach of driver or passenger . user interface module 50 may be mounted on the dashboard , or may be placed so that the user can hold user interface module 50 . user interface module 50 includes lcd 52 that enables the display of three levels of the interface , channels 250 , playlists 254 , and tracks 258 . user interface module 50 also includes a center four - way joystick control 70 , that allows the user to navigate between levels , and laterally within levels . fig1 shows a sequence of lcd 52 screens that describes how the interface functions . for example , when 4 - way joystick 70 is pushed up , highlight on lcd 52 moves up one level . likewise when 4 - way joystick 70 is moved to the right , highlight on lcd 52 moves to the next entry on that level . the functions of the other control buttons , such as previous track 66 and stop 58 are well known in the media player field : screen 1 — the initial state of the user interface control module 50 is shown . the top line of text shows the current channel 250 , the second line of text shows the current playlist , and the third line of text shows the current track 258 . the player status icon 80 shows the filled square symbol , which is the conventional symbol for a playback system 10 that is in “ stop ” mode , i . e ., nothing is playing . the channel 250 level is highlighted by being graphically reversed ( text is white with black background ). screen 2 — this screen shows the result of activating the right navigation on joystick 70 . the channel level label changes to “ channel 2 ”. the labels at the playlist 254 level and the tracks 258 level also update to reflect the new items in “ channel 2 ”. screen 3 — this screen shows the result of activating down navigation on joystick 70 . the highlight moves from the channel 250 level to the playlist 254 level . screen 4 — this screen shows the result of next activating right navigation on joystick . the playlist 254 level changes to “ playlist 2 ”, the next playlist 254 organized under “ channel 2 ”. the track 258 level text also updates to reflect the actual first track 258 included in “ track 1 ” under “ playlist 2 ”. screen 5 — this screen shows the result of next activating the play / pause button 54 on user interface control module 50 . “ track 1 ” begins to play . screen 6 — this screen shows the result of next activating the next track button 62 twice on interface control module 50 . “ track 3 ” begins to play . the player status icon 80 changes from a black square to a right - pointing triangle . screen 7 — this screen shows the result of next activating the play / pause button 54 while a track 258 is playing . the track 258 stops playing and the player status icon 80 is the “ pause ” icon . screen 8 — this screen shot shows the result of a few different actions . first , the play / pause button 54 was activated , thus “ track 3 ” begins to play where it left off when the play / pause button 54 was activated . next , right navigation on joystick 70 is activated once . the track 258 line advances to show the next track 258 , or “ track 4 ” in “ playlist 2 ”. “ track 3 ” continues to play . this feature allows the user to browse through the channel 250 / playlist 254 / track 258 list structure while continuing to listen to a currently playing track 258 . screen 9 — this screen shows the result if no other buttons are activated for six seconds . the display reverts back to display the channel 250 , playlist 254 , and track 258 , that is currently being played . audio content is played through the car &# 39 ; s existing stereo speakers and is modified ( treble , base , loudness , etc .) using the existing car stereo system &# 39 ; s controls . storage and datalink unit 14 may be removed by unlatching the left and right latches 130 and 134 . there are several reasons for removing storage and datalink unit 14 : for alternate synchronization methods , to insure operation when automobile 42 is subject to temperature extremes , and for use as a mobile media player . there are two alternate synchronization methods . it should be noted that storage and datalink unit 14 continues to periodically broadcast ( searching for a server ) even when it is removed from automobile 42 . for scenarios where a user cannot place their automobile 42 within range of the home wireless lan 34 ( such as if a user lives in an apartment building ), storage and datalink unit 14 can be removed and hand carried within range of home wireless lan 34 , and wireless communication and synchronization occurs as described above . synchronization can also occur through a wired usb connection directly to pc 18 . system control application 210 on the user &# 39 ; s pc 18 automatically recognizes storage and datalink unit 14 , and performs the appropriate synchronization , similar to that which is described for in the wireless lan 34 scenario . in climates where ambient temperatures that exceed the operating temperature range of hard disk drive 112 , users can remove storage and datalink unit 14 and store it in a heated or air - conditioned environment while they are not operating automobile 42 . storage and datalink unit 14 is then installed when user operates automobile 42 . tag button 78 included on user interface module 50 in fig8 is used to produce a digital record of audio content 234 that is played on the automobile storage and playback system 10 that is of particular interest to the user . when the user would like to receive more information about an audio content item 234 he or she is listening to , the user pushes tag button 78 . a software process is triggered whereby a record of the audio content being played , including information such as song ( file ) title and id 3 data that is embedded in content file 234 , is stored in a tag database 266 in memory in the storage and datalink unit 14 . the time and date of tag button 78 activation is also stored in tag database 266 . when automobile 42 is in range of the local wireless lan 34 , the record of tagged items is automatically transferred to tag database 294 associated with system control application 210 on home pc 18 storage gateway system , from which it is automatically transferred to the user &# 39 ; s tag aggregation page at a website associated with the user . software applications on the website process the tag record information and provide the user with more enhanced information , or ancilliary content , that is associated with the tagged content . the user can then use any html - based browser , such internet explorer or netscape navigator , commonly found on home pcs 18 , to browse the tag aggregation web page and associated ancilliary content . ancilliary content is for example information about a particular song artist , album art , song lyrics , concert dates , options to purchase subsequent content , or information about purchasing and / or downloading a particular digital audio file 234 . the tag feature works with both downloaded audio content and broadcast radio content . for downloaded content , the song title and other meta - data will be embedded in the digital audio file 234 and thus the song title and other information can be accessed directly by the control firmware 270 . radio content tagging involves recording the radio tuner frequency , time , and date information . when this data is transferred to a specific tag - processing software application on a server on internet 222 , the data can be used to retrieve information about that particular song through radio station playlist information services that publish play lists for broadcast content . in this embodiment , storage and datalink unit 14 is used as a mobile digital audio player . interface control module 50 receives power from storage and datalink unit 14 , and storage and datalink unit 14 is able to operate fully when operated outside of automobile . in one embodiment , a mobile interface control unit is able to plug into storage and datalink unit 14 . in this embodiment , storage and datalink unit 14 also includes a headphone output jack . the mobile interface control unit is used to power on the storage and datalink unit 14 , and the interface controls are used as described above . when the play button is activated , the specified audio file 234 is decoded an audio signal is produced for use with headphones . in a different embodiment , the interface control module 50 includes a connector several inches down the cable 290 that is installed permanently in automobile 42 , and is able to be unplugged from the installed cable 290 and plugged into a corresponding connector in storage and datalink unit 14 . thus the same interface control module 50 can be used in the automobile and also as a mobile interface control module 50 . to provide for hard disk drive 112 operation during a cold temperature extreme , one embodiment of automotive storage and playback system 10 includes a hard disk drive 112 heating subsystem . hard disk drive 112 heating subsystem consists of a copper clad kapton heating element 298 fixed in contact with hard disk drive 112 housing , as shown in fig1 . a thin layer of thermally conductive adhesive is used to attach kapton heating element 298 to hard disk drive 112 . kapton heating elements 298 are a well - known technology for heating items when space is a constraint . current is send through large copper traces adhered to the kapton substrate . the current subsequently produces heat , which is conducted to hard disk drive 112 housing . the temperature monitoring sub - system , which is an aspect of control firmware 270 , controls the heating of hard disk drive 112 so that the operating temperature limit is not exceeded . in an alternative embodiment , the control interface is integrated into a head unit 302 , shown in fig1 , mounted in the dashboard similarly to existing car stereo 46 head unit devices . referring now to fig1 , the head unit 302 is connected to the storage and datalink unit 14 via the analog audio 286 cable and a serial communication standard rs - 232 data cable 290 , which sends and receives control messages . head unit 302 provides all of the functions of existing automobile stereo head units , but with the additional capability of providing the interface to the automobile storage and playback system 10 , as described above . the head unit 302 is also connected to the car &# 39 ; s am / fm antenna 48 via an antenna cable . the head unit 302 includes a stereo sound processor , audio mixer , pre - amplifier , amplifier , am / fm ( radio ) tuner , and a user interface to control the content and other features . the radio tuner is included in the device so that the automobile storage and playback system 10 can play conventional broadcast radio audio . the user switches between content sources by activating the source button . the lcd will also show metadata that may be embedded in the music files themselves . a tag button 78 is included . the storage gateway system &# 39 ; s connection to the internet can be any internet connection means such as conventional phone line modem dial - up , a dsl connection , or a fixed wireless broadband connection , such as that provided by sprint . the mass storage memory in the automobile storage and playback system 10 can include flash memory , which can be designed as all non - removable , partially removable , or totally removable . non - removable flash memory is comprised of flash memory chips that are permanently soldered to printed circuit boards located internal to the storage and datalink unit 14 housing . removable flash memory is used in the form of removable memory cards , such as compact flash memory cards , a well known standard for removable flash memory . in an alternative embodiment , the head unit further includes a cd drive or audiocassette drive so that the automobile storage and playback system 10 can include certain common car stereo functionality . through the inclusion of a cd drive or audiocassette drive , a user would be able to both listen to downloaded music content from his / her pc 18 , and listen to music content that is played off a cd or tape cassette . in an alternative embodiment , a system is created that can support transfer and presentation of data other than music file data content , such as text and image files , video files , or interactive multimedia files , can be downloaded to the automobile storage and playback system 10 where they are displayed on a high - resolution graphics lcd . through this application the user can send information , such as driving directions , maps , or movies , to the automobile storage and playback system 10 and thus has access to that information while he / she is in the car . in the case of movies , such as mpeg files , car passengers can watch video entertainment while traveling . thus the automobile storage and playback system 10 would include one or more larger video display units , as well as alternative audio output interfaces . for example , the driver can listen to broadcast radio while passengers in the back seat watch an mpeg movie , listening to the movie audio using stereo headphones . in a further embodiment the automobile storage and playback system 10 can be used as a gateway for transferring data to other computing devices or electronic appliances located in the car . a data link , in the form of electrical wires or cables is used to connect the automobile storage and playback system 10 to other devices in the car . through this application , users can transfer a host of information easily between their vehicle and home computer . examples of this application include : transferring records of mileage , speed , and fuel consumption back to a home pc 18 ; uploading new software or code into a car &# 39 ; s central computing controller to improve performance or change settings ( these changes could be released by automobile manufacturers over the internet ); downloading map databases into the automobile storage and playback system 10 for navigational use . for this embodiment the communication link that is local to the automobile is extended to the automobile &# 39 ; s on - board control computer . an rs - 232 port on the storage and datalink unit 14 is connected to a corresponding rs - 232 port on the on - board computer . new firmware is downloaded that is of a compatible format for the on - board controller . reprogramming of automobile operational parameters is performed now . dinan engineering provides engine controller firmware upgrades for bmw automobiles that provides improved performance and efficiency . furthermore , bmws have certain features that are reprogrammable at a bmw dealership . for example , bmws can be programmed to automatically lock all doors a few seconds after the automobile is in motion after occupants have entered the car . this feature can be activated or de - activated , depending on the preference of the user with the use of a dedicated automobile feature programming application that runs on the home pc 18 . in a further embodiment , the automobile storage and playback system 10 can be used to transfer audio voice files from the home pc 18 to the car and from the car to the home pc 18 . in this embodiment , the automobile storage and playback system 10 head unit further includes a microphone that is used to capture voice recordings that are then stored in memory . examples of this application include : recording messages for oneself that can later be transferred to and stored on a home pc 18 ; recoding messages for oneself at the home pc 18 ( such as street directions ) and then storing them on the automobile storage and playback system 10 for use when driving . a microphone mounted near the driver seat is wired to an a / d converter and a dsp subsystem included in the storage and datalink unit 14 . an aspect of control firmware on the storage and datalink unit 14 allows the user to trigger a recording function and the user &# 39 ; s voice is encoded by the data and storage link unit and stored until the automobile is in range of the home wireless lan 34 , when it is transferred to the home pc 18 automatically . in another embodiment , the storage and datalink unit 14 is designed such that the battery and wireless lan transceiver are integrated into the dock 126 , and the processing components ( including the usb connector ) of the storage and datalink unit 14 are internal to the removable part of the storage and datalink unit 14 . the wireless lan transceiver 114 and battery 122 remain in the car so that the weight of the removable part of the storage and datalink unit 14 is minimized . the user carries the device to a home dock , identical in form to the automobile dock 126 , which is connected via usb to the pc 18 or storage gateway system . the home dock also provides power to the storage and datalink unit 14 . when the storage and datalink unit 14 is in the home dock , synchronization takes place . a further related embodiment includes a removable storage and datalink unit 14 where local battery 122 remains in the trunk ( integral to the dock 126 ) but the wireless lan transceiver 114 is included in the storage and datalink unit 14 . a home dock that is powered with an ac connection is provided . the home dock converts ac from the wall into dc that can be used to power the computer and wireless lan transceiver 114 in the removable storage and datalink unit 14 . this home dock can be located anywhere within range of the home wireless lan 34 , for example , near the entrance to the home . the removable storage and datalink unit 14 is placed into the home dock , the storage and datalink unit 14 receives power and immediately connects to the home lan 34 , and replication or synchronization commences . fig1 shows an aftermarket automobile storage and playback system 10 that is a media player with an audio / video display unit 306 that connects to the storage and datalink unit 14 via an rs - 232 data cable 290 and an analog audio / video cable 310 , and is used in the passenger compartment to control and view content 234 that is stored on the hard disk drive 112 . in another embodiment , shown in fig1 , data is transferred from the storage and datalink unit 14 to a wireless media player unit 318 wirelessly . the storage and datalink unit 14 acts as a storage gateway and a server to the wireless head units 318 . system control application operates on storage and datalink unit 14 . each media player unit 318 contains a wireless lan transceiver connected to an antenna , which allows signals to be received from the storage and datalink unit &# 39 ; s 14 wireless transceiver . the storage and datalink unit 14 contains data wirelessly transferred from the home pc 18 and internet and stored in the hard disk drive 112 , and the head units 318 can access that data from the storage and datalink unit 14 wirelessly . thus , an mp3 song or other audio stored in the storage and datalink unit 14 hard disk drive 112 can be sent wirelessly to the car stereo head unit for immediate playback , just as a movie or other multimedia can be sent wirelessly to the wireless media player head unit 318 . in another embodiment , shown in fig2 , the storage and datalink unit 14 is connected to the media player head units 322 via a 100 mbps ethernet lan 326 system . the 100 mbps lan 326 system can handle multiple audio or video streams from the storage and datalink unit 14 to various head units 322 , as well as the control messages . in another embodiment , data is transferred from the storage and datalink unit 14 to a pda wirelessly . the storage and datalink unit 14 acts as a storage gateway and server for the pda . the pda has a wireless lan transceiver , which allows signals to be received from the storage and datalink unit 14 &# 39 ; s wireless transceiver . the storage and datalink unit 14 contains data wirelessly transferred from the home pc 18 and stored in the hard disk drive 112 , and that data can be accessed wirelessly by the pda , for use anywhere in the car or within range of the storage and datalink unit 14 . this data could include such content as daily schedules , driving directions and maps , digital movies if the pda has video decoding and playback capabilities , as well as single or multi - player games . fig2 shows a block diagram of an automobile with both a wireless lan transceiver 114 and a wireless wan transceiver . the user can request and download content regardless of where the automobile is located . however , since wan bandwidth is more expensive and slower , the wan content downloads would be limited to narrowband information that is time sensitive , such as traffic updates and messages . the wan channel can also upload tag messages based on user tag button activations . the tag messages are routed to the corresponding tag processing server . in this embodiment , the wan ( cellular ) chipset is located in the storage and datalink unit 14 . a separate antenna is used and also connected to the wan radio input . the operating system on the storage and datalink unit 14 includes software that monitors and controls the wan subsystem , receiving and recording content , and sending content ( messages ) or connecting to the cellular system for real - time voice transmission . an automotive storage and playback device and a method for using the same have been described . although the present invention is described herein with reference to specific embodiments , many modifications and variations therein will readily occur to those with ordinary skill in the art . accordingly , all such variations and modifications are included within the intended scope of the present invention as defined by the following claims .