DIY Layout Creator

DIY Layout Creator (DIYLC in short) is freeware drawing tool developed with help of a large online community of DIY electronics enthusiasts. It incorporates many ideas that came from people using older versions of the application. The goal is to provide a simple interface and enough power to let the user draw schematics, board/chassis layouts and guitar wiring diagrams quickly and without a steep learning curve. Also, it is build around the flexible open source framework that may be used to draw pretty much anything. Below is a sample board layout drawn in DIYLC3.

DIY Layout Creator 3.x

The latest and greatest multi-platform Java version. Works on Windows, Linux, MacOS…anything that can run Java JRE. Mostly backwards compatible with the previous two versions and offers better performance, improved stability and higher flexibility due to the open source API. It’s got it’s own site now where you can grab the latest version report a bug or suggest new feature. The address is bancika.github.io/diy-layout-creator/.

To get the latest build, visit Download Page
To file a bug report or issue request visit Issue Page

DIY Layout Creator 2.x beta

Multi-platform Java version. At this point, I would NOT encourage anyone to download or use 2.x beta because it’s just too buggy and slow compared to 3.x. Once I add all the components into 3.x, version 2.x will be officially retired.

DIY Layout Creator 1.18

The very first version of DIYLC, written in Delphi and runs only on Windows. At this time I do not support or update this version, it’s been almost a decade since I last played with it. You can still find a bunch of layouts online drawn with this version of the software. It’s pretty easy to use and can draw smaller PCBs, Perfboards or Stripboards quickly. It has simple yet very effective interface which makes job much easier. Placing a component on board takes only 2-3 mouse clicks. You need to click on source and destination hole and program will place component between them. Placing polarized components is the same, but then you need to take care about hole order because program takes source hole for positive and destination hole for negative side. It’s similar with IC: pin 1 goes in source hole and last pin goes to destination hole. When working with PCB layouts you can set width of each trace and solder pad! Also, there’s “Print PnP” which gives printout ready for transfer on blank board (laser printer required). However, it’s not very flexible and it’s written poorly, I keep it here because it’s kind of retro cool, but I don’t use it anymore these days.

Download version 1.18
Download complete layout collection for version 1.x

v1 Layout Collection (works with v3 too)

Right click on a file and click “Save Target As…” to save a layout.

DIYLC 3 is profiled with YourKit!
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
140 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.