Author Topic: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.  (Read 11051 times)

0 Members and 2 Guests are viewing this topic.

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
I am currently trying to program an STMicroelectronics 93C46 EEPROM from my car alarm buzzer.

https://ww1.microchip.com/downloads/en/devicedoc/doc5140.pdf
https://www.st.com/resource/en/datasheet/m93c46-w.pdf

The EEPROM is set up in 128 x 8 config with ORG tied to ground.

I disordered the chip and have it soldered to a carrier connected to my CH341A mini programmer.

I have both the Serial and Parallel drivers installed, and I am trying to use both AsProgrammer v2.1.0.13 and NeoProgrammer V2.2.0.8 but neither seem to work to write the chip.

I have tried a bunch of other CH341A programming softwares as well and they all hang at the write stage.

I have been able to successfully read the memory and back it up to a bin file.

I made the required changes and have been trying to now flash the memory but all it seems to do is hang on the programming memory stage.

I was able to blank erase the EEPROM and do a blank check and that is fine but wont go past the programming part. Both AsProgrammer and NeoProgrammer do the same. The Run led on the CH341A is lit but no actual progress bar change.

I tried adding a 10k resistor between CS and GRD based on some post I found online but no changes were made to writing error.

I have done a continuity check between all the pins on the IC and the headers on the programmer and they are all connected.

I have read the voltage and I am getting 5V (4.97V measured).

 

Offline wraper

  • Supporter
  • ****
  • Posts: 17817
  • Country: lv
Try adding decoupling cap across its power pins. I wouldn't be surprised it fails due to long wires causing unstable power.
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
I just tried using the shortest wires I have and adding a capacitor.

No luck. Same issue hanging on write.
 

Offline fzabkar

  • Super Contributor
  • ***
  • Posts: 2735
  • Country: au
Does DO remain low (= BUSY)?

Can you write anything at all, or does it hang after the first byte/word?
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
When I try to write;

  • CS is 4.78V
  • CLK is 0V
  • DI is 4.97V
  • DO is 0.197V
  • VCC is 4.97V

I can't write anything. I tried changing a random bit in the buffer as well as trying to write a bin I saved and neither work.

Software just hangs with the log showing:

Code: [Select]
Current programmer: CH341
1:37:00
Verify memory...
Success
Execution time: 00:00:00.094
Current programmer: CH341
1:37:00
Programming memory...

 

Offline fzabkar

  • Super Contributor
  • ***
  • Posts: 2735
  • Country: au
For some reason, the EEPROM remains Busy.

Where does DO (Q) sit when the chip is idle?
« Last Edit: January 27, 2024, 09:30:46 am by fzabkar »
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Just plugged in at idle, no commands given;

  • CS is 2.94V
  • CLK is 4.95V
  • DI is 4.96V
  • DO is 4.97V
  • VCC is 4.98V
 

Offline fzabkar

  • Super Contributor
  • ***
  • Posts: 2735
  • Country: au
That's a head scratcher. I have no idea what is going on. Sorry.
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
I made another janky looking adapter to plug directly into the socket but no change. still the same issue.

 

Offline wraper

  • Supporter
  • ****
  • Posts: 17817
  • Country: lv
Although I have CH341 programmer, I used it like once or twice more than a year ago. Try looking if software has some programming speed related options.
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #10 on: January 27, 2024, 07:32:46 pm »
My latest test. I forgot that the socket is 3.3V VCC. I added a jumper to the VCC line to the 5V header.

I am now able to get it to pass the write stage but it doesn't actually write. The chip is still black after verify stage is run.

 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 6317
  • Country: es
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #11 on: January 27, 2024, 07:44:50 pm »
Check under programming if Protect OFF is set.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #12 on: January 27, 2024, 08:12:58 pm »
There is a Lock button but it is not clickable with or without the EEPROM plugged in.

Only options when programming are  Erase, blank check, write, verify.

 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 6317
  • Country: es
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #13 on: January 27, 2024, 08:15:09 pm »
Then try the lock button. Cannot remember where, but there's a lock/unlock option somewhere.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #14 on: January 27, 2024, 08:20:59 pm »
Like I said previously it is there but not clickable. It does nothing.

There are no other write protection options.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 6317
  • Country: es
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #15 on: January 27, 2024, 08:30:39 pm »
What other options are available in the erase button?
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #16 on: January 27, 2024, 08:36:32 pm »
I thought maybe I had it wrong based off the PCB circuit being too damaged so just for fun I removed ground from the ORG pin so that it would be in X16 configuration and I can still read the chip with both AsProgrammer and NeoProgrammer, but I cannot erase the chip with NeoProgrammer

There are no other options under erase other than blank check.

I can't tell if I have a hardware or software issue that it is preventing it from writing. I purchased some new 93C46 EEPROMs to see if I am able to write a different one.

