DIY Layout Creator

Introduction

DIY Layout Creator (DIYLC) is a specialized software tool designed for hobbyists and electronics enthusiasts to create circuit layouts on stripboard, perfboard, PCB, and point-to-point wiring. It provides an intuitive, drag-and-drop interface for placing components, arranging connections, and visualizing circuit designs before assembly. With a built-in component library and customization options, it allows users to design layouts with precision and clarity. The software is particularly useful for designing, analyzing, and debugging guitar wiring diagrams, helping musicians and builders plan and troubleshoot custom wiring configurations for pickups, switches, and controls. Its versatility makes it an ideal solution for DIY electronics projects, prototyping, and documentation.

Click here to get the latest version for all platforms.
Click here to read the user documentation as well as developer documentation.
Click here to request a feature or report an issue.
Click here to become a Patreon of DIYLC.

Mac users: in most instances, the Gatekeeper will block DIYLC and mark it as damaged because it’s a 3rd party app from an independent vendor (me). This document covers how to allow DIYLC on your Mac.

Samples

Point-to-point tube amplifier

Guitar wiring

PCB tube amplifier

Perfboard guitar effect

Features

  • platform independence, will run on any machine having Java JRE/JDK 8 or newer
  • easy to use interface, most of the operations can be done using mouse
  • draw PCB, perfboard, stripboard or point-to-point circuit layouts layouts, schematics and guitar wiring diagrams
  • high flexibility, has the API to allow plug-ins and new components to be added
  • improved performance and reduced memory consumption compared to the previous versions
  • save default values for each property of a component individually
  • group components together and treat them as one, e.g. move, edit or delete
  • export the output to image, PDF or printer
  • export PCB trace mask suitable for toner transfer
  • export PCB designs to Gerber for fabrication
  • create a Bill of Materials as a part of the project or export it to few different file formats
  • analyze guitar wirings and show detailed pickup configuration in each switch configuration
  • zoom in/out feature
  • configurable grid spacing on the project level
  • auto update checks for new versions
  • import files created with older versions of the application
  • cloud feature – share your projects, search through the cloud and download other users’ projects
  • highlight connected areas to simplify validation and circuit debugging
  • analyze guitar wiring diagrams and visualize pickup wirings for each switch configuration
  • export circuits to SPICE-compatible netlists

To report bugs or request a new feature go to Issues page and create a new issue describing your problem or request.

To join the discussion or request technical assistance, use the dedicated Discussion Group.

Want to contribute?

DIYLC is provided free of charge and can be used and redistributed freely. Please note that it takes a lot of time and effort to build, test and maintain it and to interact with the growing community of users. If you find DIYLC useful and want to support further development, these are some of the ways you can contribute

License information

Source code is released under GNU General Public License version 3. Contact the project owner to obtain a license in case you plan to use the source code, or any part of it, in commercial purposes.

Credits

  • Big thanks goes to folks from the following online communities for contributing ideas and helped test the app: DIY Stompboxes, AX84 and Free Stompboxes.
  • I’m happy to report that DIYLC 4 is the fastest version ever. YourKit Java Profiler helped tremendously with memory and performance profiling and pointed me to places in the code that took longer to run or consumed more memory than I’d like them to. I strongly recommend this tool to anyone developing Java or .NET applications because it helps finding bottlenecks and allocation hot-spots very fast.

    YourKit is kindly supporting open source projects with its full-featured Java Profiler.
    YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications.
    Take a look at YourKit’s leading software products: YourKit Java Profiler and YourKit .NET Profiler

