Browsed by
Tag: eeprom

Writing a BeagleBone Cape’s EEPROM from UBoot

Writing a BeagleBone Cape’s EEPROM from UBoot

eeprom -d /dev/i2c-3 -a 0x54 -f foo

vi foo
<Escape> and :%!xxd
Edit the hex portion to your heart’s content
<Escape> and :%!xxd -r
Save and quit vi

To convert your eeprom.bin for upload via BusPirate

cat eeprom.bin | hexdump -v -e ‘8/1 “0x%02X “‘ -e ‘”\n”‘> eeprom.ascii

Upload using the method shown here.

Thanks to “linux instead” for the tip on using VI as a hex editor

EExtractor: An (EE)PROM-Extracting Arduino Shield (Beta)

EExtractor: An (EE)PROM-Extracting Arduino Shield (Beta)

Purpose: EExtractor is an Arduino-compatible Shield that allows a user to dump (or download) the contents of a ROM chip (ROM, PROM, EPROM, EEPROM, etc). 

Hardware Method: The EExtractor uses two SOIC MCP23S17 ICs to control the 31 (32 minus ground) pins of the ZIF Socket. This (ideally) allows the user to address any size or pinout of PROM IC up to, and including, 32 pins. Headers are broken out to allow for direct powering of PROM pins from the Arduino’s +5V port (if needed).

Software Method: The Arduino (or compatible) software will correctly configure pins (inputs/outputs, Hi-Z, pull-ups, etc) to allow for proper reading of the IC’s data. The software will then proceed sequentially through each byte of the PROM, outputting it along with a verification or checksum.

(The code is still under construction at this time.)

Availability: PCBs will be available once testing is complete.


EExtractor was made using the Open-Source gEDA suite of tools, including gschem, pcb, etc, and, as always, a little symbol and footprint help from gedasymbols.org.

All materials, schematics (.sch), PCB Layout (.pcb), and related derivatives such as PCB renderings, schematic renderings, .ps, .pdf, .gbr and .cnc files, or other Gerber-format files and PCB boards produced with them, collectively known as v1.0 Beta 1, are released under the CC BY-SA 2.5 Canada license.

*EExtractor is not sponsored or otherwise supported by Arduino. The Arduino name used only to signify compatibility.