CH341A is the only programmer I have.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 6317
  • Country: es
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline Psi

  • Super Contributor
  • ***
  • Posts: 10324
  • Country: nz
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #18 on: January 27, 2024, 09:23:03 pm »
If you try to write the same value already at the address does it still fail?
« Last Edit: January 27, 2024, 09:24:37 pm by Psi »
Greek letter 'Psi' (not Pounds per Square Inch)
 

Offline Psi

  • Super Contributor
  • ***
  • Posts: 10324
  • Country: nz
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #19 on: January 27, 2024, 09:27:41 pm »
If you unsoldered this from a car alarm there is a possibility this IC is not 100% the same as what you think based on markings that say 93C46.

It could be a custom sku of the 93C46, or maybe it has a silicon fault and was sold cheap to specific customers along with documents that provide a work-around.
Perhaps there is a mark on the IC to indicate this but only the manufacturer can tell and to anyone else it looks like a date code.
i.e, It may appear to be a 93C46 but not actually match the datasheet exactly.

Maybe order a new official chip and try that,  assuming the car alarm just reads the chip and it sounds like you can read it that should still work fine.
« Last Edit: January 27, 2024, 09:35:19 pm by Psi »
Greek letter 'Psi' (not Pounds per Square Inch)
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #21 on: January 27, 2024, 10:10:35 pm »
If you unsoldered this from a car alarm there is a possibility this IC is not 100% the same as what you think based on markings that say 93C46.

It could be a custom sku of the 93C46, or maybe it has a silicon fault and was sold cheap to specific customers along with documents that provide a work-around.
Perhaps there is a mark on the IC to indicate this but only the manufacturer can tell and to anyone else it looks like a date code.
i.e, It may appear to be a 93C46 but not actually match the datasheet exactly.

Maybe order a new official chip and try that,  assuming the car alarm just reads the chip and it sounds like you can read it that should still work fine.

It's not from the full alarm just the alarm buzzer. These are from cars built 20 years ago but we're still used till about 2013. There are a few cars that use the same unit but there is a difference in the firmware on the bios for how the alarm operates when the car is locked. One unit is incredibly expensive and the other is very cheap. All fail the same way due to the internal NiCad batteries failing and destroying the PCB as seen in the pictures I posted.

It was proven by a few people that they were able to read the 93C46 of the expensive unit and flash the cheaper unit getting the same operation. They don't explain their setup just that they used ponyprog.

Another person is also able to do it but he will not explain how he does it because he sells flashed units for half of the expensive unit price but still 10x what I paid for a used buzzer on eBay.

I'm just trying to grab the firmware I saved from my unit and reflash it.

The issue is I was able to backup the firmware but I can't write it back to the chip. Doesn't matter if I try to flash 1 but or try to flash the full recovery file I made.

I measured the ORG pin on the PCB of the good buzzer and it looks like it has continuity with VCC not ground like the damaged PCB. So now I think I was wrong and it is actually in X16 configuration.

I rewired the 93C46 for X16 with ORG tied to VCC with a 10K resistor.

I am still able to read in both programs but NeoProgrammer will not erase and still neither will write.

I hope I am being as clear as possible.
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #22 on: January 28, 2024, 01:28:31 am »
Maybe not super helpful but I was able to grab a 24C08AN EEPROM off a random scrap PCB I found and I was able to read, save, and write to it no issues.

I was able to modify the buffer and write, and I was able to write a backup of the memory back to the EEPROM.

I guess it must be an issue with 93C46 itself. The board was very heavily damaged as you can see in my first post.

Maybe I just have to wait till I get a new chip and see if it has the same write issue.

Otherwise I have no idea what I am doing wrong.
 

Offline Chooch_FiestaTopic starter

  • Contributor
  • Posts: 15
  • Country: ca
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #23 on: January 29, 2024, 11:20:10 pm »
I was able to solve the programming issue now I just need to determine if the chip is written as X8 or X16.

In the original post I thought it was X8 because I measured the ORG pin connected to ground but I believe that the alarm circuit on the PCB was just too damaged and there was a short.

I measured (and looked) and the good PCB has the ORG pin in continuity with VCC.

Also based on the image that the person who said they were able to do it before using PonyProg, they have there buffer window showing 16x hyphenated  strings of bits.

Would I be correct that the EEPROM is actually X16 config and not X8? If I flash it in one config and test it shouldnt hurt to flash the other as well and try again if it doesn't operate properly.

 

Offline Psi

  • Super Contributor
  • ***
  • Posts: 10324
  • Country: nz
Re: Need Help Programing an 93C46 EEPROM. I Can Read and Erase But Not Write.
« Reply #24 on: January 30, 2024, 07:04:17 am »
I wouldn't trust how it displays in the app to mean anything.
I've not played with ponyprog but you can probably set it up to display however you want.
I doubt it means anything about the chip data it read.

« Last Edit: January 30, 2024, 07:06:43 am by Psi »
Greek letter 'Psi' (not Pounds per Square Inch)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf