I2C programming EEprom with Flasher ATE

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Hi
      I manage to use the universal flash loader.
      I have downloaded to the Flasher ATE with success
      These files are placed at folder "module002"
      6051.dat
      FLASHER.UNI
      I2CEEPRO.PEX

      I try flash the EEPROM (24LC512) via Telnet

      In telnet I do:
      #status => OK
      #select 2 6051 => OK => ACK
      #selmodule 2 => SELCTED 2
      #auto 2 => ERR255: ERROR while flashing.

      If I FTP to flasher ATE, I can see a file "Flasher.log". In the log is writhed "SN: 1 - Failed"
      Also the flasher has produced another file "Flasher.ini". Inside is writhed:
      [FILES]
      DataFile = "6051.DAT"
      ConfigFile = "6051.CFG"



      What am I doing wrong?

      Attached The 5 file on Flasher ATE

      Thanks in advance
      Bjarne
      Files
      • Flasher.zip

        (2.6 kB, downloaded 6 times, last: )

      The post was edited 3 times, last by Ronald ().

    • Hi Arne

      I tried #select 2 flasher instead but it didn't help.
      Log file says:

      ERROR: Failed to open flasher config file
      SN: 1 - Failed

      Is "port 42" the serial port on Flasher ATE?

      I don't have a serial device. Need to get one before I can do it.(tomorrow).

      Regards
      Bjarne
    • If I do this:
      #select 2 flasher.uni (instead of only #select 2 flasher)
      It still fails, but in log file it says only:
      SN: 0 - Failed

      and the flasher ATE has produced a file more called "Serial.txt"!

      Regards Bjarne
    • Hi
      According to the manual AN08007, extension is not needed:

      You can check if the Flasher ATE is ready to accept commands using the command #status.
      If yes the answer is #STATUS:READY.
      First, choose the project file taht shall be flashed. Use the command: #select [modulenumber]
      [project file name], e.g. #select 1 FLASHER. Repeat the step for every module.
      Note
      The file extensions are added by the firmware.
    • Hi Bjarne,

      file extensions are not to be added for universal flashloader projects, because it uses an .uni file instead of cfg/dat.
      So the extension .uni needs to be added to tell the flasher not to add wrong file extensions.

      Port 42 means the TCP port 42.
      Every module has a target channel on port 40+[module no.]
      This channel is used to get detailed information about the programming process.

      Regards
      Arne
    • Hi Arne

      This is programming commands and respond from Flasher:
      #status
      #ACK
      #STATUS:READY
      #selmodule 2
      #ACK
      #SELECTED:2
      #Select 2 flasher.uni
      #ACK
      #OK
      #auto 2
      #ACK
      #RESULT:2:ERR255:Error while flashing
      #DONE

      Here is output from port 42:

      #STATUS:INITIALIZING
      #STATUS:ERASING
      #STATUS:PROGRAMMING
      #STATUS:VERIFYING
      #ERR100:Verify error at page address: 0x00000000
      #ERR255:Error while flashing
      #STATUS:READY

      I have attached the files located on Flasher ATE

      Regards Bjarne
      Files
      • Serial.zip

        (2.7 kB, downloaded 6 times, last: )
    • Hi Bjarne,

      We checked your file. We found two points:
      1) the page size should be 128 byte as the spec says. But should not be the root cause.
      2) the error, reported in the last post, looks like the write protect pin is set to protected. Can you check that on your hardware?

      Best regards,
      Michael
    • Hi Michael
      According to Data sheet for 24LC025 microchip, the page size is 16! See attachment.
      The HW setup is not write protected. See attachment

      The board with the EEPROM is powered up and supplying the eeprom with 5V
      My connection from flasher is on SCL, SDA and GND. Should I connect 5V pin from flasher too?

      Another thing: Is it possible to get Flasher ATE to add a line feed after each response on telnet?


      Regards Bjarne
      Images
      • 24LC025 data.PNG

        56.24 kB, 481×717, viewed 10 times
      • 24LC025 Schematic.PNG

        9.78 kB, 285×350, viewed 5 times
    • Hello Bjarne,

      the lines SDA, SDL, GND, VTref need to be connected.

      The 24LC512, you mentioned in all posts before, has 128 bytes / page. In case of the 24LC025 the page size should be 16 bytes and you should use the 24C02 device in the Universal Flash Loader project.

      The ASCII command protocol is defined without the LF and only the CR at the end of the line. Most terminal can switch to CR mode only.


      Best regards,
      Michael
    • Hi Arne and Michael

      I'm very pleased. It works now. 5V is king :)

      Now to the next question:

      My data layout is a little bit special:
      For every DUT i have to program, a lot of the data is different. Not only serial number.
      My data layout is 64 byte long and repeated 3 times.
      At byte 2 and 3 there's a Checksum
      At byte 40, 42, 42, 43, 44, 45, 46, 47 i got date and serial number.
      This repeated from byte 64 and from 128

      How is the best way to change these bytes on the flasher. Can I go into the Flasher.dat file on the Flasher ATE and change in these bytes or is there a CRC for this file? (attached flasher_data.png)


      Thanks in advance

      Bjarne
      Images
      • Flasher_data.PNG

        61.22 kB, 717×732, viewed 8 times
    • Godmorning Michael

      I tried the patch way, but it didn't work.

      I have added Patches.txt and Serial.txt Module2 directory. Then did:
      #status
      #selmodule 2
      #select 2 flasher.uni
      #auto 2
      It did program the DUT, but did not use the patches.
      I can see that the Serial.txt was incremented by 1.

      ?:
      Should the flasher ATE not patch all lines in the Patches.txt?
      I can see that despite it has incremented the serial.txt, it has not patched the first line.

      attachment: files from Flasher ATE

      Regards Bjarne
      Files
      • Serial.zip

        (2.97 kB, downloaded 7 times, last: )
    • Hello Bjarne,

      the Flasher programs only one line per target device. If you want to apply more than one patch to a target all patches must be in one line. Or you use the "#auto patch" command and add the patch data after the command.

      Best regards,
      Michael