Abstract:
An interactive toy train system including a track layout, a plurality of vehicles configured to travel along the track, and a plurality of destinations removeably coupled to the track. The vehicles are configured to communicate with one another and the vehicles are further configured to communicate with one or more of the destinations. The system includes an infrared toy network having a network protocol, which determines who is present and who is not present thereby allowing multiple vehicles and destinations to converse intelligently and without interference.

Description:
RELATED APPLICATIONS 
       [0001]    This application is a non-provisional application of and claims priority to U.S. Provisional Patent Application Ser. No. 61/249,227, filed on Oct. 6, 2009, the contents of which are incorporated herein by reference. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]    Children have enjoyed playing with toys, such as dolls, action figures, etc., including vehicles such as toy train sets for many years. Toy train sets come in many different forms, such as model railroad sets, remote controlled sets, and wooden sets. 
       SUMMARY OF THE INVENTION 
       [0003]    The toy train system of the present invention provides three types of play: (1) free play, (2) sounds and lights play, and (3) directed play. During free play the user can play without any electronic interaction and have a play experience similar to other systems. Sounds and lights play gives the user the added dimension of electronic cause and effect play. In directed play, a character will give the user specific tasks to complete and suggest play scenarios during play. 
         [0004]    The toy train system includes many vehicles and unique interactive training stops and destinations that create an infinite number of different play patterns. Children can play and interact with the toy train system and have a unique play experience every time. 
         [0005]    The invention is directed generally to a toy train system, which incorporates electronic technology to provide interactivity between the train system components and the user. 
         [0006]    There were many design challenges associated with the invention based on the desirability for a low product cost and a rich play experience. Each challenge by itself was not easily resolved, without added cost and external circuit complexity. When added all together, the overall design and cost challenge eliminated all of the standard solutions. To achieve certain goals related to the invention, the invention incorporated the dynamic building block features of a Cypress PSoC microcontroller (e.g., CY8C21323 available from Cypress Semiconductor Corporation) and compiled a list of user modules and internal circuit routings to simplify (lower cost) and resolve (meet requirements) the design challenges. The Cypress PSoC microcontroller includes configurable blocks of analog and digital logic and programmable interconnect. These configurable blocks allow creation of customized peripheral configurations based on design requirements. The Cypress PSoC micro-controller has a dynamic structure, which allows the blocks to move depending on a particular task. In other words, the functionality of the pins of the micro-controller can change dynamically. 
         [0007]    Since the play components (e.g., vehicles) of the invention are physically small devices, the size of the power supply was an issue to be considered. Although most sound and lights toy designs today use three battery cells, this was not an option due to the large battery size. The play components needed to use smaller-sized battery cells, such as two “AAA” alkaline cells. This provides a voltage source from 2.2 to 3.0 VDC throughout the life of the batteries. Since most low cost electronics operate at 3.3V (2.7V for newer ICs) or higher, the batteries alone cannot support this requirement. One solution is to use a DC-DC converter to boost the battery voltage to 3.3V and regulate that voltage throughout the useful life of the battery cells. This is usually accomplished by an external DC-DC power IC, which would add unacceptable costs and increased board complexity. To achieve this, the internal Switch Mode Pump within the Cypress PSoC micro-controller was enabled, which allows the microcontroller and other external devices to run at either 3.3V or 5V DC. With this configuration, a toy train system according to an embodiment of the present invention, a low cost, low complexity and internal to the PSoC solution was achieved. 
         [0008]    The invention utilizes both slow and fast (e.g., about 20 kB/sec and greater) infrared communications. To transmit an IR identification system ID code via an IR emitter (using slow infrared transmitter SIR TX), a Universal Asynchronous Receiver Transmitter (UART) running at a data rate of 1000 bps to be modulated on a 38 kHz carrier was used. To accomplish this, the output of the UART at the IC pin was inverted and logically AND this signal with a 38 kHz clock signal. This solution would have required an additional IC with the proper logic gates to accomplish the INVERTER and AND gate functions. To achieve this serial data stream in the invention, an internal UART transceiver and a 38 kHz counter using the PSoC user blocks were created. By internally inverting the UART signal output and logically ANDing the 38 kHz counter, the serial data stream was brought to a single output pin with no added external components. 
         [0009]    To transmit an IR data stream or file via an IR emitter (using fast infrared transmitter FIR TX), another Universal Asynchronous Receiver Transmitter (UART) running at a data rate of 20 kbps to be modulated on a 455 kHz carrier was needed. To accomplish this, the output of the UART at the IC pin was inverted and logically AND this signal with a 455 kHz clock signal. This solution would have required an additional IC with the proper logic gates to accomplish the INVERTER and AND gate functions. To achieve this serial data stream in the invention, an internal UART transceiver and a 455 kHz counter using the PSoC user blocks were created. By internally inverting the UART signal output and logically ANDing the 455 kHz counter, the serial data stream was brought to a single output pin with no added external components. 
         [0010]    In order to receive (using a slow infrared receiver SIR RX) the SIR TX signal with the 38 kHz modulated carrier, an external IR Receiver Module, similar to the products that are being produced by Vishay, Sharp, Panasonic, etc. was used. The detected signal output is directly connected to a signal pin on the Cypress PSoC and is internally connected to an active COMPARATOR user block. This comparator generates an internal interrupt when a data stream is being received and internally feeds the input of the UART RX block. This not only conditions the incoming data line, but feeds the UART RX input while only using one pin of the PSoC. 
         [0011]    In order to receive (using a fast infrared receiver FIR RX) the SIR TX signal with the 455 kHz modulated carrier, an external IR Receiver Module, similar to the products that are being produced by Vishay was used. The detected signal output is directly connected to a signal pin on the Cypress PSoC and is internally connected to an active COMPARATOR user block. This comparator generates an internal interrupt when a data stream is being received and internally feeds the input of the UART RX block. This not only conditions the incoming data line, but feeds the UART RX input while only using one pin of the PSoC. 
         [0012]    Another feature of the invention is its ability to play back audible sounds. This usually requires a custom masked ROM IC, taking several months of tooling time and cannot be easily changed without great expense and increased time. By using the Cypress PSoC microcontroller and a low cost external SPI FLASH Memory IC, audible sounds can be played directly from the PSoC to an external speaker. This method allows for a low cost, quick programming solution as the FLASH technology is in-circuit programmable. No ROM masking fee, no long lead time, programmable in development on the fly as well as programmable on the line in production. This approach utilizes the internal SPIM, PRS8 and CNTR8 user blocks of the PSoC and is unique to this design. 
         [0013]    Another feature of the invention, according to an embodiment, is its ability to upgrade previous versions of the characters with newer sound files. This is accomplished by using the FIR TX and RX file transfer capabilities. When a new toy is introduced to the play set, it will send new sound files directly to the older toys, thereby updating them to the latest revision. Although this is a seamless process to the child user, the PSoC microcontroller becomes internally reconfigured to utilize the UART, SPIM and CNTR user blocks to accomplish this task. This dynamic reconfiguration allows this design the flexibility it needs to accomplish all of the above tasks. When the new sounds files are successfully transferred from one device to the other, they are stored in the non-volatile memory of the external FLASH IC. 
         [0014]    In one embodiment, the invention provides an interactive toy train set comprising a plurality of track sections removeably coupled together, a plurality of vehicles configured to traverse the track sections, at least one of the vehicles including an electronics module having a processor, a transmitter configured to transmit infrared signals, a receiver configured to receive infrared signals, and an output module, and a plurality of destinations removeably coupled to one or more track sections, at least one of the destinations including an electronics module having a processor and a transmitter configured to transmit infrared signals. The vehicle is configured to receive an infrared signal transmitted from a first destination when the vehicle is in proximity to the first destination, and wherein the vehicle is configured to transmit an infrared signal representative of the infrared signal received from the first destination to a second destination such that the second destination can record in memory that the vehicle is in proximity to the first destination. 
         [0000]    In another embodiment, the invention provides an interactive toy train set comprising a first vehicle including an electronics module having a processor, a transmitter configured to transmit infrared signals, a receiver configured to receive infrared signals, and an output module and a second vehicle including an electronics module having a processor, a transmitter configured to transmit infrared signals, a receiver configured to receive infrared signals, and an output module. The second vehicle is configured to receive a first infrared signal transmitted by the first vehicle, the first infrared signal including a code identifying the first vehicle. The output module of the second vehicle is configured to generate a randomly-selected audio signal after processing the first infrared signal to determine the code and a status of a play pattern. The transmitter of the second vehicle is configured to transmit a second infrared signal, the second infrared signal including a code identifying the second vehicle. The first vehicle is configured to receive the second infrared signal transmitted by the second vehicle. The output module of the first vehicle is configured to generate a randomly-selected audio signal after processing the second infrared signal to determine the code identifying the second vehicle and a status of a play pattern. 
         [0015]    Other aspects of the invention will become apparent by consideration of the detailed description and accompanying drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0016]      FIG. 1  is a perspective view a toy train system according to one embodiment of the present invention. 
           [0017]      FIG. 2  illustrates several views of a plurality of track sections of the toy train system illustrated in  FIG. 1 . 
           [0018]      FIG. 3  illustrates several views of a pedestal of a track support system of the toy train system illustrated in  FIG. 1 . 
           [0019]      FIG. 4  illustrates several views of a pedestal of a track support system of the toy train system illustrated in  FIG. 1 . 
           [0020]      FIG. 5  illustrates several views of a base of the track support system of the toy train system illustrated in  FIG. 1 . 
           [0021]      FIG. 6  illustrates several views of an arm of the track support system of the toy train system illustrated in  FIG. 1 . 
           [0022]      FIG. 7  illustrates several views of an arm of the track support system of the toy train system illustrated in  FIG. 1 . 
           [0023]      FIG. 8  illustrates several views of an arm of the track support system of the toy train system illustrated in  FIG. 1 . 
           [0024]      FIG. 9  illustrates partial perspective views of one configuration of some of the track sections and the track support system. 
           [0025]      FIG. 10  is a perspective view of a plurality of vehicles used with the toy train system illustrated in  FIG. 1 . 
           [0026]      FIG. 11  is a block diagram of an electronics module in the vehicles illustrated in  FIG. 10 . 
           [0027]      FIG. 12  is schematic diagram of the electronics module illustrated in  FIG. 11 . 
           [0028]      FIG. 13  is a block diagram of an electronics module of a level 1 destination illustrated in  FIG. 1 . 
           [0029]      FIG. 14  is a schematic diagram of the electronics module illustrated in  FIG. 13 . 
           [0030]      FIG. 15  is a block diagram of an electronics module of a level 2 destination illustrated in  FIG. 1 . 
           [0031]      FIG. 16  is a schematic diagram of the electronics module illustrated in  FIG. 15 . 
           [0032]      FIG. 17  is a schematic diagram of an electronics module of a tower arch (level 2 destination) used in the toy train system of  FIG. 1 . 
           [0033]      FIG. 18  is a schematic diagram of an electronics module of a fuel depot (level 2 destination) used in the toy train system of  FIG. 1 . 
           [0034]      FIG. 19  is a schematic diagram of an electronics module of a loading yard (level 2 destination) used in the toy train system of  FIG. 1 . 
           [0035]      FIG. 20  is a block diagram of an electronics module of a level 3 destination illustrated in  FIG. 1 . 
           [0036]      FIG. 21  is a schematic diagram of the electronics module illustrated in  FIG. 17 . 
           [0037]      FIG. 22  is a schematic illustration of the toy train system illustrated in  FIG. 1 . 
           [0038]      FIG. 23  illustrates a state diagram of a vehicle  18  according to an embodiment of the present invention. 
           [0039]      FIGS. 24A-K  illustrate various flow charts of the operation of a vehicle and sound files output by a vehicle according to an embodiment of the present invention. 
           [0040]      FIGS. 25-26  illustrate a state diagram of a level 1 destination  104  according to an embodiment of the present invention. In particular,  FIG. 25  relates to a bridge level 1 destination, and  FIG. 26  relates to a tunnel level 1 destination. 
           [0041]      FIG. 27  illustrates a state diagram of the Chug Wash according to an embodiment of the present invention. 
           [0042]      FIGS. 28A-B  illustrate various flow charts of the operation of the Chug Wash according to an embodiment of the present invention. 
           [0043]      FIG. 29  illustrates a state diagram of the Repair Shed according to an embodiment of the present invention. 
           [0044]      FIGS. 30A-B  illustrate various flow charts of the operation of the Repair Shed according to an embodiment of the present invention. 
           [0045]      FIG. 31  illustrates a state diagram of the Rock Quarry according to an embodiment of the present invention. 
           [0046]      FIGS. 32A-B  illustrate various flow charts of the operation of the Rock Quarry according to an embodiment of the present invention. 
           [0047]      FIGS. 33A-C  illustrate various flow charts of the operation of the Fuel Depot according to an embodiment of the present invention. 
           [0048]      FIGS. 34A-B  illustrate various flow charts of the operation of a Central Junction Whistle according to an embodiment of the present invention. 
           [0049]      FIGS. 35A-C  illustrate various flow charts of the operation of a Loading Yard according to an embodiment of the present invention. 
           [0050]      FIGS. 36A-B  illustrate various flow charts of the operation of an Ice Cave according to an embodiment of the present invention. 
           [0051]      FIG. 37  illustrates a flow chart of the operation of a Safari Park according to an embodiment of the present invention. 
           [0052]      FIGS. 38A-B  illustrate various flow charts of the operation of a Saw Mill according to an embodiment of the present invention. 
           [0053]      FIG. 39  illustrates a flow chart of the operation of a Chuggington Station according to an embodiment of the present invention. 
           [0054]      FIG. 40  illustrates a state diagram of the Roundhouse according to an embodiment of the present invention. 
           [0055]      FIGS. 41A-G  illustrate various flow charts of the operation of the Roundhouse according to an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0056]    Before any embodiments of the invention are explained in detail, it is to be understood that the invention is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the following drawings. The invention is capable of other embodiments and of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein are for the purpose of description and should not be regarded as limiting. 
         [0057]    Although directional references, such as upper, lower, downward, upward, rearward, bottom, front, rear, etc., may be made herein in describing the drawings, these references are made relative to the drawings (as normally viewed) for convenience. These directions are not intended to be taken literally or limit the present invention in any form. In addition, terms such as “first,” “second,” and “third” are used herein for purposes of description and are not intended to indicate or imply relative importance or significance. 
         [0058]    In addition, it should be understood that embodiments of the invention may include hardware, software, and electronic components or modules that, for purposes of discussion, may be illustrated and described as if the majority of the components were implemented solely in hardware. However, one of ordinary skill in the art, and based on a reading of this detailed description, would recognize that, in at least one embodiment, the electronic based aspects of the invention may be implemented in software (e.g., stored on non-transitory computer-readable medium). As such, it should be noted that a plurality of hardware and software based devices, as well as a plurality of different structural components may be utilized to implement the invention. Furthermore, and as described in subsequent paragraphs, the specific mechanical configurations illustrated in the drawings are intended to exemplify embodiments of the invention and that other alternative mechanical configurations are possible. 
         [0059]      FIG. 1  illustrates a toy train system  10  according to one embodiment of the present invention. The train system  10  includes a track  14  that can be assembled into many different configurations. The track  14  includes a plurality of track pieces (illustrated in  FIG. 2 ) that are coupled to one another to define a desirable configuration. The train system  10  also includes a track support system (illustrated in  FIGS. 3-8 ) having a plurality of support pieces configured to support the track  14  in its many different configurations. One particular configuration is illustrated in  FIG. 9 . The support pieces can be assembled to form a pedestal as illustrated in  FIGS. 3-4 . The pedestal can be coupled to a base illustrated in  FIG. 5  for additional support. The support pieces can include one or more recesses configured to receive an arm illustrated in  FIGS. 6-8 . The various arms are configured to provide additional support to track pieces in certain track configurations. 
         [0060]    The train system  10  also includes one or more vehicles  18  as illustrated in  FIG. 10 . The one or more vehicles  18  (designated in the description below as Vehicle A, Vehicle B, Vehicle C, etc.) are configured to move along the track  14  to any location desired by the user. In some constructions, the vehicles  18  are manually moved by a user and in other constructions the vehicles  18  can move along the track  14  under their own power. 
         [0061]    One or more of the vehicles  18  can include an electronics module  22  as illustrated in  FIG. 11 . The electronics module  22  can include a processor  26  (e.g., CY8C21323-24LFXI available from Cypress Semiconductor Corporation) operable to process incoming signals and generate outgoing signals. The processor  26  is capable of running one or more software programs (e.g., a computer readable medium capable of generating instructions) and/or a communications application. The electronics module  22  can also include a power source  30  operable to activate the processor  26  and other components as needed. The electronics module  22  can also include memory  34  (e.g., 25LF020A) operable to store data and information related to the vehicles  18  and/or various destinations (discussed below) and/or various play patterns. The memory  34  can be ROM based and/or Flash based. 
         [0062]    The electronics module  22  can also include a plurality of transmitters  38  (at least one capable of high-speed data transmission and one capable of low-speed transmission) (e.g., SI2302DS) operable to transmit one or more signals and a plurality of receivers  42  (at least one capable of high-speed data reception and one capable of low-speed reception) (e.g., TSOP98200 and TSOP39238) operable to receive one or more signals from an external source. The signal can be in the form of infrared, radio frequency, or other suitable format. The transmitter  38  includes a light-emitting diode (LED) to emit infrared radiation in a wide beam. The beam is modulated to encode the data carried in the beam. The receiver  42  includes a photodiode to convert the infrared radiation to an electric current. The electronics module  22  can also include an output module, such as a speaker  46 , a motor, a light, an animatronics controller that animates a portion of the vehicle, or other component that provides an output. The electronics module  22  can also include a switch  24  operable to connect the power source  30  to the processor  26  or otherwise activate the processor  30 . The electronics module  22  can also include a switch  28  operable to cause the processor  26  to output a signal and/or cause the speaker  46  to output a sound file.  FIG. 12  illustrates one construction of the electronics module  22 . 
         [0063]    In one configuration, one or more of the vehicles  18  can include a SPST button, three IR-transmitting LEDs (e.g., on the top, nose, and rear), two IR-receiving modules (e.g., on the top and nose), two AAA batteries, a speaker, and a SPDT power switch. 
         [0064]    The toy train system  10  also includes a plurality of locations  100  positioned adjacent to the track  14  as illustrated in  FIG. 1 . More specifically, the locations  100  can include different types or levels of locations having different functionalities. The locations  100  are discussed below with reference to a level 1 destination  104 , a level 2 destination  108 , and a level 3 destination  112 . For example, the toy train system  10  illustrated in  FIG. 1  includes four locations  100  identified as P 1 , P 2 , P 3 , and P 4 . The P 1  location is a trainee roundhouse (and Vee), and is an example of a level 3 destination  112 . The roundhouse is a three-bay electronic training stop featuring a working turntable and engine recognition ID (ERID). The turntable includes mechanical sounds activated by a tact switch. Vee communicates her ID and other information to the engines. Engines acknowledge arrival and departure from the roundhouse. Three open-back bays allow for the storage of engines. The entire upper clock portion of the roundhouse is a plunger type switch with approximately ¼″ of travel. When pushed down, Vee verbally gives a task to be completed. Her information is also communicated to the engine via infrared. 
         [0065]    The P 2  location is a tower arch, and is an example of a level 2 destination  108 . The tower arch is an elevated training stop with electronics and gravity engine launch. A cargo loading well includes a tact switch indicating empty/full. ERID Engines acknowledge arriving and leaving the terminal and trigger sound effects as they travel down an inclined ramp, either the spiral or the descending track. The track in front of the terminal has enough space to hold an engine and cargo car stopped securely before “launch.” 
         [0066]    The P 3  location is a fuel depot, and is another example of a level 2 destination  108 . The fuel depot is an electronic training stop featuring fueling play. The fuel depot has three types of fuel. Pressing the button on top of each of the tanks will turn on a LED on the selected fuel tank. Lowering and raising of the nozzle triggers sound effects. The fuel depot communicates its ID and fuel type dispensed to the engine via infrared. 
         [0067]    The P 4  location is a loading yard, and is another example of a level 2 destination  108 . The loading yard is an electronic training stop featuring cargo play. A crane arm pivots 180 degrees with detents at each cargo section. Pivoting the arm triggers sound effects. There are three types of cargo, each with a different “footprint”: circle, square, or rectangle. Each cargo piece can be picked mechanically up off a cargo car and set into a recess on the base. Each recess has 2 triggers. This allows cargo to be identified. 
         [0068]    The level 1 destination  104  can include an electronics module  116  as illustrated in  FIG. 13 . The electronics module  116  can include a processor  120  operable to process and generate outgoing signals. The processor  120  is capable of running one or more software programs (e.g., a computer readable medium capable of generating instructions) and/or a communications application. The electronics module  116  can also include a power source  124  operable to activate the processor  120  and other components as needed. The electronics module  116  can also include memory  128  operable to store data related to the level 1 destination  104 . 
         [0069]    The electronics module  116  can also include a transmitter  132  operable to transmit one or more signals. The transmitter  132  includes a light-emitting diode (LED) operable to emit infrared radiation in a wide beam. The beam is modulated to encode the data carried in the beam. The electronics module  116  can also include an output module, such as a speaker  136 . The electronics module  116  can also include a switch operable to connect the power source  124  to the processor  120  or otherwise activate the processor  120 .  FIG. 14  illustrates one construction of the electronics module  116 . 
         [0070]    As noted above, the toy train system  10  includes a level 2 destination  108 , which can include an electronics module  140  as illustrated in  FIG. 15 . The electronics module  140  can include a processor  144  (e.g., SN67010) operable to process and generate outgoing signals. The processor  144  is capable of running one or more software programs (e.g., a computer readable medium capable of generating instructions) and/or a communications application. The electronics module  140  can also include a power source  148  operable to activate the processor  144  and other components as needed. The electronics module  140  can also include memory  152  operable to store data related to the level 2 destination  108 . 
         [0071]    The electronics module  140  can also include a transmitter  156  operable to transmit one or more signals. The transmitter  156  includes a light-emitting diode (LED) to emit infrared radiation in a wide beam. The beam is modulated to encode the data carried in the beam. The electronics module  140  can also include an output module, such as a speaker  160 . The electronics module  140  can also include a switch operable to connect the power source  148  to the processor  144  or otherwise activate the processor  144 . The electronics module  140  can include a second switch operable to detect when an activity has occurred. The electronics module  140  can include additional switches for detecting other activities as well.  FIG. 16  illustrates one construction of the electronics module  140 .  FIG. 17  illustrates one construction of an electronics module used in a tower arch of the toy train system  10 .  FIG. 18  illustrates one construction of an electronics module used in a fuel depot of the toy train system  10 .  FIG. 19  illustrates one construction of an electronics module used in a loading yard of the toy train system  10 . 
         [0072]    As noted above, the toy train system  10  can include a level 3 destination  112 , which can include an electronics module  164  as illustrated in  FIG. 20 . The electronics module  164  can include a processor  168  (e.g., CY8C21323-24LFXI available from Cypress Semiconductor Corporation) operable to process incoming and outgoing signals and generate outgoing signals. The processor  168  is capable of running one or more software programs (e.g., a computer readable medium capable of generating instructions) and/or a communications application. The electronics module  164  can also include a power source  172  operable to activate the processor  168  and other components as needed. The electronics module  164  can also include memory  176  (e.g., 25LF020A) operable to store data and information related to the vehicles  18 , the level 1 destinations  104 , the level 2 destinations  108 , the level 3 destination  112 , and/or various play patterns. The memory  176  can be ROM based and/or Flash based. 
         [0073]    The electronics module  164  can also include a plurality of transmitters  180  (one capable of high-speed data transmission and one capable of low-speed data transmission) (e.g., SI2302DS) operable to transmit one or more signals and a plurality of receivers  184  (one capable of high-speed data reception and one capable of low-speed data reception) (e.g., TSOP98200 and TSOP39238) operable to receive one or more signals from an external source. The transmitter  180  includes a light-emitting diode (LED) to emit infrared radiation in a wide beam. The beam is modulated to encode the data carried in the beam. The receiver  184  includes a photodiode to convert the infrared radiation to an electric current. The photodiode can sense the presence of a vehicle  18  and transmit a signal to the processor  168  to begin or continue a particular play pattern. The electronics module  164  can also include an output module, such as a speaker  188 . The electronics module  164  can also include a switch  192  operable to connect the power source  172  to the processor  168  or otherwise activate the processor  168 . The electronics module  164  can include a second switch  196  operable to send a signal to the processor  168  (via a secondary processor  198  (e.g., 74HC595—an 8-bit serial-in, parallel-out shift register) to initiate a task. The electronics module  164  can include additional switches for detecting other activities as well.  FIG. 21  illustrates one construction of the electronics module  164 . 
         [0074]    The configurations of each of the vehicles  18  and destinations  104 ,  108 ,  112  allows for one-way communication or two-way communication between (a) two or more vehicles, (b) one or more vehicles and one or more destinations, or (c) two or more destinations. This communication is facilitated by a network  202 , such as a peer-to-peer network, as illustrated in  FIG. 22 . This network  202  allows multiple vehicles  18  and destinations  104 ,  108 ,  112  to effectively communicate without interference from other devices related to the train system  10  or from devices external to the train system  10 . Each device in the train system  10  includes a unique identification represented by a 1-byte code to identify the particular device in all IR transmissions. Communication occurs via infrared packet, which is a sequence of five bytes transmitted through the IR LEDs, in standard UART format (start bit, 8 data bits, stop bit). Each IR packet includes five bytes: (1) (TX_SRC): unique identifier of source of transmission (TRAIN_ 0  to TRAIN_ 15 ), (2) (TX_DST): unique identifier indicating the indented destination for the transmission, (3) (TX_MSG): Any of 256 possible messages, (4) (TX_ERR): Error detection: CRC or checksum, and (5) (TX_EOM): Unique transmission terminator code (0x0D used in prototypes) to indicate the end of the packet. In general, Bytes  1  and  5  are identical for every transmission, Bytes  2  and  3  change, and byte  4  changes based on the changes in bytes  2  and  3 . 
         [0075]    Each device in the toy train system  10  includes a network record, which is a set of variables in the device&#39;s software that indicates whether specific device identifications have been detected in an IR packet. 
         [0076]    Each of the vehicles  18  includes three power modes: (1) sleep—low-power state to conserve battery power, (2) idle—waiting for user interaction or IR reception, and (3) active—playing sound, transmitting or receiving IR, or changing state of visible LEDs in response to user interaction. The vehicles  18  also operate in a default state, referred to as the listening state, in which the vehicles respond to button presses and various IR transmissions from other vehicles  18  and locations  100 . The vehicles  18  also include a sleep timer, which places the vehicle  18  in a sleep mode upon expiration of a predetermined amount of time. The sleep timer can be reset by any button press on the vehicle  18  or by the vehicle  18  outputting a sound file. 
         [0077]    The vehicles  18  respond to user interaction (button press) by playing sound files and transmitting IR packets. For example: if the user presses the vehicle&#39;s switch  28 , the vehicle  18  plays a sound file (“Hi, I&#39;m Wilson”) and transmits an IR packet. The vehicles  18  respond to received IR packets by playing sound files and, in some cases, transmitting IR packets. For example: a vehicle  18  receiving an IR packet transmitted in the above example responds by playing a randomly-selected sound file (e.g., “Hi Wilson, I&#39;m Koko!”). The vehicles  18  can respond to IR packets from other vehicles by engaging in Conversations (a sequence of one or more randomly-selected sound files played by two or more vehicles  18  in response to IR transmissions by the vehicles  18  involved in the Conversation) or playing other sound files. For example: in the above example, Koko has responded to Wilson&#39;s request to Host a Conversation (transmitted in the TX_MSG byte of the Packet addressed to Koko [in TX_DST byte of Packet]). The vehicles  18  can respond to IR packets received from locations  100  by playing randomly-selected sound files, and/or transmitting IR packets for reception by other vehicles and/or certain locations  100 . For example, a vehicle  18 , in proximity to a location  100 , detects a change in the state of the buttons of the location  100 , based on the TX_MSG byte transmitted by the location  100 . The vehicle  18  plays a randomly-selected sound file (“Loading Chicken,” for example) and transmits an IR packet (TX_SRC=TRAIN_WILSON, TX_DST=BROADCAST, TX_MSG=CHICKENS) which the location  100  responds to by playing a randomly-selected sound file (“Be careful with those chickens!”). The vehicles  18  can play sound files upon coming into proximity with a location  100 . In addition, the vehicles  18  can play randomly-selected sound files upon leaving proximity to a location  100 . 
         [0078]    The network record is used to determine which vehicle  18  is selected as a potential Client by any vehicle  18  hosting a Conversation. For example, in the above Conversation between Wilson and Koko, Wilson selected Koko as a potential Client by examining the stored network record and determining that Wilson had at some point received an IR transmission from Koko, and had recorded Koko&#39;s presence in the network record. 
         [0079]    In operation, the first time the switch  28  is pressed after Power On or on exiting Sleep mode, the vehicle transmits an IR packet with a HERE_I_AM signal in the TX_MSG byte. After transmitting this IR packet, the vehicle  18  can play a sound file. During the playing of the sound file, the vehicle  18  waits for a HERE_I_AM_RESPONSE messages from other vehicles  18  and updates its network record accordingly. If the vehicle  18  receives a HERE_I_AM_RESPONSE message during this waiting time, the vehicle  18  can initiate a transition to Host state. For example, assume Frostini and Koko are in Idle state. Wilson is turned ON, and Wilson&#39;s Button is pressed. Wilson transmits HERE_I_AM. Wilson plays a sound file (about 0.5 seconds in length). Wilson waits while sound file is playing. Koko receives Wilson&#39;s HERE_I_AM. Frostini receives Wilson&#39;s HERE_I_AM. Both update their network record accordingly. Koko executes variable backoff delay of 55 msec. Frostini executes variable backoff delay of 110 msec. Koko transmits HERE_I_AM_RESPONSE to Wilson after 55 msec. Wilson receives Koko&#39;s HERE_I_AM_RESPONSE while delaying during sound file, and updates his network record. Frostini receives Koko&#39;s HERE_I_AM_RESPONSE while executing variable backoff delay, and updates his network record. Frostini transmits HERE_I_AM_RESPONSE to Wilson after 110 msec. Koko and Wilson receive Frostini&#39;s HERE_I_AM_RESPONSE and update their network records accordingly. Wilson finished sound-playing delay. Wilson enters Host mode, since his NR indicates the presence of one or more vehicles (Koko and Frostini, in this case). At the end of this 0.5 second period, each of the three vehicles  18  should have recorded the presence of the other two vehicles  18  on their respective network records. The network is completely up-to-date at this point. Each subsequent activation of switch  28  can initiate a transition to the vehicle&#39;s Host state. 
         [0080]    In the host state, the vehicle  18  selects another vehicle  18  from its network record and transmit an IR packet with a HOST_REQUEST in the TX_MSG byte addressed to this selected vehicle  18 . The vehicle  18  selected is called the Client. The host vehicle  18  waits for a predetermined amount (e.g., about 3 seconds) of time to receive a CLIENT_OK byte in the TX_MSG of an IR packet received from the Client. If a CLIENT_OK message is not received within this time period, the host vehicle  18  exits the host state and returns to the listening state. If a CLIENT_OK message is received before this timeout, the host vehicle  18  can play a randomly-selected sound file, with content specifically related to the client vehicle  18 . The host vehicle  18  determines when the Conversation is over and then returns to the listening state after receipt of the last CLIENT_OK message. For example, Wilson successfully hosts a Conversation with Koko (who is the Client) by sending the HOST_REQUEST message and receiving a CLIENT_OK message from Koko before the timeout. Wilson then plays a randomly-selected sound file and transmits a message to the Client. The Client responds by playing a randomly-selected sound file and transmitting another CLIENT_OK message. The host vehicle  18  replies by playing another sound file and transmitting another message to the Client. When the host vehicle&#39;s software indicates that the Conversation is over, the host vehicle  18  returns to the listening state. While in the listening state, the vehicle  18  responds to a variety of IR messages from other vehicles  18  and locations  100 . The vehicles  18  are not required to respond to IR reception messages while playing sound files. The vehicles  18  update their network record as part of responding to the IR messages, regardless of the device to whom the message is addressed. 
         [0081]      FIG. 23  illustrates a state diagram of a vehicle  18  according to an embodiment of the present invention.  FIGS. 24A-K  illustrate various flow charts of the operation of a vehicle  18  and sound files output by a vehicle  18  according to an embodiment of the present invention. It is noted that each vehicle  18  can include different sound files than those illustrated. 
         [0082]    Each of the level 1 destinations  104  can include three power modes: (1) sleep—low-power state to conserve battery power, (2) idle—waiting for user interaction Beacon (a single IR packet, transmitted at a predetermined interval by a location or the Roundhouse, with a limited range) or sleep timer events, or IR reception, and (3) active—playing sound, transmitting or receiving IR, or changing a state of visible LEDs in response to user interaction. Some level 1 destinations  104  (e.g., tunnel and bridge) transmit a beacon at a regular interval, to be detected by vehicles  18  in close proximity to the destination. This beacon is used by a vehicle  18  in proximity to the destination to initiate playing sounds and relaying IR messages to other vehicles  18  and/or the Roundhouse. Level 1 destinations  104  do not have switches (other than the power switch) that provide for user interaction, and therefore, the TX_MSG byte does not change. The TX_MSG byte transmits one predetermined value, which can be a fixed, unique value (MSG_BRIDGE) to distinguish the message source, in addition to the TX_SRC byte. 
         [0083]      FIGS. 25-26  illustrate a state diagram of a level 1 destination  104  according to an embodiment of the present invention. In particular,  FIG. 25  relates to a bridge level 1 destination, and  FIG. 26  relates to a tunnel level 1 destination. 
         [0084]    Each of the level 2 destinations  108  can include three power modes: (1) sleep—low-power state to conserve battery power, (2) idle—waiting for user interaction Beacon (a single IR packet, transmitted at a predetermined interval by a location or the Roundhouse, with a limited range) or sleep timer events, or IR reception, and (3) active—playing sound, transmitting or receiving IR, or changing a state of visible LEDs in response to user interaction. 
         [0085]    The Chug Wash is an example of a level 2 destination  108 . In one configuration, the Chug Wash can include a SPST button actuated by rotating a crank arm (Crank Button), three SPST buttons called Wash Mode Buttons, three visible-light LEDs corresponding to the Wash Mode Buttons, a visible-light Power Indicator LED, two IR-transmitting LEDs aimed at the track, three AAA batteries, a speaker, and a SPDT power switch. 
         [0086]    In operation, the Chug Wash transmits an IR signal at a regular interval, to be detected by vehicles  18  in close proximity to the Chug Wash. The crank arm actuates the Crank Button multiple times for each revolution of the crank arm. The Chug Wash processor can transmit the state of the Crank Button and the Wash Mode Buttons in the TX_MSG byte. The state of the Crank Button is MOVING or NOT_MOVING. Changes in the state of the Wash Mode Buttons and/or Crank Button can trigger the following actions: (1) change in the Beacon TX_MSG indicating the state of these Buttons, (2) sound files played in response to determined changes in the state of these Buttons, and/or (3) changes in the status of the visible-light LEDs in response to determined changes in the state of these Buttons. This beacon is used by a vehicle  18  in proximity to initiate playing sounds and relaying IR messages to other vehicles  18  and/or the Roundhouse. 
         [0087]    On power-up, software in the Chug Wash records that no Wash Mode Button has been depressed, until a Wash Mode Button is depressed. The Chug Wash software keeps track of which Wash Mode Button was most recently depressed. When a Wash Mode Button is depressed: (1) the CW software plays a SFX_BEEP sound effect. The SFX_BEEP sound effect plays, and Wash Mode LED changes, regardless of the state of other Wash Mode Buttons. For example, if the “Rinse” button is depressed, and the user depresses the “Buff” button, the SFX_BEEP plays, the Rinse LED turns off, and the Buff LED turns on. (2) the Chug Wash Wash Mode LED corresponding to the most recently pressed Wash Mode Button turns on. (3) all other Wash Mode LEDs are turned off. 
         [0088]    When the state of the Crank Button transitions from NOT_MOVING to MOVING, the Chug Wash plays a randomly-selected sound effect based on the most recently pressed Wash Mode Button. If the software records that no Wash Mode Button has been depressed, two responses occur: (1) a randomly-selected SFX_BUZZ sound effect plays, and (2) all Wash Mode LEDs blink ON and OFF three times, ending in the OFF state. When the state of the Crank Button transitions from MOVING to NOT_MOVING, all Wash Mode LEDs are turned OFF. The Chug Wash software also records that no Wash Mode Button has been depressed. 
         [0089]      FIG. 27  illustrates a state diagram of the Chug Wash according to an embodiment of the present invention.  FIGS. 28A-B  illustrate various flow charts of the operation of the Chug Wash according to an embodiment of the present invention. 
         [0090]    The Repair Shed is another example of a level 2 destination  108 . In one configuration, the Repair Shed can include four SPST switches (Tool Switches), a visible-light LED (Power Indicator LED), two IR-transmitting LEDs aimed at Track, three AAA batteries, a speaker, and a SPDT power switch. 
         [0091]    In operation, the Repair Shed transmits an IR signal at a regular interval, to be detected by vehicles  18  in close proximity to the Repair Shed. Changes in the state of the Repair Shed Tool Switches can trigger the following actions: (1) change in the Beacon TX_MSG indicating the state of the Repair Shed Tool Switches, and (2) sound files played in response to determined changes in the state of the Repair Shed Tool Switches. This Beacon is used by a vehicle  18  in proximity to initiate playing sounds and relaying IR messages to other vehicles  18  and/or the Roundhouse. 
         [0092]    Upon power up, the Repair Shed plays a sound file (SFX_BEEP) in both of the following situations: (1) power is applied, and (2) the Repair Shed exits sleep mode. The Repair Shed Power Indicator LED remains ON while power is applied to the Repair Shed and the Repair Shed is not in Sleep mode. The Repair Shed responds to a change in state of the Repair Shed Tool Switches by ensuring that any change in such state is transmitted by one or more Beacon Packets. Any changes in Repair Shed Tool Switches state are transmitted in the Beacon Packet following the change in state. The Beacon Packets transmit the current state of the Repair Shed Tool Switches at regular intervals, until there is a change in such state or the Repair Shed enters sleep mode. The Repair Shed Tool Switch depress- and release-states have sufficient software debounce to avoid false triggering of change in state. The Repair Shed software plays a sound file when any Repair Shed Tool Switch is determined to have been depressed. For example, when the screwdriver Tool Switch is determined to have been depressed, the software plays a SFX_SCREWDRIVER sound file. 
         [0093]    The Repair Shed software changes the TX_MSG byte when any Repair Shed Tool Switch is determined to have been depressed or released. Any change in Repair Shed Tool Switch state which would normally trigger a new sound file does so regardless of whether the Repair Shed is currently playing a sound file. In other words, sound files are interruptible. For example, the Repair Shed screwdriver handle is moved, engaging the Repair Shed screwdriver Tool Switch, which causes a sound file to play. If the handle is released, and the Repair Shed screwdriver Tool Switch is released and depressed again (including Switch debounce times) then the Repair Shed screwdriver Tool Switch sound file plays again, interrupting any currently playing sound. 
         [0094]      FIG. 29  illustrates a state diagram of the Repair Shed according to an embodiment of the present invention.  FIGS. 30A-B  illustrate various flow charts of the operation of the Repair Shed according to an embodiment of the present invention. 
         [0095]    The Rock Quarry is another example of a level 2 destination  108 . In one configuration, the Rock Quarry can include one SPST button actuated by rotating arm (Crusher Button), one visible-light Power Indicator LED, two IR-transmitting LEDs aimed at the track, three AAA batteries, a speaker, and a SPDT power switch. 
         [0096]    In operation, the Rock Quarry transmits an IR signal at a regular interval, to be detected by vehicles  18  in close proximity to the Rock Quarry. Changes in the state of the Rock Quarry Crusher Button trigger the following actions: (1) change in the Beacon TX_MSG indicating the state of the Rock Quarry Crusher Button, and (2) a sound file played in response to determined changes in the state of the Rock Quarry Crusher Button. This Beacon is used by a vehicle  18  in proximity to initiate playing sounds and relaying IR messages to other vehicles and/or the Roundhouse. 
         [0097]    Upon power up, the Rock Quarry plays a randomly-selected sound file (SFX_BEEP) in both of the following situations: (1) power is applied, and (2) the Rock Quarry is awoken from sleep mode. The power status LED remains ON while power is applied to the Rock Quarry and the Rock Quarry is not in sleep mode. The Rock Quarry responds to a change in state of the Rock Quarry Crusher Button by ensuring that any change in such state is transmitted by one or more Beacon Packets. Any changes in the Rock Quarry Crusher Button state are transmitted in the Beacon Packet following this change in state. Beacon Packets transmit the current state of the Rock Quarry Crusher Button at regular intervals described above, until there is a change in such state or the Rock Quarry enters Sleep mode. The Rock Quarry Crusher Button depress and release states have sufficient software debounce to avoid false triggering of change in state. 
         [0098]    The Rock Quarry software plays a sound file when the Rock Quarry Crusher Button is determined to have been depressed (SFX_CRUSH). The Rock Quarry software changes the TX_MSG byte when the Rock Quarry Crusher Button is determined to have been depressed or released. Any change in Button or Switch state which would normally trigger a new sound file does so regardless of whether the Rock Quarry is currently playing a sound file. In other words, sound files are interruptible. For example, the Rock Quarry Crusher handle is rotated, engaging the Rock Quarry Crusher Button, and this causes a sound file to play. If the handle continues to be rotated, and the Rock Quarry Crusher Button is released and depressed again (including Button debounce times) then the Rock Quarry Crusher sound file is played again. 
         [0099]      FIG. 31  illustrates a state diagram of the Rock Quarry according to an embodiment of the present invention.  FIGS. 32A-B  illustrate various flow charts of the operation of the Rock Quarry according to an embodiment of the present invention. 
         [0100]    The Crossing Gate is another example of a level 2 destination  108 . In one configuration, the Crossing Gate can include a button activating an SPST switch, a visible LED on top of item (Power Status LED), two IR-transmitting LEDs on front of item, three AA batteries, and a SPDT power switch. 
         [0101]    In operation, the Crossing Gate transmits an IR signal at a regular interval, to be detected by vehicles  18  in close proximity to the Crossing Gate. This Beacon indicates the state of the Crossing Gate button. This Beacon is used by the vehicle  18  to initiate playing sounds and relaying IR messages to other vehicles  18  and/or the Roundhouse. 
         [0102]    Upon power up, the power status LED shall remain ON while power is applied to the Crossing Gate and the device is not in Sleep mode. The Crossing Gate responds to button presses/switch activation by ensuring that any change in such state is transmitted by one or more Beacon Packets. Any changes in button/switch state are transmitted in the Beacon Packet following this change in state. Beacon Packets transmit the current state of the button/switch at regular intervals described above, until there is a change in such state or the Crossing Gate enters Sleep mode. 
         [0103]    Vehicles  18  are the only devices which interact with the Crossing Gate. The vehicles  18  detect the Beacon Packets when in proximity of the Crossing Gate. The vehicles  18  respond to changes in the TX_MSG byte of the Beacon Packet as follows: (1) when the vehicle  18  comes into Proximity with the Crossing Gate, the vehicle transmits one Packet for detection by the Roundhouse. This Packet has the following format: (a) TX_SRC: Train ID, (b) TX_DST: XG ID, and (c) TX_MSG: XG button status. (2) the vehicle  18  transmits the same Packet described above whenever the vehicle  18  receives a message indicating that the status of the Crossing Gate button has changed. (3) The vehicle  18  plays a sound file when the Crossing Gate button has changed. (4) The vehicle  18  does not play any sound file when the vehicle  18  comes into Proximity with the Crossing Gate. For example, a vehicle  18  comes into proximity with the Crossing Gate. It will transmit an IR code, which the Roundhouse will detect. The Roundhouse will play a sound file, and the vehicle  18  will not play a sound file. The vehicle  18  plays a randomly-selected sound file when it does not receive a Beacon within a determined period of time. 
         [0104]    The Fuel Depot is another example of a level 2 destination  108 . In one configuration, the Fuel Depot can include a SPST switch activated by plastic lever (Fuel Nozzle Switch), three SPST buttons (Fuel Selection Buttons), a visible LED on top of item (Power Status LED), three visible LEDs on front of item (Fuel Selection LEDs), two IR-transmitting LEDs on front of item, three AA batteries, a speaker, and a SPDT power switch. 
         [0105]    In operation, the Fuel Depot transmits an IR signal at a regular interval, to be detected by vehicles  18  in close proximity to the Fuel Depot. Changes in the state of the Fuel Depot Buttons and Switches trigger the following actions: (1) change in the Beacon TX_MSG indicating the state of the Fuel Depot Buttons and Switches, (2) sound files played in response to determined changes in the state of the Fuel Depot Buttons and Switches, and (3) changes in the status of the visible-light LEDs in response to determined changes in the state of the Fuel Depot Buttons and Switches. This Beacon is used by a vehicle  18  in proximity to initiate playing sounds and relaying IR messages to other vehicles  18  and/or the Roundhouse. 
         [0106]    Upon power up, the power status LED remains ON while power is applied to the Fuel Depot and the Device is not in Sleep mode. The Fuel Depot responds to button presses/switch activation by ensuring that any change in such state is transmitted by one or more Beacon Packets. Any changes in button/switch state are transmitted in the Beacon Packet following this change in state. Beacon Packets transmit the current state of the button/switch at regular intervals described above, until there is a change in such state or the Fuel Depot enters Sleep mode. 
         [0107]    The Fuel Depot software keeps track of which Fuel Selection Button was depressed most recently. On power-up, the Fuel Depot software records that no Fuel Selection Button has been depressed, until a Fuel Selection Button is depressed. The Fuel Depot software plays a “BEEP” sound effect when any Fuel Selection Button is depressed. The Fuel Depot Fuel Selection LED corresponding to the most recently pressed Fuel Selection Button turns on. All other Fuel Selection LEDs are turned off. This “BEEP” sound effect plays, and Fuel Selection LED changes, regardless of the state of other Fuel Selection Buttons. For example, if the “Gas” button is depressed, and the user depresses the “Water” button, the “BEEP” sound effect plays, the Gas LED turns off, and the Water LED turns on. When the Fuel Nozzle Switch is engaged, the Fuel Depot plays a randomly-selected sound effect based on the most recently pressed Fuel Selection Button. If the software records that no Fuel Selection Button has been depressed two responses can occur: (1) a “BUZZ” sound effect can play, and (2) all Fuel Selection LEDs can blink ON and OFF three times, ending in the OFF state. When the Fuel Nozzle Switch is disengaged, all Fuel Selection LEDs are turned OFF. The Fuel Depot software also records that no Fuel Selection Button has been depressed. 
         [0108]    Vehicles  18  are the only devices which can interact with the Fuel Depot. The vehicles  18  can detect the Beacon Packets when in proximity of the Fuel Depot. The vehicles  18  respond to changes in the TX_MSG byte of the Beacon Packet as follows: (1) when the vehicle  18  is in proximity with the Fuel Depot, the vehicle  18  transmits one Packet for detection by the Roundhouse when the TX_MSG byte changes. This Packet has the following format: (a) TX_SRC: Vehicle ID, (b) TX_DST: Fuel Depot ID, and (c) TX_MSG: Fuel Depot button status. (2) the vehicle  18  plays a sound file in certain cases when the vehicle  18  is in proximity with the Fuel Depot. (3) the vehicle  18  plays a sound file when it does not receive a Beacon within a determined period of time. 
         [0109]      FIGS. 33A-C  illustrate various flow charts of the operation of the Fuel Depot according to an embodiment of the present invention. 
         [0110]      FIGS. 34A-B  illustrate various flow charts of the operation of a Central Junction Whistle according to an embodiment of the present invention.  FIGS. 35A-C  illustrate various flow charts of the operation of a Loading Yard according to an embodiment of the present invention.  FIGS. 36A-B  illustrate various flow charts of the operation of an Ice Cave according to an embodiment of the present invention.  FIG. 37  illustrates a flow chart of the operation of a Safari Park according to an embodiment of the present invention.  FIGS. 38A-B  illustrate various flow charts of the operation of a Saw Mill according to an embodiment of the present invention.  FIG. 39  illustrates a flow chart of the operation of a Chuggington Station according to an embodiment of the present invention. 
         [0111]    The Roundhouse is an example of a level 3 destination  112 . In one configuration, the Roundhouse can include a SPST button on top (Button), six IR-transmitting LEDs (an IR LED on the top of the clock tower (LONG_TX), two IR LEDs on the front of the Roundhouse pointing toward the Roundhouse Turntable (PROX_TX), and three IR LEDs, 1 in the roof of each Bay of Roundhouse Garage (BAY_TX)), two IR-receiving modules (one module on top of clock tower (LONG_RX) and one module in center Bay (BAY_RX)), nine visible-light LEDs (six located in clock face, one at the top of each Garage Bay door), two AA batteries, a speaker, and a SPDT Power Switch. 
         [0112]    In operation, the Roundhouse responds to user interaction (Button press) by playing sound files and transmitting IR Packets. For example, if the user presses the Roundhouse&#39;s Button, the Roundhouse plays a sound file (“It&#39;s a beautiful day in Chuggington”) and transmits an IR Packet (TRAIN_AT_ROUNDHOUSE). The Roundhouse responds to received IR Packets by playing sound files and, in some cases, transmitting IR Packets. For example, a vehicle  18  receiving the IR Packet transmitted in the above example responds by playing a sound file (“Hi Vee!”) and transmitting an IR Packet. Roundhouse responds by playing a sound file (“Hi Wilson!”). The Roundhouse responds to IR Packets from vehicles  18  at locations  100  by playing randomly-selected sound files. For example, a vehicle  18 , in proximity to a location  100 , detects a change in the state of the buttons of the location  100 , based on the TX_MSG byte transmitted by the location&#39;s Beacon. The vehicle  18  plays a sound file (“Loading Chicken,” for example) and transmits an IR Packet (TX_SRC=TRAIN_WILSON, TX_DST=BROADCAST, TX_MSG=CHICKENS) which the Roundhouse responds to by playing a randomly-selected sound file (“Be careful with those chickens!”). The Roundhouse transmits a Beacon using its PROX_TX at regular intervals. Such transmissions can be detected by vehicles  18  in close proximity to the Roundhouse&#39;s Turntable to initiate playing sounds and/or transmitting IR messages to the Roundhouse. For example, Wilson moves onto the Turntable and receives the PROX TX HERE_I_AM signal. Wilson plays a sound file (“Hi Vee!”) and transmits an IR Packet (TRAIN_AT_ROUNDHOUSE). Roundhouse plays a sound file (“Hi Wilson!”). The Roundhouse transmits a Beacon using its BAY_TX at regular intervals. Such transmissions can be detected by vehicles  18  in Roundhouse&#39;s Bays to initiate playing sounds and/or transmitting IR messages to the Roundhouse. For example, a vehicle  18  pulls into one of the Roundhouse Bays and receives the SNORE Beacon transmitted by the Roundhouse Bay IR LEDs. The Train will then play a randomly-selected sound file. The Roundhouse responds to messages from vehicles  18  in Bays. 
         [0113]    The Roundhouse transmits Packets in response to user input (Button press) using the LONG_TX IR LED. The Packet message is HERE_I_AM, broadcast for reception by any vehicle  18  in proximity. The Roundhouse LONG_TX Packet can be detected within a predetermined distance. The Roundhouse Beacon message is transmitted using the PROX_TX IR LED. The Roundhouse Beacon can be detected within a predetermined distance. The Roundhouse Beacon emits IR codes at a time interval which allows detection of the code within a predetermined time period (e.g., every 150 msec.). The Roundhouse begins to emit a Beacon as soon as the power switch is placed in the ON position. The Roundhouse emits a Beacon at a 38 kHz carrier frequency, without interruption due to any other functions performed by the Roundhouse. For example, the Roundhouse continues to emit a Beacon at the determined frequency while it is playing sound files. The Roundhouse stops emitting a Beacon when it enters sleep mode. 
         [0114]    When the Power Switch is moved to the ON position, all variables in the Roundhouse software are set to default values. When the Roundhouse exits sleep mode, it preserves the state of all variables, including the network record. The Roundhouse includes a default state, referred to as the listening state, in which it responds to Button presses and various IR transmissions from vehicles  18 . The Listening Roundhouse transmits a Beacon on its PROX_TX and BAY_TX at regular intervals. The Listening Roundhouse also has a sleep timer, which places the Roundhouse in sleep mode on timeout. Any Button press on the Roundhouse resets this sleep timer. Playing a sound file also resets this sleep timer. Receiving any IR transmission addressed to the Roundhouse also reset this sleep timer. 
         [0115]    The first time the Button is pressed after Power On or on exiting sleep mode, the Roundhouse: (1) plays a randomly-selected sound file, and (2) transmits a Packet with a HERE_I_AM signal in the TX_MSG byte. Every subsequent Button press results in: (1) another sound file being played, and (2) the transmission of HERE_I_AM Packet. 
         [0116]    Messages addressed to a location  100  are relayed from vehicles  18  which are at a location  100  and have detected a change in the status of the location&#39;s buttons. The Roundhouse determines whether to play a sound file, and which sound file to play, based on the TX_SRC, TX_DST and TX_MSG bytes of such transmissions. When in the listening state, the Roundhouse responds to messages addressed to it. Such messages are transmitted by vehicles  18  upon receiving a message from the Roundhouse&#39;s PROX_TX. The Roundhouse responds by playing a randomly-selected sound file determined by the TX_SRC byte of the received Packet. 
         [0117]    The Roundhouse determines whether to further respond to such messages based on the value of a variable (unlockCtr). The unlockCtr variable is incremented each time the Roundhouse receives a TX_DST==ROUNDHOUSE message. The unlockCtr variable triggers a further response from the Roundhouse upon reaching a determined value. Upon reaching the determined value of unlockCtr, the Roundhouse: (1) plays a randomly-selected sound file, (2) transmits a Beacon BAY_BROADCAST message on BAY_TX. The Roundhouse continues to transmit this Beacon message at regular intervals until the Roundhouse receives a TRAIN_IN_BAY message. Upon receipt of TRAIN_IN_BAY message, the Roundhouse transmits UNLOCK_X message. After transmitting the UNLOCK_X message, the Roundhouse delays for three seconds before returning to the listening state. During this delay, the Roundhouse does not transmit a Beacon on PROX_TX or BAY_TX, or respond to any IR transmissions. 
         [0118]    For example, Wilson moves into proximity to Roundhouse and receives Roundhouse HERE_I_AM transmission on PROX_TX. Wilson plays sound file (“Hi Vee!”) then transmits: TX_SRC=TRAIN_WILSON, TX_DST=ROUNDHOUSE, TX_MSG=TRAIN_AT_ROUNDHOUSE. Roundhouse receives this transmission and increments unlockCtr. unlockCtr has reached determined value, so Roundhouse says “You&#39;ve been a hardworking Chugger, pull into a bay to get a new horn!” Roundhouse then begins to Beacon BAY_BROADCAST on BAY_TX. Wilson is moved into one of the Bays and receives the BAY_BROADCAST message. Wilson transmits TRAIN_IN_BAY message. Roundhouse receives TRAIN_IN_BAY message, and says “Here is your new horn!” and transmits UNLOCK_X message. Roundhouse stops BAY_TX Beacons and begins three second delay with no IR TX. Wilson receives UNLOCK_X message and modifies RAM to allow playing previously “locked” sound files in correct circumstances. Wilson is removed from Bay. The Roundhouse three second timer times out, and Roundhouse returns to listening state. 
         [0119]      FIG. 40  illustrates a state diagram of the Roundhouse according to an embodiment of the present invention.  FIGS. 41A-G  illustrate various flow charts of the operation of the Roundhouse according to an embodiment of the present invention. 
         [0120]    In one play scenario, two vehicles  18  can communicate via infrared signals. When Vehicle A is activated (via the switch  24 ), Vehicle A plays a sound file (stored in memory  34 ) from a library of general comments corresponding to Vehicle A and, transmits, via the transmitter  38 , a unique identification signal (e.g., Vehicle A). The identification signal is a code transmitted via infrared that tells a receiving vehicle or component the identity of the transmitting vehicle or component. The receiving vehicle or component must process the received identification signal to determine what next to “say” (such as generate a sound effect or articulate a message) or “do” according to a play pattern. Vehicle A also constantly “listens” for any incoming infrared transmissions (other than those generated by itself). 
         [0121]    When Vehicle B is activated (via the switch), Vehicle B plays a sound file (stored in memory  34 ) from a library of general comments corresponding to Vehicle B and, transmits, via the transmitter  38 , a unique identification signal (e.g., Vehicle B). Vehicle B also constantly “listens” for any incoming infrared transmissions (other than those generated by itself). 
         [0122]    After Vehicle A and Vehicle B have been activated and are positioned in proximity to one another, Vehicle A, which is still “awake” and “listening,” receives Vehicle B&#39;s identification signal. The processor of Vehicle A then checks memory  34  to determine if it recognizes the Vehicle B identification signal. Recognition is determined if a sound file that corresponds to the received ID exists in native memory. After processing, if Vehicle A recognizes the Vehicle B identification signal, Vehicle A can output a sound file (e.g., “Hi Koko” or other phrase, greeting, word, etc.) specifically to Vehicle B and/or perform some other action and at the conclusion of the sound file can transmit an infrared signal that indicates that a sound file has been output by Vehicle A. 
         [0123]    Vehicle B, which is still “awake” and “listening,” also receives Vehicle A&#39;s identification signal. Vehicle B receives the infrared signal that a sound file (e.g., phrase, greeting, word, etc.) has been sent by Vehicle A. Vehicle B then checks memory  34  to determine if it recognizes Vehicle A identification signal. Recognition is determined if a sound file that corresponds to the received ID exists in native memory. Vehicle B then checks memory  34  to determine if it has greeted Vehicle A since power up. If Vehicle B has not greeted Vehicle A, Vehicle B can output a sound file (e.g., “Hi Wilson” or other phrase, greeting, word, etc.) specifically to Vehicle A and at the conclusion of the sound file can transmit an infrared signal that indicates that a sound file has been output by Vehicle B. 
         [0124]    Then, Vehicle A receives the infrared signal transmitted from Vehicle B, and Vehicle A checks memory  34  to determine if it has greeted Vehicle B since power up. If Vehicle A has already greeted Vehicle B, then no further replies or sound files are transmitted by Vehicle A. 
         [0125]    In the event that a Vehicle does not recognize another Vehicle&#39;s identification signal, the receiving Vehicle will transmit a signal requesting any data files associated with the identification signal. A Vehicle that has the data files associated with the particular identification signal will transmit the data files and the receiving Vehicle will store those data files in memory  34  in correspondence with the identification signal. 
         [0126]    For example, Vehicle A receives an identification signal from Vehicle C, but Vehicle A does not recognize Vehicle C&#39;s identification signal (i.e., Vehicle A does not have any sound files associated with Vehicle C&#39;s identification signal). Vehicle A will transmit a signal, which is received by Vehicle C (or other Vehicle in the vicinity of Vehicle A) prompting Vehicle C to transmit a data file containing the sound files (e.g., the sound file is the word “Bob” as spoken in Vehicle A&#39;s voice) associated with Vehicle C&#39;s identification signal via infrared data transfer to Vehicle A. This communication can occur with the high-speed transmitter  38  of Vehicle C and the high-speed receiver  42  of Vehicle A. 
         [0127]    Vehicle A then stores the file in memory  34  in correspondence with Vehicle C&#39;s identification signal. Vehicle A then plays a greeting specifically to Vehicle C (e.g., “Hi Bob”) and at the conclusion of the greeting sends an infrared signal that indicates that a greeting has been sent. 
         [0128]    In the event that Vehicle A receives more than one identification signal within a predetermined amount of time, Vehicle A prioritizes the identification signals according to a pre-set ranking system. If there are only two other vehicles  18 , Vehicle A plays a greeting specifically to each of the other vehicles individually, and at the conclusion of each of the greetings, Vehicle A transmits an infrared signal that indicates that a greeting has been sent. 
         [0129]    If there are more than two other vehicles  18 , Vehicle A plays a general greeting (e.g., “Hi everybody”), and at the conclusion of the greeting transmits an infrared signal that indicates that a general greeting has been sent. When the other vehicles receive a general greeting signal, the other vehicles all respond with a specific greeting (e.g., “Hi Wilson” at substantially the same time). 
         [0130]    The toy train system  10  can include a plurality of level 1 destinations  104 . In one play scenario, upon activation of the switch, the level 1 destination  104  periodically transmits a destination identification signal via infrared. The signal is a short-range infrared signal. The destination identification signal is a code transmitted via infrared that tells a receiving vehicle or other destination  100  or component of the identity of the transmitting vehicle or component. The receiving vehicle or other destination or component must process the received identification signal to determine what next to “say” (such as generate a sound effect or articulate a message) or “do” according to a play pattern. 
         [0131]    When a vehicle  18  is in close proximity to the level 1 destination  104  and receives the destination identification signal, it counts how many times the same signal has been received. If the vehicle  18  does not consistently receive the level 1 destination identification signal enough times to equal about one second of elapsed time then the vehicle  18  can play a sound (e.g., revving sounds, engine sounds, train whistle etc.). This means that the vehicle  18  only received the level 1 destination identification signal for a short period of time and has not stopped at the particular level 1 destination  104 . If the vehicle  18  consistently receives the level 1 destination identification signal enough times to equal about one second of elapsed time, then it is an indication that the vehicle  18  has stopped at the level 1 destination  104 . When the vehicle  18  has stopped at a level 1 destination  104 , the vehicle  18  receives the level 1 destination identification signal and then transmits its own vehicle identification signal in addition to the received level 1 destination identification signal (and other identification signals). This retransmission of the level 1 destination identification signal informs other components of the toy train system  10  that can receive infrared signals that a particular vehicle  18  has arrived at a particular destination. In this way, the various components of the toy train system  10  that receive the infrared signal transmitted by vehicle  18  can determine the status/position of other vehicles  18  and locations  100 . 
         [0132]    If the vehicle  18  has stopped at a level 1 destination  104 , a variety of things can happen based on the state of a particular play pattern. The play pattern can include a task (e.g., the user needs to move the vehicle to certain destinations and/or perform certain activities). The issuance of a task will be discussed in more detail below. In the play pattern, if the vehicle has stopped at a level 1 destination and has not received a task, the vehicle  18  can say something in regards to the level 1 destination (e.g., “Boy, it is dark in this tunnel.”). In the play pattern, if the vehicle  18  has stopped at a level 1 destination and has received a task, the vehicle  18  can output a sound file that either does or does not correspond to the task (e.g., “Ok Vee, I&#39;m at the tunnel just like you asked.”). 
         [0133]    The toy train system  10  can include a plurality of level 2 destinations  108 . In one play scenario, upon activation of a first switch, the level 2 destination  108  periodically transmits a destination identification signal via infrared. The signal is a short-range infrared signal. The destination identification signal is a code transmitted via infrared that tells a receiving vehicle or other destination  100  or component of the signal the identity of the destination transmitting the signal. The receiving vehicle or other destination or component must process the received identification signal to determine what next to “say” (such as generate a sound effect or articulate a message) or “do” according to a play pattern. 
         [0134]    When a vehicle  18  is in close proximity to the level 2 destination  108  and receives the destination identification signal, it counts how many times the same signal has been received. If the vehicle  18  does not consistently receive the level 2 destination identification signal enough times to equal about one second of elapsed time then the vehicle  18  can play a sound (e.g., revving sounds, engine sounds, train whistle, etc.). This means that the vehicle  18  only received the level 2 destination identification signal for a short period of time and has not stopped at the particular level 2 destination  108 . If the vehicle  18  consistently receives the level 2 destination identification signal enough times to equal about one second of elapsed time, then it is an indication that the vehicle  18  has stopped at the level 2 destination  108 . When the vehicle  18  has stopped at a level 2 destination  108 , the vehicle  18  receives the level 2 destination identification signal and then transmits its own vehicle identification signal in addition to the received level 2 destination identification signal (and other related signals). This retransmission of the level 2 destination identification signal (and other related signals) informs other components of the toy train system  10  that receive the infrared signal that a particular vehicle  18  has arrived at a particular destination. In this way, the various components of the toy train system  10  that receive the infrared signal transmitted by vehicle  18  can determine the status/position of other vehicles  18  and locations  100 . 
         [0135]    If the vehicle  18  has stopped at a level 2 destination  108 , a variety of things can happen based on the state of a particular play pattern. The play pattern can include a task (e.g., the user needs to move the vehicle to certain destinations and/or perform certain activities). The issuance of a task will be discussed in more detail below. 
         [0136]    In the play pattern, if the vehicle  18  has stopped at a level 2 destination  108  and has not received a task, the vehicle  18  can say something in regards to the level 2 destination (e.g., “I&#39;m almost empty. I should fill &#39;er up.”). In the play pattern, if the vehicle  18  has stopped at a level 2 destination  108  and has received a task, the vehicle  18  can output a sound file that either does or does not correspond to the task (e.g., “Ok Vee, I&#39;m at the fuel depot just like you asked.”). In addition, the level 2 destination  108  can include an activity that can be performed by the user. For example, the fuel depot has a fuel nozzle that can be removed from the fuel pump and positioned in or near a fuel tank on the vehicle  18 . The fuel nozzle includes a switch that when activated will cause the transmission of a second infrared signal. When the vehicle  18  receives the second signal, a variety of things can happen based on the state of a play pattern and whether the vehicle has received a task. 
         [0137]    After receiving the second signal from the level 2 destination  108 , if the vehicle  18  has not received a task, then the engine can say something related to the action taken at the level 2 destination (e.g., “Mmmm, diesel fuel is my favorite.”). If vehicle  18  has received a task, then the vehicle  18  can output a sound file that the action either does or does not correspond to the task (“Ok Vee, I&#39;ve filled up, just like you asked.”). 
         [0138]    The toy train system  10  can include a plurality of level 3 destinations  112 . In one play scenario, a level 3 destination  112  can communicate with a vehicle  18 . Upon activation of the switch  192  on the level 3 destination  112 , the level 3 destination  112  plays a sound file (stored in memory  176 ) from a library of general comments corresponding to the level 3 destination  112  and transmits, via the transmitter  180 , a unique identification signal (e.g., level 3 destination). The signal is a long-range infrared signal. The destination identification signal is a code transmitted via infrared that tells a receiving vehicle or other destination  100  or component the identity of the transmitting destination. The receiving vehicle or other destination must process the received identification signal to determine what next to “say” (such as generate a sound effect or articulate a message) or “do” according to a play pattern. The level 3 destination  112  also constantly “listens” for any incoming infrared transmissions (other than those generated by itself). 
         [0139]    Vehicle A, which is still “awake” and “listening,” receives the level 3 destination identification signal. The processor of Vehicle A then checks memory  34  to determine if it recognizes the level 3 destination identification signal. Recognition is determined if a sound file that corresponds to the received ID exists in native memory. After processing, if Vehicle A recognizes the level 3 identification signal, Vehicle A can output a sound file (e.g., “Hi Vee” or other phrase, greeting, word, etc.) specifically to the level 3 destination and at the conclusion of the sound file can transmit an infrared signal that indicates that a sound file has been output by Vehicle A. 
         [0140]    The level 3 destination, which is still “awake” and “listening,” also receives Vehicle A&#39;s identification signal. The level 3 destination receives the infrared signal that a sound file (e.g., phrase, greeting, word, etc.) has been output by Vehicle A. The level 3 destination then checks memory  176  to determine if it recognizes the Vehicle A identification signal. Recognition is determined if a sound file that corresponds to the received ID exists in native memory. The level 3 destination then checks memory  176  to determine if it has greeted Vehicle A since power up. If the level 3 destination has not greeted Vehicle A, the level 3 destination can output a sound file (e.g., “Hi Wilson” or other phrase, greeting, word, etc.) specifically to Vehicle A and at the conclusion of the sound file can transmit an infrared signal that indicates that a sound file has been sent by the level 3 destination. Upon receiving Vehicle A&#39;s identification signal, the level 3 destination stores it in temporary memory. This allows the level 3 destination  112  to keep track of which Vehicles are active during any play session. 
         [0141]    If Vehicle A remains in the vicinity of the level 3 destination, Vehicle A continues to receive the infrared signal transmitted from the level 3 destination, and Vehicle A checks memory  34  to determine if it has greeted the level 3 destination since power up. If Vehicle A has already greeted the level 3 destination, then no further replies or sound files are transmitted by Vehicle A. 
         [0142]    A level 3 destination  112  can also communicate with level 1 destinations  104  and level 2 destinations  108 . When a level 3 destination receives a signal from a level 1 destination or a level 2 destination, the level 3 destination can output a sound file (e.g., “The Fuel depot is up and running.”) related to that destination. Upon receiving the level 1 destination identification signal or the level 2 destination identification signal, the level 3 destination stores it in temporary memory. This allows the level 3 destination  112  to keep track of which destinations (e.g., level 1, level 2, and level 3) are active during any play session. 
         [0143]    A level 3 destination  112  also can initiate a task, which is an activity that can be performed by the user in a play scenario. If a user activates the switch  196  on a level 3 destination  112 , the level 3 destination can initiate a task. The level 3 destination  112  checks memory  176  to determine which vehicles  18  and destinations  100  are active. Based on the active vehicles  18  and destinations  100 , the level 3 destination can select a particular vehicle  18  to perform a task at a particular destination and can generate a sound file (e.g., “Wilson, I need you to go to the fuel depot and get filled up.”). The level 3 destination transmits a task signal to the vehicle  18  (e.g., Vehicle A) to perform the selected task that is received by the Vehicle  18  when in proximity to the level 3 destination. 
         [0144]    Vehicle A, which is still “awake” and “listening,” receives the task signal from the level 3 destination, processes the task signal and can respond with a sound file (e.g., “Ok Vee! I&#39;m on my way!”). When Vehicle A is maneuvered through the train set  10 , it receives the level 1 destination signals and level 2 destination signals and retransmits those signals along with its identification signal. When the level 3 destination receives the appropriate signals indicating that the task has been completed, the level 3 destination can respond randomly to the completion of the task. The level 3 destination can generate a signal to initiate another task, generate a signal indicating that Vehicle A should return to the level 3 destination for a reward, and/or generate an audio signal with a congratulatory phrase. 
         [0145]    If the level 3 destination selects to issue a reward upon completion of a task, the level 3 destination can upgrade Vehicle A with new sound effects. The level 3 destination can transmit a signal to indicate that Vehicle A should return to the level 3 destination where new sound files are transferred to Vehicle A&#39;s memory  34  via high-speed infrared data transfer. The new sound(s) can include a new horn, song, word, phrase, etc. 
         [0146]    Upon power up of a level 1 destination  104  or a level 2 destination  108 , the destination transmits a stream of data via infrared signal. The stream of data includes the relevant sound files associated with the destination. For example, the fuel depot (a level 2 destination) streams the words “fuel depot” in each of the character&#39;s (vehicles) voices. If a vehicle  18  is within proximity to receive the data stream during start up, it can identify any data pertinent to its identity and automatically upload the data (if it does not already have it in memory). This means that Vehicle A will only retrieve the words “Fuel depot” in its own voice and store it in memory in correspondence to the fuel depot identification. 
         [0147]    In addition, Vehicle A can retrieve the words “Fuel depot” in the level 3 destination&#39;s voice to be transferred to the level 3 destination the next time that Vehicle A transfers information to the level 3 destination. The temporary storage of the level 3 destination sound file in memory is invisible to the user and is erased from Vehicle A&#39;s memory once it is uploaded to the level 3 destination. This allows the level 3 destination to update its sounds without being in direct transfer proximity to an added destination. 
         [0148]    The foregoing is provided for purposes of illustrating, explaining, and describing embodiments of the invention. Modifications and adaptations to these embodiments will be apparent to those skilled in the art and may be made without departing from the scope or spirit of this invention. Various features and advantages of the invention are set forth in the following claims.