please refer to fig2 showing the system schematic diagram . the data transmision method according to the present invention can be implemented into the firmware updateable device 13 . the firmware updateable device 13 can be connected to a computer 12 , and the computer 12 is connected into the internet . when the firmware updateable device 13 is connected to the computer 12 , a driving program may be executed for driving the computer 12 connect to the internet and downloading the new version program . for example , the mentioned toy can download the new program to vivify the toy itself by this way . [ 0039 ] fig3 shows the hardware hardware block diagram according to the present invention . the device 13 which is firmware updateable includes a data transmission controller 322 and a flash memory 321 . when the device 13 connects to the computer , the data in the computer or on the web site can be downloaded into the flash memory 321 of the device 13 . after the program or data of the divice 13 is updated , the device 13 may own the new function to perform the best working mode or the best operation effect . for example , the toy updated a new driving program may play the newest sounding , lighting and vibrating effects . [ 0040 ] fig3 showing the data transmission controller 322 is the main application of the present method . the data transmission controller 322 may handle the computer 12 and the flash memory 321 . the relative flowcharts are illustrated in fig4 and fig5 . [ 0041 ] fig4 is the control flowchart to the interface port , including following steps . s 41 : begin . the initialization of the data transmission controller may be executed . s 42 : enter the standby mode . the user may plugs the connector of the device 13 which is firmware updateable in the computer for obtaining the newest version software . whe the device is plugged in , the data transmission controller will detect the change of the status of the input signal . if the status of the input signal is not changed , that represents the connector is not plugged in , so the standby mode is remained . s 43 : if the connect is plugged in , the data transmission controller will detect the types of the connector , then the data transmission will work with the specific communication method of the connector . if the rs232 connector is detected , the data transmission will work with the protocol of rs232 . in the same , the parallel ports or the usb port may be detected and communicated . the parallel data transmission may be sorted as uni - direcion , bi - direction , ecp , epp , etc . the data transmission controller may detect the variety of connectors and communicate with each connector . s 44 : after the transmission interface port is detected , the data may be transmitted with the indicated connector . s 45 : before receiving the data , a command may be sent for telling the computer the length of data or the baud rate of the transmission . therefore , a piece of data may be checked to confirm whether it is a command format or not . s 46 : if a command is found , the decode to the command will be performed . the commands have many kinds , so a command may be executed after the command are decoded . s 47 : the execution result will be sent to the computer , and the next command may be waited for or the ending process may be executed . s 48 : wait for the change of the next signal ten seconds . if the signal is always no response or changed during this ten seconds , then go to s 42 for standby . if the signal have response , go to s 43 for receiving data . [ 0050 ] fig5 is the flowchart for the flash memory data transmission , including steps of : s 51 : before writing data to the flash memory , the flash memory must be set into the write - in mode . s 52 : read 4 k data from the computer once . s 54 : if the checksum is wrong , the data received may have some problems . s 55 : if the checksum is right , the data may be writed into the flash memory . after writing data into the flash memory , the fast mode and the typical mode may be choosed . the fast mode will pass the checksum of the 4 k data , and the typical mode must do the checksum process . if the fast mode is set , jump to s 59 . s 56 : if the typical mode is choosed , then set the flash memory as the read - out mode . s 57 : read the 4 k data to check the checksum . s 59 : if the checksum is right , the 4 k data writed into the flash memory are accurate . if the checksum is wrong , the 4 k data may have some problems . the functions to be attained according the present invention are as follows : 1 . the computer interface protocol control . when the data is being transmitted , the basis seting of the computer interface may be detected , so the relative protocol or baud rate may by responsed . when the parallel ports are detected by the firmware control program of the data transmission controller 322 , the uni - direction , bi - direction , ecp or epp may be detected . during the detection of the serial port , the baud rate may be detected . finally , the data transmission may be performed with a suitble firmware program . 2 . the data transmission direction control . the data transmission of the control flowchart is bi - directional . the data of the computer can be downloaded to the flash memory and that of the memory can be uploaded to the computer . speaking to the toy , the download data may be the newest version software , the upload data may be the internal status or the score of the toy . 3 . the data serial conversion . when the data of the computer is downloaded , the serial data received by the serial port can be converted into the data format which can be programmed or written into the serial flash memory , or the 4 bits nibble of parallel data received by the parallel port can be converted into the format which can be programmed or written into the serial flash memory . 4 . the error detection and data recovery of data transmission . after the data is written into the flash memory , the error can be detected by the crc checksum of “ ccitt generator polynomial ” crc - 16 : x ^ 16 + x ^ 12 + x ^ 5 + 1 . if the control program finds the checksum error during the download process from the computer to the flash memory , the web site server can be informed to send the data again in order to implement the function of data recovery . during the data transmission , the data block size may be 4 k bits , 8 k bits or 16 k bits . the data may be resent five times . the data transmission will be regarded as failed over five times . 5 . the flash memory read & amp ; write control . the read & amp ; write control of the present invention may be applied to the winbond serial flash memory w55fxx . the flash memory read & amp ; write data process is controlled efficiently , so the application to the toys may be utility and convenient . while the invention has been described in terms of what are presently considered to be the most practical and preferred embodiments , it is to be understood that the invention need not be limited to the disclosed embodiment . on the contrary , it is intended to cover various modifications and similar arrangements included within the spirit and scope of the appended claims which are to be accorded with the broadest interpretation so as to encompass all such modifications and similar structures .