{"id":20623134,"url":"https://github.com/chrismettal/pedaldev","last_synced_at":"2026-04-22T13:33:11.871Z","repository":{"id":159994449,"uuid":"634980516","full_name":"Chrismettal/PedalDev","owner":"Chrismettal","description":"Complete audio effect stompbox ecosystem and collection of designs","archived":false,"fork":false,"pushed_at":"2023-05-01T18:00:22.000Z","size":52663,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-14T06:34:51.326Z","etag":null,"topics":["buttons","case","distortion","diy","effect","electronics","guitar","hammond","instrument","kicad","music","pcb","schematics","smart","stompboxes","switches"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Chrismettal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-01T17:36:33.000Z","updated_at":"2024-11-17T18:57:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"d4c04b3c-b319-4071-9e8e-ded0fb8cac68","html_url":"https://github.com/Chrismettal/PedalDev","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Chrismettal/PedalDev","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chrismettal%2FPedalDev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chrismettal%2FPedalDev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chrismettal%2FPedalDev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chrismettal%2FPedalDev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Chrismettal","download_url":"https://codeload.github.com/Chrismettal/PedalDev/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chrismettal%2FPedalDev/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32139374,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-22T13:27:12.868Z","status":"ssl_error","status_checked_at":"2026-04-22T13:26:44.791Z","response_time":58,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["buttons","case","distortion","diy","effect","electronics","guitar","hammond","instrument","kicad","music","pcb","schematics","smart","stompboxes","switches"],"created_at":"2024-11-16T12:26:00.884Z","updated_at":"2026-04-22T13:33:11.854Z","avatar_url":"https://github.com/Chrismettal.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PedalDev \u003c!-- omit in toc --\u003e\n\n[![License: CC BY-SA 4.0](https://img.shields.io/badge/license-CC%20BY--SA%204.0-blue?style=flat-square)](https://creativecommons.org/licenses/by-sa/4.0/)\n[![Shop: Tindie](https://img.shields.io/badge/shop-Tindie-blue?style=flat-square)](https://www.tindie.com/stores/binary-6/?ref=offsite_badges\u0026utm_source=sellers_Chrismettal\u0026utm_medium=badges\u0026utm_campaign=badge_medium)\n[![Donations: Coffee](https://img.shields.io/badge/donations-Coffee-brown?style=flat-square)](https://github.com/Chrismettal#donations)\n\nThis is a convenient system for quickly creating stompboxes, as well as a collection of designs made with this system.\n\nThe design is split into two boards, a lower and an upper one. The lower PCB handles all of the I/O, switching, and power stuff, while the upper one focuses on the individual effect. The two boards plug together and fit neatly inside a commonly used Hammond 1590B. For each finished design there is also a PCB frontpanel so I don't have to deal with any actual design work and can just hide my designs behind technical looking stuff. The actual boards take full advantage of modern SMD components for optimal space usage.\n\nAll designs build up from the same template to allow rapid creation of new designs as well as saving time on recurring steps. There are even various protoboard variants of the upper PCB fitting the same template, to make boutique one-off designs more convenient and robust. For every design you will find the full KiCAD project including schematic and production files like **BOM, Gerbers and PCBA place files** in their respective project folders. (`/pcb/*`)\n\nFor easy mechanical manufacturing a 3D printable drilling template is provided. There is also a 3D printable design of the full stompbox similar to the 1590B with all ports \"predrilled\". A plastic case is not super recommended though and should only be used for quick testing. Conductive spray paint as shielding on the inside is also recommended when using the 3D printed case. (`/3d/*`)\n\nParts marked with \":construction:\" are work in progress and not fully verified yet.\n\n---\n\nIndividual boards, predrilled cases as well as kits will be stocked at Tindie!\n\n\u003ca href=\"https://www.tindie.com/stores/binary-6/?ref=offsite_badges\u0026utm_source=sellers_Chrismettal\u0026utm_medium=badges\u0026utm_campaign=badge_medium\"\u003e\u003cimg src=\"https://d2ss6ovg47m0r5.cloudfront.net/badges/tindie-mediums.png\" alt=\"I sell on Tindie\" width=\"150\" height=\"78\"\u003e\u003c/a\u003e\n\n**If you like my work please consider [supporting my caffeine addiction](https://github.com/Chrismettal#donations)!**\n\n## Table of contents \u003c!-- omit in toc --\u003e\n\n- [Specific Designs](#specific-designs)\n  - [404 (:sheep: Ibanez Tubescreamer)](#404-sheep-ibanez-tubescreamer)\n  - [YOU WHAT?! (:sheep: emma electronic PisdiYAUwot)](#you-what-sheep-emma-electronic-pisdiyauwot)\n  - [:construction: TOP (:sheep: OKKO Dominator)](#construction-top-sheep-okko-dominator)\n- [Common PCBs](#common-pcbs)\n  - [Lower](#lower)\n  - [:construction: Lower Smart](#construction-lower-smart)\n- [Protoboards](#protoboards)\n  - [Proto Simple](#proto-simple)\n- [Designing your own effects](#designing-your-own-effects)\n- [Building guide](#building-guide)\n  - [Case](#case)\n  - [Electronics](#electronics)\n- [Sources](#sources)\n- [Tools](#tools)\n- [Donations](#donations)\n- [License](#license)\n\n## Specific Designs\n\nWhile there aren't many specific designs right now, they will be created faster now that the system is proven working. There is a wide range of devices in the works, from high gain distortions over reverbs to new, experimental stuff.\n\n### 404 (:sheep: Ibanez Tubescreamer)\n\n\u003cimg src=\"/img/404/nice.jpg\" width=\"50%\"/\u003e\n\nBased on the popular Tubescreamer this is obviously the first design to be done in this system.\n\nNothing crazy here, only `D1-3` feature a dual footprint to put in your favourite clipping diodes.\n\nThere are two jumpers that need to be set when building this board. `JP1` does not really do anything with the sound but chooses a filter to be sent to ground or to bias voltage as some schematics have it either way. `JP2` however allows choosing betweeen symmetrical or assymetrical clipping.\n\n\u003cimg src=\"/img/404/pcb.jpg\" width=\"50%\"/\u003e\n\n### YOU WHAT?! (:sheep: emma electronic PisdiYAUwot)\n\n\u003cimg src=\"/img/YOU_WHAT/nice.jpg\" width=\"50%\"/\u003e\n\nVery cheap in parts but incredibly tight high gain distortion with lots of attack.\n\n\n### :construction: TOP (:sheep: OKKO Dominator)\n\n:construction: :construction: :construction: **Work in progress** :construction: :construction: :construction:\n\n\u003cimg src=\"/img/TOP/nice.jpg\" width=\"50%\"/\u003e\n\nBased on schematic by Saruman [found here](https://www.freestompboxes.org/viewtopic.php?t=12031\u0026hilit=c6).\n\nFirst PCB version `f35813b` was broken is currently being debugged. 4 Pins on `TL074` were swapped, `ICL7660` does not work when `BOOST` mode is set (But **`ICL7660S`** does..), and input stage sounds super starved, more like a bassy fuzz than a distortion. Simulation seems to confirm this so confidence in schematic is low. Currently getting hold of an original Dominator for schematic comparison.\n\nTwo jumpers on board revision `f35813b` are for debugging the power stage around the `7660` but will probably be removed or clarified on the fixed revision\n\n## Common PCBs\n\n### Lower\n\n\u003cimg src=\"/img/Lower/LowerFront.jpg\" width=\"50%\"/\u003e\n\n\u003cimg src=\"/img/Lower/LowerBack.jpg\" width=\"50%\"/\u003e\n\nThe lower PCB consists of the bypass footswitch with a status LED, input and output jacks as well as power input, filtering and FET based reverse polarity protection.\n\nThe Input/Output jacks are called `PJ-602B`. These are not available via LCSC sadly, but can be found all over Aliexpress. \n\nAdditionally an optional TL07X based buffer can be enabled via two jumpers. This was only added because the PCB had enough room for it and it can save room on the pedalboard instead of adding a separate buffer box. The buffer parts do NOT NEED to be populated if you intend never to use them. **Either `JP1_A1` and `JP1_B1` or `JP2_A1` and `JP2_B1` need to be set for signal to be passed through**.\n\nThe LED is driven through a simple \"anti pop\" filter and two optional anti-pop bleeders can be enabled via `JP3` and `JP4` to bleed any input/output caps on the connected upper board if neccessary.\n\nTest hooks and pads are sprinkled on interesting signals for effect development and debugging.\n\n\u003e :bulb: Hint: \n\u003e \n\u003e While this system is intended to be used with one lower PCB and one upper PCB fitting together, it might be convenient to just use the lower PCB even if you do not intend to use an actual effect from this system. Doing so greatly reduces the amount of free form wiring and frees up some space on your actual effect PCB.\n\n### :construction: Lower Smart\n\n:construction: :construction: :construction: **Work in progress** :construction: :construction: :construction:\n\nSame as `Lower`, but instead of a true bypass 3PDT Switch it features a microcontroller to turn your effect on and off either in momentary or latching mode. To show the mode it's currently on, it uses a bicolor LED.\n\nOn initial bootup, the device will be in latching mode. Pressing the button will toggle the effect on and off. The :construction: colored LED will be on as long as the effect is on in toggle mode. \nHolding the button down for 9 seconds, both LEDs will start blinking, signaling that a mode change is imminent. Holding the button for one more second, the device will switch into momentary mode.\nIn momentary mode, the effect will only be on while the button is held. While the effect is on, a :construction: colored LED will be on in momentary mode.\nSwitching back to toggle mode works the same way, by holding down the button long enough.\n\n## Protoboards\n\n### Proto Simple\n\n\u003cimg src=\"/img/ProtoSimple/nice.jpg\" width=\"50%\"/\u003e\n\nThis is a simple protoboard to use as an \"upper\" board, allowing for up to 6 pots, or 5 pots with one DPDT print switch.\nIt features 9V and GND power rails straight through the design to allow for easy power distribution\n\nWhile it does not allow for the density of SMD components it can certainly fit a lot of designs.\n\n## Designing your own effects\n\nI would love to merge your designs using this system into this repo!\n\nTo design your own effect PCB, create a copy of the `UpperRaw` KiCAD project for the actual effect, and `FrontRaw` for a PCB frontpanel design. `UpperRaw` includes a collection of frequently used parts in the schematic, set up with LCSC part numbers etc. It would be great if you add LCSC part numbers to all parts used in your design as well. After merging I will recreate the production files to the same parameters as the already created designs so don't worry about that.\n\n---\n\n## Building guide\n\nAs the system tries to use the little space in the 1590B as efficient as possible, the actual build can be quite tight. There is a set order of steps that should be taken to make the build as quick and easy as possible.\n\nThe whole system is designed so the PCBs can be ordered from JLCPCB mostly populated, so only very little hand soldering is involved. If you order the boards finished you will mostly have to solder only the through hole components, but for some rare components that JLCPCB doesn't populate, it might be neccessary to solder some SMD components manually. SMD components go down to `0603` for passives, and `SOIC-*` / `SOT-*` for actives, which is still hand solderable without too much trouble. A hot air solder station is highly recommended though.\n\n\u003cdetails\u003e\n  \u003csummary markdown=\"span\"\u003eBuilding guide, click to expand\u003c/summary\u003e\n\n### Case\n\nIf you have access to a 3D printer (or to my [Tindie Shop](https://www.tindie.com/stores/binary-6/)), there is a printable drill guide available. Otherwise, there will be a techdraw sheet with all the dimensions. At the [shop](https://www.tindie.com/stores/binary-6/) you will also find predrilled, black cases directly manufactured by Hammond.\n\nAll models are compatible with the same drill layout. Holes not required for a specific board will be hidden by the front plate, so the fully stacked 6 controls variant works for every model.\n\n1. Put the case in the drill guide and use a center punch to mark out all the holes to be drilled\n\n2. Pre-drill all marked holes with a `3mm drill bit` (The smallest size used on the device)\n\n3. Drill out all the holes to the sizes marked on the drill guide. Note that the holes are all 0.5mm - 1mm larger than they need to be to make alignment of the frontpanel easier\n\n4. If you want to paint the case, this would be the step to do it. I clean the case with rubbing alcohol, prime and paint, while only focusing on the sides of the case as I will hide the top underneath the frontpanels.\n\n\n### Electronics\n\n1. Some boards require several components to be mounted manually (Check their individual [documentation](#specific-designs)). These will include through hole parts or not easily available active parts for example. In this case, the OpAmp and input stage transistors, as well as connectors need to be placed manually. Note that the pots and switches are NOT placed at this stage!\n\n\n\u003cimg src=\"/img/Guide/404AssemblyRaw.jpg\" width=\"50%\"/\u003e\n\n\u003cimg src=\"/img/Guide/404AssemblyDone.jpg\" width=\"50%\"/\u003e\n\n---\n\n2. The lower PCB also requires some assembly, namely attaching the LED with its spacer and soldering on the board-to-board connector wire. Make sure to set **either `JP1_A1` and `JP1_B1` or `JP2_A1` and `JP2_B1` need to be set for signal to be passed through**.\n\n\n\u003cimg src=\"/img/Guide/LowerAssemblyRaw.jpg\" width=\"50%\"/\u003e\n\n\u003cimg src=\"/img/Guide/LowerAssemblyDone.jpg\" width=\"50%\"/\u003e\n\n---\n\n3. On most boards you will also find some configuration jumpers to be set. These include for example the `Buffered - Unbuffered` jumpers for the [Lower](#lower) PCB. Note the individual boards [documentation](#specific-designs).\n\n\n\u003cimg src=\"/img/Guide/Jumpers.jpg\" width=\"50%\"/\u003e\n\n---\n\n4. Attach the 10mm spacers to upper board, facing the \"Towards foot\" side. No washers required.\n\n\n\u003cimg src=\"/img/Guide/Spacers.jpg\" width=\"50%\"/\u003e\n\n---\n\n5. Prepare the power jack by attaching two solid wires to the jack as shown. Make sure to keep them straight for easier insertion later\n\n\n\u003cimg src=\"/img/Guide/PowerWire.jpg\" width=\"50%\"/\u003e\n\n---\n\n6. Mount all jacks, pots and switches to the case, optionally applying the FrontPanel. Do the input/output jacks first, as you will need to have some space to tilt the jacks while inserting them both into the case. They will go in VERY tight, but they will fit. For the power jack, make sure that the pins face upwards. Make sure to keep a single nut on the footswitch to have the correct spacing.\n\n\n\u003cimg src=\"/img/Guide/IO.jpg\" width=\"50%\"/\u003e\n\n\u003cimg src=\"/img/Guide/Power.jpg\" width=\"50%\"/\u003e\n\n\u003cimg src=\"/img/Guide/Footswitch.jpg\" width=\"50%\"/\u003e\n\n---\n\n7. Insert the pots, making sure to put each pot the correct hole for your design. Check out the silkscreen on your upper PCB for that. The nut probably won't have much flesh to grip onto so only handtighten them, or leave them out if necessary. The board will be held by screws later so it's no big deal. I like to straighten the potpins after mounting so I have  an easier time inserting the PCB in the next step. \n\n\n\u003cimg src=\"/img/Guide/Pots.jpg\" width=\"50%\"/\u003e\n\n---\n\n8. If your board does not use the middle upper pot, place a spacer inside the hole where a screw will go\n\n\n\u003cimg src=\"/img/Guide/PotSpacer.jpg\" width=\"50%\"/\u003e\n\n---\n\n9.  Place the upper board on top of the controls. Might be a bit tricky to align all the holes, but it can be made a bit easier by loosening all the controls screws. While it is also possible to first solder on all the controls, slight misalignments in height will lead to mechanical stress on the board when screwing the controls down later. Soldering it after mounting will ensure a mechanically unstressed board and still allow unmounting the board later by unscrewing the controls.\n\n---\n\n10. Secure the PCB with screws from the front, Screw down all controls tightly and after makind sure your pots all spin freely (not crooked), then solder all controls to the board.\n\n\n\u003cimg src=\"/img/Guide/Soldered.jpg\" width=\"50%\"/\u003e\n\n---\n\n11. Place the lower board on top of the I/O\n\n\n\u003cimg src=\"/img/Guide/LowerPlaced.jpg\" width=\"50%\"/\u003e\n\n---\n\n12.  Solder down the lower PCB. Note that this board will NOT be easily removeable without unsoldering the controls again!\n\n\u003cimg src=\"/img/Guide/LowerSoldered.jpg\" width=\"50%\"/\u003e\n\n---\n\n13.  Plug in the board-to-board connector.\n\n\u003cimg src=\"/img/Guide/Plug.jpg\" width=\"50%\"/\u003e\n\n\u003cimg src=\"/img/Guide/InsideDone.jpg\" width=\"50%\"/\u003e\n\n---\n\n14.  Screw on the bottom plate and mount your pot knobs.\n\n\u003cimg src=\"/img/Guide/OutsideDone.jpg\" width=\"50%\"/\u003e\n\n---\n\n15. Done!\n\n\u003c/details\u003e\n\n## Sources\n\nThe following 3D models were used for the simulation renders in KiCAD and FreeCAD. Please check their respective licenses if you intend to reuse them.\n\nAny models that are **not** mentioned here were created by me for this project and are subject to the same [license](#license) as the whole repo.\n\n| File                | Link                                                    |\n| ------------------- | ------------------------------------------------------- |\n| Hammond 1590B       | https://www.hammfg.com/part/1590B                       |\n| PJ-602B Audio jacks | https://github.com/afedorov3/3DModels                   |\n| Footswitch_3PDT     | https://grabcad.com/library/3pdt-switch-1               |\n| 9mm potentiometers  | https://grabcad.com/library/alpha-rd901f-40-15r1-1      |\n| DC barrel jack      | https://grabcad.com/library/5-5mm-panel-mount-dc-jack-1 |\n| LED 5mm             | https://grabcad.com/library/led-5mm-1#!                 |\n\n## Tools\n\n- PCBs: [KiCAD 6](https://www.kicad.org/)\n- 3D CAD: [FreeCAD 0.20](https://www.freecadweb.org/)\n- Source code: [PlatformIO](https://platformio.org/)\n\n## Donations\n\n**If you like my work please consider [supporting my caffeine addiction](https://github.com/Chrismettal#donations)!**\n\n## License\n\n \u003ca rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"\u003e\u003cimg alt=\"Creative Commons License\" style=\"border-width:0\" src=\"https://i.creativecommons.org/l/by-sa/4.0/88x31.png\" /\u003e\u003c/a\u003e\u003cbr /\u003eThis work is licensed under a \u003ca rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\"\u003eCreative Commons Attribution-ShareAlike 4.0 International License\u003c/a\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrismettal%2Fpedaldev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchrismettal%2Fpedaldev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrismettal%2Fpedaldev/lists"}