Protel DXP
Protel DXP is Altium's, previously known as Protel,
current Electronic Design Package. Rebuilt from ground up, it has many new features
compared with the precedessor Protel 99SE. As happens often,
the package had to be released a bit early and therefore requires a few more touches.
However from DXP2004 SP1 on it could have been be considered useable. The current version is SP4.
The new forums to be found on the Altium website are well worth subscribing to. They just help to solve a problem much faster plus they propagate a worthy idea of yours to the developers rather quickly.
System requirements
The machine DXP is intended to be run requires Win2K and up. No WinNT, nor any
toy windows versions. With 512MBytes the RAM is on the lower side. A scroll wheel
mouse is recommended. A single screen with 1600x1200 is also on the lower side.
There is a whealth of information and a lot to select. A second screen is
recommended. Speedwise, an 1100MHz machine can cope with the manual tasks.
I haven't tested autorouting yet.
Additional features
Coming from 99SE, the following features are noticed
- Zooming and panning with the scroll wheel, in addition to the usual.
- Schematic Editor, PCB Editor, plus the respective library editors behave
identical what zooming and panning concern.
- Extremely powerful select-and-act-upon-tool for schematic and pcb,
that quite nicely replaces the known global replace
- FPGA handling at an undreamt level - I haven't tested it yet
- The 99SE libraries are useable, can even be saved back to the 99SE format.
- At selecting a part from the schematic library, it also displays the
selectable footprints as graphic
- The comment to a part is also visible when selecting a schematic component.
One has to manually swap columns for that though.
- It is possible to enter a comment to a footprint. Till now it was not yet
made possible to also base a selection on this comment. It might take
another sevicepack or two.
- .. many details were improved ..
Missing features
Compared to 99SE, the following is missing
- The "global replace", was replaced with "find similar objects", which is IMO
far more powerful.
- A project is not a project anymore. A project now is a container for one PCB.
Multiple schematics, but one pcb. Meaning a project consisting of several
PCBs has to be split into several projects now. A new version of a
PCB, also becomes a new project.
- While every document in 99SE required a project, in DXP, there now can be
free documents
- "Place Track" (PT) is for top and bottom layer only. All other layers
require now a "place line" (PL)
Panelling PCBs
Panelling 2 layer PCBs is doable within the pcb editor by copy/pasting the copper.
Even though similar rules as for the polygon pour apply, the power planes are
rendered at the gerber producing process, not before. Somehow copy/pasting doesn't
work for for the power planes.
This is where CAMtastic comes in. After the gerber producing process, this tool
works with copper and drill information.
Working with CAMtastic
As a recent addition, the different philosophy is still apparent. Before doing
something, one has to select the action, and then do the selection, upon which
this action is going to happen. The statusline is going to tell what next step
is expected and accepted. A selection is terminated with a right mouse for
example. ESC terminates the process that is current.
A special insight is that the native dataformat of CAMtastic is the *.cam files.
This means, the gerbers have to be imported. Either by Files/Import/Gerber plus
Files/Import/Drill,or by Files/Import/Quickload. And whatever work is done, has
to be exported as gerber, as Camtastic acts on its own files.
For some reason CAMtastic is not useable do add lines. Their thickness is not
settable, or at least I was unable to figure it out. Also deleting lines is a game.
It behaves equally smart as the schematic editor does. A line can go round a corner
when you don't expect it and it is gone. As said you cannot replace it with a new
line, as this new line possibly has a different thickness. I found it can be
copied from another place. Not really great, yes?
The layers can be made visible by checking them in the CAMtastic CAM editor panel.
Single layer mode can be switched on/off by selecting a layer there with the mouse
and subsequent left/ right cursor keys. The focus is lost quickly and requires
reselection. The current layer is having a cross in the color square.
Panelling with CAMtastic
CAMtastic lets you not edit the layer names throught the process.
So open a pcb project and import its gerbers by either quick load or normal
load. Since the import process has some quirks, I suggest the normal import, as
it offers better control. The name of these layers will be the name of the
panelled product. After import, move the lot away from the origin, as the next
import will also be at the same place provided you always have (0,0) at a fixed
location of your designs. Moving is done by selecting Edit/Move from the menu
and subsequent selection of the whole pcb. After the selection as area, it
asks for the reference point, eg bottom left and then it ask for the new reference,
meaning where the reference is shifted to. At this point is handy to know that
the snap can be changed by "shift S". Since the whole pcb has to be visible
for the selection, set the snap to 1000 before the moving process. Thus insuring
the moving is done at a coarse level.
For some reason the board shape is also here, at least with multi layered pcb's.
Assuming the planes have their own border, this board shape has to be deleted.
This is done with Edit/Clear and subsequent selections consisting of left and
right clicks.
Ok, then it is time to import the next pcb. There use the normal import of
gerber and drill. As it immediately detects that it has to match layers, it
will present a table of proposed layer matched. This table is faulty.
xxxx.gto - yyyy.gto
xxxx.gtl - yyyy.gtl
xxxx.gbl - yyyy.gbl
xxxx.gm1 - yyyy.gm1
xxxx.gm2 - yyyy.gm1 // forgets that there may also be a second mechanic layer
xxxx.gm3 - yyyy.gm1 // forgets that there may also be a third mechanic layer
...
all the numbered layers above "1" are wrong.
Fortunately these layer sugesstions are drop-downs and the error can easily be
corrected.
Ok now this pcb is also at the position in reference to the origin it had on
the pcb. In case there are more pcbs to be imported, they all have to be shifted
away from the origin until the last import which may stay.
Then the panel can be assembled from the various sub pcb's. This is also
done by moving. Note that the panel requires one outline on the outline
layer, whichever this may be. Meaning when all pcb's had outlines, delete them
all, except one. Remember, it cannot be added unless a strange width line is
acceptable. One line that already exists can be pulled and copied however.
Scripting with DXP2004
Meanwhile the name was changed from DXP2004 to Altium Designer. We'll refer to it as AD.
Scripting is a means of solving complex tasks. Although the help lists quite a number of entries on "script", I didn't find the time yet to get involved with it. I just collected some scripts for useful operations. Script are clearly made for the daily user of DXP, not for the casual user
sitting a just few days a month in front of it.
Scripts can be executed from DXP (leftmost menu), run script.
Toggling the loop removal
This script is just able to toogle the loop removal, there is not feedback on the current state. The code is saved under the filename LoopRemovalScript.pas. It can be assigned to a menu button.
Procedure ToggleLoopRemoval;
Var
PCB_SystemOptions: IPCB_SystemOptions;
Begin
PCB_SystemOptions:=PCBServer.SystemOptions;
If PCB_SystemOptions.LoopRemoval Then
PCB_SystemOptions.LoopRemoval:=false
Else
PCB_SystemOptions.LoopRemoval:=true;
End;
Run a URL
Any string on the schematic sheet can be run as URL by this script.
The following code is saved under the filename RunURL.pas
Procedure RunURL;
Var
CurrentSheet : ISCH_Sheet;
ALocation : TLocation;
HitTest : ISCH_HitTest;
i : Integer;
Begin
CurrentSheet := SchServer.GetCurrentSchDocument;
If CurrentSheet = Nil Then Exit;
ALocation := CurrentSheet.Location;
If CurrentSheet.ChooseLocationInteractively(ALocation, 'Click a valid String URL to open the Web page') Then
Begin
HitTest := CurrentSheet.CreateHitTest(eHitTest_AllObjects, ALocation);
For i := 0 To HitTest.HitTestCount-1 Do
If HitTest.HitObject[i].ObjectId = eLabel Then
Begin
ResetParameters;
AddStringParameter('Mode', 'Go');
AddStringParameter('Address', HitTest.HitObject[i].Text);
RunProcess('Client:Navigate');
End;
End;
End;
Adding datasheets to the schematic components
To the component in the schematic library add the following parameters:
ComponentLink1Description = datasheet - pdf
ComponentLink1URL = c:\datasheets\NationalSemiconductor\UA741.pdf
ComponentLink2Description = appnote
ComponentLink2URL = c:\datasheets\NationalSemiconductor\AN1123.pdf
ComponentLink3Description = National Semiconductor
ComponentLink3URL = http://www.national.com
When the component is placed a righclick on the component lists under references, "datasheet - pdf", "appnote", "National Semiconductor" and subsequent clicking on them opens the links in the appropriate viewers.
home
last updated : 20.july.05 or perhaps later
Copyright (99,2005) Ing.Büro R.Tschaggelar