Skip to the content
PCBKitNew board
4 layers88.3 × 54.6 mm1005-Flash Programmer, the printed circuit board in 3D

Flash Programmer for SST39 Flash ROMs

Size
88.3 × 54.6 mm
Copper layers
4
Thickness
1.6 mm
Parts
36
Nets
59
Pads
165
Tracks, vias
277, 105
Pours
4
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
23 Oct 2023
Updated
16 Aug 2024

Overview

1005-Flash Programmer is an open-source printed circuit board by wilsondr9999, from the wilsondr9999/1005-Flash-Programmer repository on GitHub, published under the AGPL-3.0 licence. It is a 4-layer board of 88.3 × 54.6 mm with 36 parts on 59 nets, routed with 277 tracks and 105 vias.

It is built around the SN74HC595NE4, L7805CV and A-2004-2-4-LP-N-R, with the BC548 and BC558 among its other parts. Its parts include 10 resistors, 7 capacitors, 4 ICs, 4 diodes and 4 connectors. It belongs with the interfaces and adapters boards and the PIC boards of this library.

Main components

5

README

README.md

Flash Programmer

Copyright © 2021 by Dan WIlson

This is a simple PCB, firmware, and software that can read and write binary image files to the Microchip SST39 series of flash ROMs. These flash ROMs are one of the very few flash ROMs on the market that are still active production and in DIP packages, making them a popular replacement for the difficult-to-find AT28 series of EEPROMs.

This programmer handles the SST39SF010, SST39SF020, and SST39SF040 parts (128KB, 256KB, and 512KB respectively).

This programmer’s PCB design uses all through-hole parts for easy soldering. The general design is based on Ben Eater’s Arduino-based Flash Programmer, using a microcontroller and shift registers to increase the number of available outputs. Ben’s microcontroller is the Arduino Nano, here I’m using a Microchip PIC16.

The firmware on the PIC16 implements a command protocol that runs over a serial interface. The board contains a simple RS232 serial level shifter that allows the PC to communicate with the microcontroller.

On the PC, a command line program is provided to read and write to the flash memory. The command line program is written in Visual C# with Visual Studio.

You can order the PCBs directly from Oshpark with this link.

Several different licenses apply to this repository and the files within.

All schematics and circuit board designs in the project (all KiCAD files) are licensed under the CERN Open Hardware License Version 2 - Strongly Reciprocal (CERN-OHL-S).

All software and firmware code in the project (all MPLAB and Visual Studio files) are licensed under the GNU Affero General Public License v3.0 (AGPL 3.0).

Bill of Materials, pictures, and documentation (i.e. all other files not covered by the other two licenses above) are licensed under the Creative Commons Attribution Share Alike 4.0 International License (CC-BY-SA-4.0).

Parts

36
QtyValueFootprintReferences
60.1uFCapacitor_THT:C_Disc_D4.7mm_W2.5mm_P5.00mmC201, C302, C401, C501, C502, C601
410KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR201, R202, R204, R401
4MountingHoleMountingHole:MountingHole_3.2mm_M3H101, H102, H103, H104
3300Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR301, R402, R403
34.7KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR203, R205, R206
3LEDLED_THT:LED_D5.0mmD301, D401, D402
2SN74HC595NE4digikey-footprints:DIP-16_W7.62mmU501, U502
10.33uFCapacitor_THT:C_Disc_D5.1mm_W3.2mm_P5.00mmC301
11N4148Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD201
132-6554-10DW_Footprint:32-6554-10J601
1A-2004-2-4-LP-N-Rdigikey-footprints:Ethernet_Jack_54602-908LFJ201
1BC548Package_TO_SOT_THT:TO-92_InlineQ202
1BC558Package_TO_SOT_THT:TO-92_InlineQ201
1Barrel_Jack_Switchdigikey-footprints:Barrel_Jack_5.5mmODx2.1mmID_PJ-102AJ301
1ICSPConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ401
1L7805CVdigikey-footprints:TO-220-3U301
1LOGODW_Footprint:DW_PCB_LogoG***
1PIC16F15256-xSPPackage_DIP:DIP-28_W7.62mmU401

Questions

How big is the 1005-Flash Programmer PCB?

It measures 88.3 × 54.6 mm and has 4 copper layers, 1.6 mm thick.

What parts does the 1005-Flash Programmer use?

36 parts, built around the SN74HC595NE4, L7805CV, A-2004-2-4-LP-N-R and BC548. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the 1005-Flash Programmer KiCad files?

From the wilsondr9999/1005-Flash-Programmer repository on GitHub, at the commit this page was made from: the board is KiCAD Project/1005 Flash Programmer/1005 Flash Programmer.kicad_pcb and its schematic KiCAD Project/1005 Flash Programmer/1004 UART Level Converter.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the 1005-Flash Programmer design in my own project?

Its repository publishes it under the AGPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers55.9 × 71.1 mmTimer Circuit, the printed circuit board in 3D

    Timer Circuit

    felixUOB/Two_Defuse_Or_Not_Two_Defuse

    The Barbies team project

    12 parts
  • 4 layers99.6 × 99.8 mm3xosc, the printed circuit board in 3D

    3xosc

    aliqut/3xosc

    3xOsc | 3 VCO Eurorack Module

    92 parts40GPL-3.0
  • 2 layers239.6 × 239.9 mmTK3000, the printed circuit board in 3D

    TK3000

    clemarfolly/TK3000

    Réplica do Microdigital TK3000

    329 parts7GPL-3.0
  • 2 layers98 × 135 mmDMH VCO 40106 PCB, the printed circuit board in 3D

    DMH VCO 40106 PCB

    DeMarco/DMH-VCO-40106

    VCO module based on the CD40106 Hex Inverter chip

    147 parts5
  • 2 layers100 × 100 mmPreperf 10x10 V0, the printed circuit board in 3D

    Preperf 10x10 V0

    ApophisXIV/PCB-Desing

    Some hardware stuff

    1,396 parts2
  • 2 layers100 × 70 mmDMH VCLFO SingleUnit, the printed circuit board in 3D

    DMH VCLFO SingleUnit

    DeMarco/DMH-VCLFO

    Kosmo format Voltage Controlled tripple LFO module

    131 parts2