In Reply to: Detailed Protel 99se Review (long) posted by Mike on 12/18/00 at 12:17 PM:
I've just finished a hundred plus hours with Protel 99SE SP5. I've been mostly an Eagle (Cadsoft) user but have several other CAD packages as well. The Protel user interface is very different from Eagle, but I expected that. Protel seems to have a lot of left over hooks from the old DOS days. If you don't know the dozens of keyboard short cuts, it's really awkward to use--much more so than Eagle.
Eagle is pretty simple and straightforward. It's not all that powerful, but it's a lot more consistent and easier to learn than Protel. It's also relatively bug free (at least compared to Protel--read on).
On the plus side, Protel has some very powerful features such as being able to create classes (i.e. put all your high current nets in one class). You can then make global changes to a class, define design
rules for the class, etc. It's very elegant--at least on paper. The auto router also blows away the one in Eagle. It's fast, always seems to route to completion and you don't end up with more vias than component pads. Protel 99SE isn't lacking for fancy features, but some simple things are amazingly hard to do.
For example, turning layers on and off could be easier. You also are forced to either view or hide ALL "strings" at once. You can't, for example, turn off just component values but leave the reference
designators on (without editing the components themselves) to have the board less cluttered.
It's a pain to rip up a track you just routed. You can use the backspace while you're routing, but once you complete the segment, you have to go up to the pull down menus (remember to shut off the routing
mode first) and select Unroute, the type of unroute you want, and then click on the segment with rather unpredictable results (thank God for the undo button). You're supposed to be able rip up a component, net or just connection but sometimes the connection option rips up the whole net anyway. Go figure. There's also no easy say to say change
the width of an entire track segment.
Perhaps I'm missing something, but I cannot find any way to use a wire jumper or other "zero ohm" component to join two nets into one. If the physical copper isn't connected, Protel insists it's a "broken" net and
will forever show a from-to line where none is required (and show errors in the DRC). I've tried everything including defining components with the same pin designator on both pins. This is especially a problem for named nets like VCC, GND, etc.
Speaking of defining components. Some things are rather unpredictable here too. I tried to copy one National Semiconductor analog IC into a custom library to make some changes to it. When I clicked "paste", I
got the ENTIRE NATIONAL LIBRARY pasted in! Where's that undo button again? Copy/paste seems to work OK in other libraries.
That brings me to the libraries... Yeah, there are 65,000 (or whatever they claim) components, but most of them are pretty obscure stuff used only by 0.01% of the design engineers on the 22nd Tuesday in a leap
year. Want a bread and butter DC power jack for that wall wart power supply? Nope. Gotta make it from scratch. Want a popular Maxim switching regulator IC? Nope... only weird Maxim interface chips are
included. Worse, many (most?) of the components are incomplete and missing footprints, sim parameters, or both. They're also inconsistent. A DIP16 might have a 10 mil outline and .035 mil drill holes, a DIP14 might have an 8 mil outline and .032 drill holes.
Oh, and heaven forbid you decide to use the "Find Component" feature. It has to wade through all 65,000 components in a pile of libraries which are apparently ogranized without any sort of indexing system as
the search can take 3 or 4 MINUTES of disk grinding (and that's on a fast machine)! Don't try it unless you're ready for a nice coffee break.
I've tried 4 different video boards (an Intel i740, an STB, an ATI and a Matrox Millenium G200 all with their latest drivers) and all 4 exhibit various problems under Protel and NT4 SP5 (and all 4 work flawlessly with every other app I have). With the Intel board, the screen breaks into stripes after every edit! The Matrox seems to work the best but even with it, the grid frequently "glitches" after edits (you have to zoom, pan or repaint to fix it). Others blame these
problems on the video board manufactures, but considering the other boards work great 99% of the time with everything else (including other
CAD software I have), I think Protel is to blame.
Worse, is the mouse action. I've tried 2 different mice (Microsoft and Logitech) and a half dozen mouse drivers (with more than one video board) and with ALL of them, the selection of things is a rather random
process. It's especially bad in the schematic editor. It can take a dozen mouse clicks (each one causing the affected item to blink, so I KNOW Protel is getting the clicks from NT) to select an item. In
theory, you're supposed to just click once to highlight something so you can then delete it, move it, etc. In reality, it's up to the Gods and Zen what happens. For deleting things, I've taken to using the
Edit Delete cursor which is far more reliable than trying to select something.
Of course the above process is hampered by the fact that Protel takes an entirely unpredictable amount of time to select things! Sometimes, it's nearly instant, other times, for reasons unknown, it can take
several seconds. The worst is when you click on something when it's decided to do a "background" (really foreground) backup save to disk (which can take 5-10 seconds). But sometimes just selecting a net
(with no disk activity) can take several seconds on my Pentium III 700 with 256mb of RAM. What IS it doing? This is with no other apps running.
So on top of things often being hard to select, you often have to wait to see if your selection "took". If you click again (in frustration), you may get a double click (which opens the property box dialog box) or it may deselect (toggle) the item. ALL of this is VERY unpredictable and incredibly frustrating!
Once you DO select something, you never quite know what's going to happen when you try to act on the selection. Protel seems to only SOMETIMES remember what you were doing last and carry that action
forward to the next item you're trying to edit. For example, if I last moved something, and then select a new object and press the delete key, nothing happens. I then move the mouse and find the object moves with
it. Of course, other times, it will delete it as expected. Sometimes the move button will move a collection of things, sometimes you have to
go to Edit, Move, Selection. No rhyme or reason.
The above problems are notably worse in the schematic editor than the PCB editor. Also interesting is the fact the two use fairly different user interfaces. The keyboard shortcuts are generally different, some
obvious features in one are not available in the other, etc. For example, if you're viewing the schematic and you want to find U17, you type "Ctrl F" (for Find) and type in U17 and press enter. If you're
viewing the PCB, you type "J" (for Jump), "C" (for Component) and type in U17. Pretty frustrating, don't you think? To add insult, Ctrl F gets you something completely different in the PCB editor if you forget
and type the wrong thing.
Protel has an "autoscroll" feature which defaults to on. It's rather awkward to navigate around with it off especially considering you have to work zoomed in quite a ways to get some things to work (like the
selection problem mentioned above) very well. With it on, however, if you have any sort of tool selected, and you try to go up to the menu bar to click on anything, you end up panning a long way from where you
were working. This just takes getting used to but it would be nice if it would only autoscroll when you actually have an object on your cursor, while extending a line/trace, etc. (i.e. when ou really NEED
Then there's the coordinate system for the PCB editor. The auto placer and auto router seem to require using the absolute (lower left corner)
origin (so says the manual). So if you want room to add dimension lines, etc., to your PCB outline drawing, you need to have the board up off the origin. But, every time you run the autorouter, you're
supposed to reset the origin back to the default. I forgot to do this once (easy mistake), routed the board, added a component to the schematic, updated the PCB from the schematic, and guess what, the new
component had an entirely different coordinate system than the rest of the board!
To recover from the above problem, I tried to restore the board from the backup copies that Protel keeps as you go. WRONG! I ended up with an entirely blank PCB (the schematic was fine). Ugh. I guess all that
unwanted disk activity while trying to edit things is *really* unwanted if the files are useless anyway?
Printing is a rather interesting exercise. Whoever wrote the PCB print portion of the product should go back to school (if they ever went in the first place). Everytime you change a parameter on your print
options (i.e. changing the paper tray in your print driver) it rebuilds the entire print set from the cad files (which can take a while). Worse, each of the rebuilds seems to leak memory in NT. I have 256mb
of RAM and with ONLY Protel running, after a dozen or so "rebuilds", NT was complaining it was out of memory! Plus, you often have to rebuild things twice to get it to "stick". For example, if you switch from
portrait to landscape, the first rebuild still shows everything in portrait. Oh, and true to form, the PCB editor prints entirely differently than the schematic editor.
That brings me to the frequent "exception errors" and other fatal crashes in NT. They seem to mostly happen when using the print utilities or when exiting Protel. They're pretty common when doing the
above. I've run into them on both my NT4 system and on a Win95 system (A Celeron 400 which was S L O W ! ). At least with NT, it has yet to crash the OS, just itself. With Win95, you have often have to reboot.
I haven't even tried the simulation stuff. If it's written by the folks who did the PCB printing code, look out! Seriously, the sim features might work great, but I'd be surprised if they do.
Yeah, it's powerful, yeah it seems to (somehow?) be halfway popular, but man, is this what several thousand dollars gets you? This is pretty sad software, folks. They've added a ton of features but the basic things don't work well. It's not my system either. I've run the software on two completely
independent systems (NT and Win95) and most of these problems are similar on both. I've also tried several video boards and mouse drivers.
I used to feel sorry for Protel with people ripping off their software with the various cracks (crackz?) out there. But now, I have to say, they don't really deserve to have paying customers. People should
refuse to buy software this buggy. That might force the manufacture to fix all the problems before they cram yet more new features and bugs into the next release.
For now, I'm going back to Eagle. When I get the time, I might take a look at Mentor/VeriBest. If you're in the market, don't waste your time with Protel unless you can look past the dozens of *major* bugs and have a lot of time to invest (and extra hair you don't mind pulling out).