VeroRoute - Free software for producing Veroboard, Perfboard, PCBs layouts

Started by DrAlx, June 15, 2017, 07:00:35 AM

Previous topic - Next topic

DrAlx

It's written by me.  It is open source and built using the Qt cross platform toolkit.
I developed it on Linux.  If you are a Linux user you will have to download Qt Creator and compile the source yourself.

So long as you specify the circuit properly, then it is not possible to accidentally produce a layout with open or short circuits.
No more "can you check if this vero layout is correct?".
It has interactive auto-routing too (though that is a work in progress).

The main page is here...

https://sourceforge.net/projects/veroroute/?source=navbar

Precompiled versions are available for Windows 7 (32-bit and 64-bit) here...

https://sourceforge.net/projects/veroroute/files/?source=navbar

They should work on later versions of Windows too.  Just unzip to a folder and run.  Use Help->Tutorial for the built in tutorial.

Enjoy.


bool

Just a quick question: do you plan to support a Raspberry port somewhere in the future?

DrAlx

Quote from: bool on June 15, 2017, 07:16:01 AM
Just a quick question: do you plan to support a Raspberry port somewhere in the future?
No.  It should be do-able though and is apparently just a case of cross-compiling the source using the info on this page
http://wiki.qt.io/Raspberry_Pi_Beginners_Guide

My program is technically a Beta as I have been the sole user and tester.  My main aim will be to fix any bugs, add useful features, and tweak things here or there.  The source is available under the GPLv3 so there is nothing stopping anyone from doing a port to whatever hardware they want and making it available to others if they wish.

potul

I just installed it to test... Dumb question: How do you "paint" tracks in the board?

DrAlx


Ben Lyman

Can I use this on my Mac?
I have OS X El Capitan 10.11.6

   "Apart from the software and a computer, you need a keyboard and a 2-button mouse with a mouse wheel"

How important is the mouse? I don't have that, I just have an apple 1-button mouse.
Thanks, this looks interesting

"I like distortion and I like delay. There... I said it!"
                                                                          -S. Vai

Digital Larry

Cool man!  I've been using VeeCAD with TinyCAD for schematic to import.  That works really well with a couple gotchas.
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

DrAlx

Quote from: Ben Lyman on June 15, 2017, 12:17:20 PM
Can I use this on my Mac?
I have OS X El Capitan 10.11.6

How important is the mouse? I don't have that, I just have an apple 1-button mouse.
Thanks, this looks interesting

Qt supports OS X but you will have to download Qt Creator for the Mac and use that to compile the source code yourself (unless someone else does that and makes the compiled binaries available).

The two button wheel mouse is important, because you use left clicks to paint and right clicks to erase, and the wheel is the only method I included for handling zoom. I could handle the zoom option with on screen buttons I guess.
There might be a way of changing the way the UI works so that you only ever use one button on the mouse but I think it would greatly impact usability.  The tool is very interactive and you need the ability to easily make mouse clicks do different things.  I guess there could be a way of doing that by combining mouse clicks with keyboard presses (which it required already for some operations).  I'll wait and see what feedback I get.


Plexi

To you, buffered bypass sucks tone.
To me, it sucks my balls.

Ben Lyman

Thanks Alex, I don't know anything about computers so I have no idea what you are talking about but I am guessing it is probably best for me to wait and see if you create a compatible version.

I do have Eagle and I can't figure it out for the life of me but at least I installed it so that's a start!  :icon_mrgreen:
"I like distortion and I like delay. There... I said it!"
                                                                          -S. Vai

reddesert

Hello Alex,
Thanks for releasing this, it looks very interesting.
I am using a Mac (OSX 10.11 El Capitan) and I was able to compile it from source with QT Creator (which I had not used before, but may want to learn anyway).

A bug that I found is that the Tutorial files do not display.  When I open Help > Tutorial, I just get a dialog box that says "Tutorials/Tutorial_1.vrt". I am guessing they are a format that is not understood natively by QT on the Mac, or it might just be a problem with not recognizing the file extension.  I was able to go into the source Tutorials directory and strip out all the non-printing characters with some emacs voodoo, so that I can read the text content of the tutorials, but can't see the images.

Some additional feedback, which I hope is useful:
- I can't use the Delete key to delete a part (possibly an issue with backspace vs. delete? Ctrl-H doesn't work either. Try adding ability to delete by hitting "d" key?)
- Write to PDF doesn't seem to work for me - it pops up a save dialog but the file does not appear.
- I had trouble figuring out how to connect the pins I wanted until going back to the tutorial and realizing I had to right-click to get out of the currently selected node. It might be useful to have text hints under the board display depending on what mode one is in.
- It would be useful to have a table of contents or overview of the Tutorial. I was puzzled about how to connect components, until I realized that it comes fairly late in the tutorial.

Incidentally, on the Mac, Control + left-button usually emulates a right-button click, and I verified that holding p + control + left-button will erase a painted node. But 3-button mice are also easy to obtain.

DrAlx