Comments
141 Responses to “DIY Layout Creator”
  1. Paul says:

    Tip:
    If you want more components, you copy and change and save one of the existing ones and it will load automatically. For example, if you want a DIL package with more than 8 pins, find “library/ic-dil.xml” copy it to “ic-dil 16 pins.xml” then edit the new file and change the name in this line:
    component name=”IC DIL”…………………….
    and change the 8 to 16 in this line:
    property name=”Pins” dataType=”text” value=”8″
    No doubt you can change the width for fatter packages too.

  2. Dale says:

    Wow. This seems to be working great for me on Linux.

    Are there any specs anywhere for the xml library format? I’d like to add some things. Specifically, a growable terminal trip for point-to-point.

    Thanks,
    -Dale

  3. Paul says:

    @Bancika. Thanks, that works! It looks promising – which is great because I’ve looked at 16 packages and none of them are very good for what I want – simple stripboard layout. I’ll have a proper look at it and let you have some feedback.

  4. Paul says:

    This looks interesting! I am running it on Ubuntu 10.10 but I’m not getting very far. I can see no toolbox for components and because I want to design for a stripboard, I import library/stripboard.xml but I get “file format not recognized”. Perhaps there is a help file somewhere which I have missed!

    • Bancika says:

      all components in library folder should be automatically recognized and installed into the Toolbox. Do you see the window Toolbox at all or it comes up empty? Make sure that current directory is set to the same directory where the JAR file is.

  5. Ian says:

    You know what. I feel like an idiot. It never occurred to me that I can make my own! :::slaps forehead::::

    I’m good!

  6. Ian says:

    Hey man,

    First of all, your software is incredible. One question/request…. I know a lot of people may think it’s pointless, but is there anyway to get a breadboard template in a future version? The way my brain works, I would love this option. But again, awesome software!!

  7. FranklinPV says:

    I downloaded ver 2.0 and unzipped it into its own directory. When I try to run DIYLC.jar I get a window that says ” Cannot find main class. Program will exit”.

    Any thoughts?

  8. Mark F says:

    Hi,

    Thanks for this great software, it’s been invaluable for me doing vero and tagboard layouts. A quick question, I’m trying to modify the Text.xml file because the center alignment can be cumbersome in some cases such as when putting notes on the layout, so I wanted to add an alignment option. I’ve added this to the properties ares:

    and then in the drawinstruction I’ve edited it to read the following:

    alignment=”$Align”

    but this isn’t working properly and the text is invisible. Could you advise what I’m doing wrong? I’ve tested it out using two separate XML files, one with “center” and one with “corner” and that works fine, but it would be handy to have the option selectable in a single file.

    • Bancika says:

      did you add the Align property under tag? it should look something like this

      • Mark F says:

        Hi, yes I did but the comments removed mine too! :o) This is what I added with some markup removed to try to avoid the removal:

        property name=Align dataType=choice:center|corner value=center

  9. Stevo says:

    This is an amazing program.. Thankyou so much!!!

  10. Nick says:

    so first of all i think that your program is absolutely great, and was just wondering if there was any planned release for version 3, because after looking at the features on the google code page i believe this will be a huge improvement over any other version

    • Bancika says:

      Hi, thanks for kind words. Version 3 doesn’t have any planned release date yet, still a lot of other things that keep me away from it 🙁

  11. Ad says:

    Hi Bancika
    Thank you so much for making such a great program, the latest 2.0.1 beta is amazing!

    A couple of feedbacks points for you:-

    Things you’re probably aware of:

    a) Importing old-format DIY files doesn’t work
    b) Printing doesn’t work
    c) Check for update and update library doesn’t work (domain not found)

    Other improvements that would be really appreciated:
    a) Keyboard shortcuts to resize components (CTRL-UP and CTRL-DOWN would be great). If you resize a component (like an LED) to a really small size, it’s very difficult to grab the ‘handles’ to make it bigger again. Keyboard shortcuts would solve this.

    b) When a twisted wire is double-clicked, the properties pane only shows the two colours with their hex codes. Making these boxes background be the actual colours would be easier to work with (so a blue box and a green box with the hex code in by default).

    c) Add an invisible ‘click area’ box on components such as LEDs. At the moment you have to click on one of the lines/triangles of the LED symbol to grab it. You often miss and end up clicking the component behind it. Adding an invisible box over the top would make clicking on a component more accurate.

    d) Show the ‘bend’ tool for things like twisted wire on the first click. It seems like you have to start to drag the twisted wire before this shows up at the moment.

    e) Some kind of hint or properties showing the size of a board (in holes, preferably) when resizing it would be great. The old version allowed you to set the board size by number of holes, which was really useful. I can’t see any easy way of doing this now, unless you align it to the grid numbers.

    I hope all this makes sense, and some of the feedback is useful. Keep up the amazing work, this is the best tool for stripboard layout I have ever used. Others are more powerful (and do autorouting, etc), but yours is by far the easiest to get started with, and I’ve actually been able to design and build a few things already – which is more than I can say for any of the other tools 🙂

    On a final note, do you have a donation email address or website? Is this software open source, freeware, or are you not sure yet?

    • Bancika says:

      Hi,

      thanks for the feedback. Most if not all of these annoyances will be fixed. I started working on a fresh version 3, but it’s still not ready for public. It is open source and you can find PayPal donation button on the right side of any page on the DIY Fever site.

      Cheers,
      Bane

      • Ad says:

        Thanks Bane – I’ve donated to say thanks for all the hard work, and look forward to version 3 when it comes out – great to hear most of the annoyances are addressed, and I’m really glad it’s open source – it will just get better and better 🙂

  12. Steve says:

    This is potentially a very cool and usefull application (ver 2.x) – BUT – the print function des not work …I tried it on two computers, one with Vista and one with XP and neither would print…

  13. Yves says:

    Hi,
    Just downloaded and extracted Diy Layout Creator 2x into a Linux machine.

    Program starts when I open DIYLC.jar with “Sun Java6 Runtime” but shows an empty Library pane.
    What do I miss ?

    TIA, Yves.

    • Bancika says:

      make sure that you have the whole zip extracted and that your current dir is set to wherever the jar is
      cheers

  14. Bender says:

    The 2.x program looks great, but resizing and dragging components on the grid view is really slow. I am running on java:

    java version “1.6.0_18”
    OpenJDK Runtime Environment (IcedTea6 1.8) (Gentoo build 1.6.0_18-b18)
    OpenJDK 64-Bit Server VM (build 16.0-b13, mixed mode)

    Do you have any tips for boosting drawing performance?

  15. rob says:

    h i ive been using diylc 1′ briiliant software man..

    i downloaded version 2 but i cannot get it to open up?

    it says ‘could not find the main class :diylc.mainframe. program will exit…?

    any ideas?..cheers.

  16. woz says:

    Hi, I cant find and install function after I download and unzip. It just puts some folders into a folder,

    Helpplease appreaciated.

  17. GodsaveMetal says:

    Please your layouts collections are older???? I will be actual???? there are more layout for the 1th version anywere???

  18. Jon Pruett says:

    This software rocks! I’m running the 2.0 beta version on Kubuntu Linux and it’s excellent!

    Thank you for a great tool!

  19. Dave says:

    I’m sorry if this is really stupid, but I just came across this software. After downloading version 2 on my Mac, I unzipped and opened it, and I was thrilled to see exactly what I was hoping for. However, for the life of me I cannot get anything to work. I cannot figure out how to actually draw anything on the grid. And, I cannot seem to access any help menu. Can anyone help me out?? Thanks!

    Cheers

    • Bancika says:

      Hi, just drag components to the grid from the toolbox.

      Cheers,
      Bane

      • Dave says:

        OK, I feel like a real idiot now! Thanks—I clicked, doubleclicked, and everything else, but never dragged. Many thanks—and it really seems like great software.
        Cheers

        • Bancika says:

          It’s a valid point, I’ll add double click in the next version.

          Cheers

  20. col says:

    Great software and great update. Thanks.

    My Question: is there a ‘trimpot’ component similar to the one in the old version that I am missing, or is that not done yet in version 2?

    • Bancika says:

      Hi,
      there’s no trimpot in the “stock” version, but kind folks on diystompboxes.com made it. You can find download link here http://www.diystompboxes.com/smfforum/index.php?topic=44838.1540
      Just download the xml file into library folder and it should be recognized next time the app is started.
      Cheers,
      Bane

      • Col says:

        Thanks Bancika, when I found it was an XML, I ended up making my own more complete model. I posted it on the thread you linked to. You’re welcome to use, include or ignore it as you see fit. Also, if you have any suggestions about how to improve the implementation, that would be cool in case I make any more models.
        Cheers,
        Col

  • About

    The idea behind this site is to share my experience with Do It Yourself approach to guitars, amplifiers and pedals. Whether you want to save a couple of bucks by performing a mod or upgrade yourself instead of paying a tech, or want to build your own piece of gear from scratch, I'm sure you will find something interesting here. Also, this is the home of DIY Layout Creator, a free piece of software for drawing circuit layouts and schematics, written with DIY enthusiasts in mind.