Announcement

Collapse
No announcement yet.

Which ic generally used for software updates?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #21
    Re: Which ic generally used for software updates?

    The 343S0479 chip (U3000) appears to handle HDMI port. I would think that it is responsible for video processing.

    Check the voltage levels at D6510 and D6511.
    Last edited by fzabkar; 05-26-2016, 04:24 PM.

    Comment


      #22
      Re: Which ic generally used for software updates?

      When an EEPROM goes bad, what part of it goes bad? Is it the chip or the program? I have one I think is going bad because it turns on sometimes and sometimes it don't. So I was able to copy the program to a new IC. I have not had time to test it but it does turn on and work good. I just did it about an hour ago.

      Comment


        #23
        Re: Which ic generally used for software updates?

        the content is stored in thousands of tiny capacitor like cell's
        the energy can slowly dispate until it's difficult to tell a 0 from a 1.
        data retention minimum is listed in the datasheet.

        if it's working sometimes, spray it with freezer and then read it out.

        Comment


          #24
          Re: Which ic generally used for software updates?

          That did not answer the question. What part is going bad? I already read the EEPROM and saved it to my computer but no good if the information is corrupt.

          Comment


            #25
            Re: Which ic generally used for software updates?

            I got a Emerson LED TV that turns on sometimes. I don't have the correct program so I was hoping a copy to a new EEPROM would fix it. I am not sure if it will. I have to ship it to a friend and I don't want to release it until I am sure.

            Comment


              #26
              Re: Which ic generally used for software updates?

              so freeze the eeprom and if it works every time it's cool, you found the problem

              sometimes the chip can fail,but 99% of the time - the data is corrupt.
              i dont have a crystal ball - i have test and diagnostic tools and methods.

              Comment


                #27
                Re: Which ic generally used for software updates?

                Update; So far the EEPROM is working. I copied the program to a new IC and it has been 2 weeks and the TV has not acted up.

                I also came across a TV today that uses a NAND Flash IC instead of a EEPROM. I wanted to copy it but I don't have the equipment for it. It is a Vizio M420SL

                Comment


                  #28
                  Re: Which ic generally used for software updates?

                  A good engineer will ensure that the EEPROM contents are checksummed. OTOH, NAND flash uses spare bytes for storing the ECC of each block.

                  Can you upload the EEPROM dump here? I would be interested in analysing it.

                  Comment


                    #29
                    Re: Which ic generally used for software updates?

                    Upload the EEPROM from the Emerson or the NAND of the Vizio? I can not do anything with the NAND. Here is the Emerson EEPROM BIN file.
                    Attached Files

                    Comment


                      #30
                      Re: Which ic generally used for software updates?

                      I couldn't find any obvious checksum.

                      I normally look for checksum bytes at the beginning and end of the EEPROM. Alternatively I look for blocks of memory with a lone byte or word at the end of the block. I also tried 8-bit, 16-bit and 32-bit sums, but these were non-zero.

                      I did find some JPEG images, though.

                      Code:
                      address range   content
                      -----------------------------------------------------------------------------
                      1BD28F - 1BD6AF  white Emerson logo on black background (160 x 90 pixels)
                      1BC750 - 1D21F5  white Emerson logo on black background (1366 x 768 pixels)
                      
                      1D2200 - 1D2795  white MAGNAVOX logo on black background (160 x 90 pixels)
                      1D2200 - 1E84C0  white MAGNAVOX logo on black background (1366 x 768 pixels)
                      
                      1E84C8 - 1F7BAF  butterfly (956 x 537 pixels)
                      1F7BB8 - 20C0FA  penguins (956 x 537 pixels)
                      20C100 - 21C65A  3 female faces (956 x 537 pixels)
                      21C660 - 22CEB8  3 female faces - right half darkened (956 x 537 pixels)
                      I also dumped the text strings in a CSV file.

                      If we could find the checksum byte/word, then you could insert your own JPEGs and recompute the checksum to suit. I have done similar things with the logo screen in two of my DVD players. Lots of fun. :-)
                      Attached Files

                      Comment


                        #31
                        Re: Which ic generally used for software updates?

                        WHAT! You pulled those pictures out of the file? Man, that is awesome. So I want to learn how to edit the file. I have been wanting to.

                        Also I have this TV that has a error with the EEPROM, in fact it was designed with the error. And instead of Insignia fixing the problem they just turned there back on everyone who bought the TV. The TV goes into the color test pattern and no matter what you do it can't be fixed. You can not replace the EEPROM because a good one does not exist. Do you think it is possible to disable the color test pattern or remove it completely? You can press exit on the remote but after 5 seconds to 5 minutes it always comes back again.

                        Comment


                          #32
                          Re: Which ic generally used for software updates?

                          How do you edit the EEPROM

                          Comment


                            #33
                            Re: Which ic generally used for software updates?

                            To examine and edit the file you need a hex editor. I use HxD (freeware, 2009) but there are many others. A very popular commercial tool is WinHex.

                            https://mh-nexus.de/en/hxd/

                            JPEG files have a distinctive header such as the following:

                            Code:
                            Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
                            
                            00000000 FF D8 FF E0 00 10 4A 46 49 46          ÿØÿà..JFIF
                            To locate these headers, you would search your EEPROM file for the hexadecimal string "FF D8 FF E0".

                            A JPEG is terminated by "FF D9".

                            Code:
                            Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
                            
                            0000F6E0 1A 07 D8 8B 3B 3F FF D9
                            Once you have located the start and end of the JPEG section, use HxD to carve out this section (Edit -> Select Block) and paste it into a new file (File -> New & Edit -> Paste).

                            Editing the EEPROM file is not as simple as pasting new content over the old. You would need to recalculate one of more checksum bytes. This is because the microcontroller would need some way to confirm the integrity of the EEPROM contents. One way it does this is by adding up all the bytes and comparing the result against a checksum. If the checksum doesn't match, then the EEPROM has one or more bad bits. Usually this means that the TV doesn't boot.

                            Just to illustrate how complicated the algorithms can be, here is an example which contains numerous checksums:

                            Analysis of Micron RealSSD C400 Self-Encrypting Drive (SED) SSD Firmware Update:
                            http://www.hddoracle.com/viewtopic.php?f=59&t=1617

                            The above example is relatively simple because it is based on 8-bit sums, albeit several of them, but there are much more complicated setups. For example, my Sunplus based DVD players encode the EEPROM contents.

                            As for disabling test patterns, etc, ISTM that you would need to alter the program code, not just the data sections as I have described above. That's something that I couldn't do. In the Sunplus case, OEM manufacturers are given a software tool which allows them to configure various options, eg the key map for the remote control, the button functions on the front panel, enable/disable features such as USB.

                            I use TextScan by AnalogX to extract text strings from BIN files:

                            http://www.analogx.com/contents/down...n/Freeware.htm
                            Last edited by fzabkar; 06-17-2016, 01:35 PM.

                            Comment


                              #34
                              Re: Which ic generally used for software updates?

                              Originally posted by Shane711 View Post
                              Also I have this TV that has a error with the EEPROM, in fact it was designed with the error. And instead of Insignia fixing the problem they just turned there back on everyone who bought the TV. The TV goes into the color test pattern and no matter what you do it can't be fixed. You can not replace the EEPROM because a good one does not exist. Do you think it is possible to disable the color test pattern or remove it completely? You can press exit on the remote but after 5 seconds to 5 minutes it always comes back again.
                              Are you certain that the TV isn't sending the TCon into test-pattern mode as a consequence of some failure in the system?

                              Comment


                                #35
                                Re: Which ic generally used for software updates?

                                Every single Insignia TV of this model does the exact same thing, everyone ever made. I will have to get you the model number.

                                I will have to experiment with the hex editor

                                Comment


                                  #36
                                  Re: Which ic generally used for software updates?

                                  If you upload your Insignia EEPROM to a new thread, perhaps we could examine it together.

                                  Comment


                                    #37
                                    Re: Which ic generally used for software updates?

                                    Wow

                                    This is interesting, I wanted to learn this stuff but I thought it was harder. I have programmed in Basic before but never messed with machine language or Hex. I found the pictures in the BIN file as you described. It seems the stuff to the right is just information and not the program.

                                    I guess my next step is to start educating myself.

                                    I will get that TV on my work bench with the bad EEPROM and upload the file.

                                    Comment


                                      #38
                                      Re: Which ic generally used for software updates?

                                      When a company writes these files, do they do it with a HEX editor or do they have a program that simplifies the process? I can see all these HEX and I have been reading and I understand they are from 0 to 255 but then I do not know what order they have to be in and such. I have to take a break or I am going to fry a brain cell.

                                      Comment


                                        #39
                                        Re: Which ic generally used for software updates?

                                        The content of the EEPROM consists of one or more programs plus several data blocks. These programs determine the functionality of the TV. The data blocks would probably include key maps for the remote control. They might also include the definitions for the various menus. Also, the TV would need storage space for the various factory configuration settings plus user settings such as volume, brightness, contrast, etc.

                                        When the TV powers up, the microcontroller copies the contents of the EEPROM into SDRAM and then transfers program control to the code in SDRAM.

                                        Comment


                                          #40
                                          Re: Which ic generally used for software updates?

                                          To give you some idea of how the EEPROM space is divided, search for the hex bytes "00 00 BE EF". This is a genuine hexadecimal number. Such numbers are often used by programmers to terminate blocks of code or data. "DEAD BEEF" is another such number.

                                          Here is one example:
                                          Code:
                                          Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
                                          
                                          0022D8B0            00 00 BE EF 00 00 00 0D A8
                                          0022D8C0 ED D8 B1 09 80 40 0C 05 D0 58 08 82 A5 8D A5 A5
                                          0022D8D0 13 38 80 BD ED CD 73 A3 1B 4E 70 89 BC 3C 42 E0
                                          0022D8E0 AE FB E5 BF 9F D6 63 CC 95 7B E6 B6 39 62 C9 3B
                                          0022D8F0 C5 3E DE 8F FC DF D6 6F FF E9 00 00 00 40 01 3A
                                          0022D900 00 00 00 00 28 D2 01 88 00 00 00 00 4A 54 00 32
                                          0022D910 00 00 00 80 22 1D 80 10 00 00 00 A0 48 09 20 03
                                          0022D920 00 00 00 28 D1 01 88 00 00 00 00 4A 54 00 32 00
                                          0022D930 00 00 80 22 1D C0 0B 56 80 00 00 BE EF

                                          Comment

                                          Working...
                                          X