The Tutorials folder should be copied to the same location as the executable.
The message is saying that the exe is looking for a subfolder called Tutorials containing the file Tutorial_1.vrt.

Qt Creator will have created a folder with either Debug or Release somewhere in the name.  Probably in the Src folder. That will be where the executable gets created.
Qt Creator builds the slower debug version by default.  Near the green run button in Qt Creator you can change the version it builds from debug to release. The release version will compile to the folder with Release in the name rather than to the one with Debug in the name.
Whatever version you are building, copy the Tutorials folder so it is alongside the relevant  VeroRoute.exe.
You can open the vrt files using File->Load in VeroRoute. The only difference is that you won't get buttons in the Info window to navigate the tutorials or reload them, and that you will be able to edit the tutorial text.

Table of Contents is a good idea.

Regarding the PDF, check it has been written to where you think it has. I have only ever written them to the directory with the exe. Add the .pdf extension to the filename when you save it.

l will try and make things more configurable regarding the keys that you need to use. The paint/unpaint could be handled some other way for 1 button mice. For example, using a pair of adjacent keys to paint/erase. Given that the component pins are usually only painted at the start of a design, one option is to have a check box in the GUI to turn "pin protection" on or off. I'll experiment with that.  The problem is that if someone gets lazy and leaves it off then they could really mess up the circuit.  There is no undo/redo available and that would have to be implemented first. I deliberately wanted to make it hard to accidently modify or erase pin netlist values.


DrAlx

Quote from: reddesert on June 16, 2017, 12:59:03 AM
- I can't use the Delete key to delete a part (possibly an issue with backspace vs. delete? Ctrl-H doesn't work either. Try adding ability to delete by hitting "d" key?)

Could you try the following for me please?
In the source code file mainwindow.cpp, go to line 1315.

Modify the bit of text that says
   Qt::Key_Delete
to say
  Qt::Key_Backspace
instead.

If you hit the green button in Qt Creator it should realise that the source code has changed and recompile the exe. 
Let me know if that makes the delete key work on you mac.
If that does not work and you want to use the "d" key for delete, just change the source code to say
  Qt::Key_D
instead.


Looking at the code, I see I also prevented deleting and moving components when the tracks are hidden.  I figured the view where you just see component outlines and no tracks is really only useful for being able to easily see the names of things, and you normally would not edit in that mode.
I could always take out that restriction if it makes things less confusing.

DrAlx

Quote from: reddesert on June 16, 2017, 12:59:03 AM
- Write to PDF doesn't seem to work for me - it pops up a save dialog but the file does not appear.

I just checked and it doesn't work for me either.  I released in a bit of a hurry and accidently cut a line of code.  I'll fix this in the next release, probably next week, but given that you have QtCreator you can easily fix it yourself as follows.

In the file mainwindow.cpp, at around line 410 you will see a line that says

     pdfWriter->setResolution(1200);

add the following line of code immediately below that line

      painter.begin(pdfWriter);

If you want to have the pdf file automatically open for you, then scroll down to about line 933.
You will see a line that says

      delete pdfWriter;

Add the following code immediately below that line

       if ( m_bWritePDF ) QDesktopServices::openUrl(m_pdfFileName);


That should fix it.

DrAlx

I've uploaded fixes to sourceforge.  v0.91 now.

Both Delete and Backspace will delete a part now.
PDF files should be created (but they only auto-open when I run from within QtCreator for some reason).
I changed the QtCreator project file so that the VeroRoute.exe builds to outside the Src folder, so it will automatically be in the correct place to find the Tutorials folder.
No idea what Ctrl-H is supposed to do on a mac.  I've never used one.

I'm considering changing the way the pin editing works.  Given that the whole point of painting pins is to specify the netlist, I think I will add a mode where you can do that using something like a rats nest, so all tracks and floating parts will be hidden, and it's clear you are specifying the netlist and nothing else.  So there will be no possible confusion between being in a mode where you are editing the pins, and one where you are building the tracks.


Renegadrian

Done an' workin'=Too many to mention - Tube addict!

DrAlx

It's not easy for me to do that but compiling the source is very easy. There should already be a Debian package for Qt Creator. Install it. Then download my source code and open the VeroRoute.pro project file in Qt Creator.  Then hit the big green run button.

DrAlx

I have now released version 1.10 and dropped the Beta label.

Available here:  https://sourceforge.net/projects/veroroute/

You can now import the parts and netlist from a schematic produced in TinyCAD (a free schematic editor, also available on SourceForge).
You can still avoid using a schematic and specify the netlist graphically if you wish.

DrAlx

I added some more features, and Version 1.170 is now available for download.

Producing PCB masks with ground-fill is a breeze with just a couple of clicks.
The ground-fill automatically updates as you manipulate the tracks.

Example image:  https://1drv.ms/u/s!AvrH61utWEtEiQGiDOYTqS5GWTTL


DrAlx

Version 1.22 is now available for download.

Apart from several usability improvements, it now includes a symbol library
for gEDA, so it is now possible to import a netlist from a gEDA schematic.