Replace EEPROMs with FLASH Memory from Scratch

  Рет қаралды 20,733

Slu4

Slu4

Күн бұрын

Пікірлер: 71
@justrandom7214
@justrandom7214 2 жыл бұрын
Massivly underrated channel...
@slu467
@slu467 2 жыл бұрын
Thanks for pointing this out ;-)
@manuelmelguizo5739
@manuelmelguizo5739 3 жыл бұрын
Dude, you just saved me the 50 bucks a cheap eeprom programmer costs. And I can get the flash from a local store for around 2.50€, no need order from China and wait around. Thank you so much!
@slu467
@slu467 3 жыл бұрын
Glad you like it :-)
@ucmRich
@ucmRich 4 жыл бұрын
0 . 0 I been hoping to find a video for this :-D i got a million ideas that would be great for this level of vast overall improvements, thanks man ^_^
@slu467
@slu467 4 жыл бұрын
Glad I could help!
@1malditoPerro
@1malditoPerro Жыл бұрын
Thanks for sharing your project. Really needed something like this to reflash and fix a corrupted SST39SF010A
@chrisskyr623
@chrisskyr623 3 жыл бұрын
thanks for this video I am wanting some kind of storage for my projects and I was think to buy eeprom but after this video I searched for flash and I find it cheeper with more capacity Thanks : ) : )
@slu467
@slu467 3 жыл бұрын
Glad it helps your projects! FLASH opens up a whole new door...
@NotMarkKnopfler
@NotMarkKnopfler Жыл бұрын
Interesting video. I tend to use FRAM in my designs. All the benefits of flash, but can withstand literally billions of random-access writes - no flash pages to worry about. All my designs that need to persist data use them via an I2C interface. Simple. They cost more than regular flash, though.
@slu467
@slu467 Жыл бұрын
Thanks for pointing me in this direction. I will look into it.
@NotMarkKnopfler
@NotMarkKnopfler Жыл бұрын
@@slu467 No problem at all. I normally use an 8Kx8bit version, the FM24CL64B-GTR. However, there is a nice 32Kx8 version, the MB85RC256V (Fujitsu). From the datasheet: "The MB85RC256V is an FRAM (Ferroelectric Random Access Memory) chip in a configuration of 32,768 words × 8 bits, using the ferroelectric process and silicon gate CMOS process technologies for forming the nonvolatile memory cells. Unlike SRAM, the MB85RC256V is able to retain data without using a data backup battery. The read/write endurance of the nonvolatile memory cells used for the MB85RC256V has proved to be at least 10 to the 12 cycles, significantly outperforming other nonvolatile memory products in the number. The MB85RC256V does not need a polling sequence after writing to the memory such as the case of Flash memory or E2 PROM." You just treat it like simple random access memory - because it is! You never need to worry about write cycles/number of writes. I'm done with Flash! 😀
@Kitsuinox
@Kitsuinox Жыл бұрын
I thought of doing the same since a serial FRAM would work for storing data to be accessed by an mcu or a cpu, but if you intend to use it to store, let's say, microcode on it then you probably will need a LOT of circuitry just to interface it
@tristunalekzander5608
@tristunalekzander5608 3 жыл бұрын
Great video, after buying the same flash chip as you to experiment with, I have found that one of the things you didn't mention is despite being faster for writing something a single time and _only_ reading from it, when you need to update that data, if even just a single byte, you need to erase _the entire sector,_ which in your case is 4KB, which takes _18 ms,_ 18 times slower than an eeprom write, right? Not to mention the fact that you'd need to copy that 4KB sector to some other area and then rewrite it back into the updated sector if you don't want to lose what was already in that sector, and then erase the copy. And you've got to write to at least like 4 registers every single time you want to write something even if writing to fresh empty registers. To me it seems the only real advantage of it is that you can re-write the entire chip faster than re-writing to an entire eeprom, so you can test your new code faster. I mean, if the goal is to have a _simple_ yet _independent_ computer that can program itself, I don't see any benefit to using flash, it is actually slower than eeprom in many situations and also way more complicated.
@slu467
@slu467 3 жыл бұрын
Thanks for digging into this! Of cause you are right, but try to buy a standard EEPROM with 512KB for that price ;-)
@tristunalekzander5608
@tristunalekzander5608 3 жыл бұрын
@@slu467 Yes that has since become apparent to me lol I actually can't find any of that size anywhere and the ones that are close are really expensive. The best deal I can find is 64KB for about a dollar a piece, though you have to buy ten of them at a time from Ali-express. Even digi-key has a very poor selection of eeprom. I'm currently torn between having a smaller ROM with easier memory management or a larger flash ROM that's way more complicated to use both in design and probably in writing software for it too. I even considered wiring up multiple eeproms with some logic gates to increase their effective size. Though this would be messy and I am too OCD for that haha
@slu467
@slu467 3 жыл бұрын
@@tristunalekzander5608 Hmm, the FLASH I've used does not require any additional design consideration compared to the eeprom. It's just the software thing and that isn't too bad either. Have you seen my video about a "poor man's SSD file system on a FLASH IC"? For me that's the solution.
@tristunalekzander5608
@tristunalekzander5608 3 жыл бұрын
@@slu467 I did not see that video but I just watched it :) you're right it's just extra software you have to write. I'll have to look at the datasheet again as I got overwhelmed when I thought I was understanding it and then I saw something about something getting latched every sixth pulse lol wtf? You have reassured me that it isn't that bad, thank you.
@tristunalekzander5608
@tristunalekzander5608 3 жыл бұрын
@@slu467 So are you executing from RAM? I'm planning on executing from ROM and I can't see how it wouldn't need new hardware because I don't think you can read in between the flash commands.
@UpcycleElectronics
@UpcycleElectronics 3 жыл бұрын
Awesome upload!
@slu467
@slu467 3 жыл бұрын
Thanks for the visit
@Pax-Z80
@Pax-Z80 5 ай бұрын
Thank you, I tried to use TommyProm32 drawing, but yours is way more clear and therefore easy to copy. Any chance your pcb is at pcbway in the share factory?
@scome98
@scome98 8 ай бұрын
Excellent. Where can I find details about prom.exe? I have no clue where to even start sending data without it. :-)
@slu467
@slu467 8 ай бұрын
Just follow the links in the description...
@paulvanlit
@paulvanlit 3 жыл бұрын
Third time is a charm; tried to put a question here 2x but it keeps being deleted ? I Really like your 'Minimal' and the various concepts that make it. On and of I'm working on a ScottCPU and I have the 29EE010 iso the 39SF010. I've tried your Sketch/C++ but have yet to succeed in programming it; It might be the timing, or maybe it is another IC than it states, because I can program it with a TL866II+ only when I turn off ChipID recognition. Question is there to your knowledge a reason why I could not use the 29EE010 (with similar program instructions) in the same way you use the 39SF010 in your 'Minimal' as ROM/Flashdrive? Thx for any hints, KR Paul
@slu467
@slu467 3 жыл бұрын
Hi Paul, I do not have any experience with the model you've mentioned. So I can't be of any help here. In any case take a very close look at the datasheet. There should really be everything in it you need no know. Good luck! Let me know how it goes.
@paulvanlit
@paulvanlit 3 жыл бұрын
@@slu467 Ok it was more to check whether I could use that similar built EEPROM the same way as you did with the Flash. (even somewhat easier because it does not have to be set from the 1 state start). But thx anyway and succes with you great Videos.
@AndersNielsenAA
@AndersNielsenAA 3 жыл бұрын
Ha! I independently designed my own with a Nucleo64-board and made a pcb hat for it - no 595’s needed :)
@mlann2333
@mlann2333 Жыл бұрын
The Flash programmer works fine as long as Windows assigned the Nano a low number com port. My Arduino Nano was assigned com31 as I have loads of other FTDI based devices and prom.exe finds the port but can't open it. I had to reassign it to COM port 1 in device manager for it to work. I think C++ needs some workaround for com port numbers >9.
@slu467
@slu467 Жыл бұрын
Had the same problem, too, and couldn't come up with a fix.
@1malditoPerro
@1malditoPerro Жыл бұрын
com ports greater than 9 need \\.\ prefix is what I read somewhere so it should be referenced as \\.\COM9 \\.\COM31 etc@@slu467
@hassanzahin1534
@hassanzahin1534 4 жыл бұрын
Awesome
@slu467
@slu467 4 жыл бұрын
Glad you like it!
@rjameslower
@rjameslower 2 жыл бұрын
But what if I need for 3.3v ? It is better look for another memory? Or level shifter?
@faristabakovic147
@faristabakovic147 5 ай бұрын
How to upload code from flash mamory to arduino or esp32? I mean how to use flash memory as bootloader.
@BoostedNW
@BoostedNW 10 ай бұрын
Where's the C code for the console app?
@stupossibleify
@stupossibleify 3 жыл бұрын
Always assumed FLASH memory wasa completely different beast to EPROM, beyond the reach of hobbiests
@slu467
@slu467 3 жыл бұрын
Actually it is a lot more versatile and in many cases a much cheaper replacement...
@mtechzervis5071
@mtechzervis5071 Жыл бұрын
I request sir, how to flash ec,io sio like svod and vertyanov laptop with arduino
@Evo2920
@Evo2920 Жыл бұрын
Can I program it with Arduino?
@slu467
@slu467 Жыл бұрын
My little FLASH programmer uses an Arduino Nano 🙂
@Evo2920
@Evo2920 Жыл бұрын
@@slu467 which one you can recommand it to me as a beginner to start with? I had experience using the Arduino 😃
@paulkirchhof9546
@paulkirchhof9546 3 жыл бұрын
Did you know a way to create a HDMI Signal with the nano and 512 KB RAM and two Shift-registers? Video 1920x1080 with 60Hz have a Pixel-clock of about 8 MHz if you take a 16Bit Shiftregister. You don’t need a HSYNC or VSYNC. The pixel clock need a RAM with only 60 ns access time. This is my idea because VGA Monitors are not up to date. A good way to have a video signal for a modern 27“ monitor.
@slu467
@slu467 3 жыл бұрын
Hi Paul, that sounds interesting! I might look into this :-)
@promods1457
@promods1457 3 жыл бұрын
He talks like the GreatScott
@StevenSherman-kr4xm
@StevenSherman-kr4xm Жыл бұрын
Has any one had luck modifying the code to work on the nano every? PIND throws an error.
@slu467
@slu467 Жыл бұрын
Hmm, I haven't tried the Every but they say it should be pretty much compatible to the Nano 3.0. I may buy one and experiment a bit though... My code doesn't use any fancy features of the ATmega328... and PIND is sooo standard...
@StevenSherman-kr4xm
@StevenSherman-kr4xm Жыл бұрын
@@slu467 annoyingly while the Every is physically pin compatible with the older Nano, the labeling of pins on the software side is different. Should be a straightforward 1 for 1 translation. I was more surprised it was an issue than too worried about fixing it
@StevenSherman-kr4xm
@StevenSherman-kr4xm Жыл бұрын
@@slu467 good news, got the programmer working.
@ducksonplays4190
@ducksonplays4190 4 жыл бұрын
What are then downsides of flash
@slu467
@slu467 4 жыл бұрын
You have to erase them (only possible in blocks) before you can write. Cheers!
@ducksonplays4190
@ducksonplays4190 4 жыл бұрын
@@slu467 you can read them byte by byte if remember right
@slu467
@slu467 4 жыл бұрын
@@ducksonplays4190 You can read and write these FLASHs byte by byte, but a "1" stays a "1". So basically you have to erase them before writing and this can only be done blockwise. Old-style EEPROMs can also be written byte by byte. Hope this helps!
@ducksonplays4190
@ducksonplays4190 4 жыл бұрын
@@slu467 it does help and i wonder why most eeproms are slow yet the winbond W27c512-45 is an eeprom that's 45 ns
@viktorhugo8252
@viktorhugo8252 4 жыл бұрын
Great job Wehre can I buy a Non Fake chip?
@slu467
@slu467 4 жыл бұрын
Thanks! Can you explain 'non fake chips'?
@viktorhugo8252
@viktorhugo8252 4 жыл бұрын
@@slu467 , There are chips Form china renabled with numbers from processors and have Not the correct Function. This are low cost chips with numbers from high cost chips. Called fake chips. Chips with less capacity of the original chip and so on. The seller of this chips are untrustworthy. I need a trustworthy seller.
@slu467
@slu467 4 жыл бұрын
@@viktorhugo8252 I prefer proven suppliers as well. Let it cost a bit more, that's worth it!
@lachyplays3089
@lachyplays3089 4 жыл бұрын
I get most of my parts from mouser. They only buy stuff from the official manufacturers, so they are super reliable. I’ve never had a fake chip.
@UpcycleElectronics
@UpcycleElectronics 3 жыл бұрын
@@viktorhugo8252 I highly recommend watching uploads and conference talks with Andrew "Bunnie" Haung, and maybe look up Ian's old uploads from Dangerous Prototypes (the guy behind the classic Bus Pirate). They often mentioned how the Shenzhen grey market works, the risks, and finding reliable sources. The merits of ordering from Mouser, Digikey, Farnell, Arrow, RS, and others, or directly from manufacturers are obvious. The grey market is a vital part of the supply chain for chip fabs, manufacturers, and distributors alike. There's nothing wrong with the parts/chips recycle market either, so long as a policy of full disclosure is maintained. The defacto standard is assume used unless stated otherwise. The vast majority of reconditioned chips are still quite useful when prototyping if one builds the test setups needed to verify good chips. Most of the time, just testing the DMM DC resistance between power and ground pins will reveal most fakes and faults. I don't see anyone complaining about the plethora of equivalent grey market test equipment sold at flee markets, hamfests, or on auction/classified listing websites. This is exactly the same, "buyer beware" type of transaction. I, for one, love the fact I have access to such an open market despite the risk, but as a partially disabled gimp, my time/value calculation is a bit different than most people. Grey market parts just go in the same drawers as parts I removed. -Jake
@rickdearman9992
@rickdearman9992 4 жыл бұрын
Humm... Looks like it would take a lot of work to get this working on a Linux machine. Or at least a lot of code change. But interesting idea.
@slu467
@slu467 4 жыл бұрын
Hi Rick, I think it should be pretty straight-forward actually, but I am not a Linux expert. It's just the serial communication class that would need some attention. Cheers!
@StevenSherman-kr4xm
@StevenSherman-kr4xm Жыл бұрын
That's where I'm at now, building out the Minimal and trying to get a workable Nano Every flash programmer going.
@mtechzervis5071
@mtechzervis5071 Жыл бұрын
please help, I need tutorial flash ec sio kbc laptops like svod and vertyanov
EEPROM Memory - Store Anything - Arduino101
13:16
Electronoobs
Рет қаралды 112 М.
Your new favorite ROM burner is here!
8:05
Anders Nielsen
Рет қаралды 10 М.
OCCUPIED #shortssprintbrasil
0:37
Natan por Aí
Рет қаралды 131 МЛН
#behindthescenes @CrissaJackson
0:11
Happy Kelli
Рет қаралды 27 МЛН
БАБУШКА ШАРИТ #shorts
0:16
Паша Осадчий
Рет қаралды 4,1 МЛН
Extracting Firmware from Embedded Devices (SPI NOR Flash) ⚡
18:41
Flashback Team
Рет қаралды 596 М.
Building An EEPROM Programmer
4:13
Aidan Jennings
Рет қаралды 23 М.
How Does Flash Memory Work? (SSD)
8:50
BLITZ
Рет қаралды 244 М.
Tech 'n Tools - EPROM Burner & Eraser
26:55
Pinball Workshop
Рет қаралды 36 М.
The Z80's secret feature discovered after 40 years!
16:07
Andy Hu
Рет қаралды 754 М.
TUTORIAL: How to Wire up & Code an EEPROM with Arduino - Module (Part 1 - Theory)
15:38
Antony Cartwright (Electronics & Code)
Рет қаралды 132 М.
How flash memory works -  SSDs and USB pendrives
17:16
Computer&Electronics
Рет қаралды 17 М.
Quick warning to 3060Ti owners with Hynix memory how to change straps
21:21
Programming EEPROMs from Scratch
5:16
Slu4
Рет қаралды 41 М.
OCCUPIED #shortssprintbrasil
0:37
Natan por Aí
Рет қаралды 131 МЛН