Re: gEDA-user: DRC UI mockup
Good: I like the arrows showing the problem. Wrong location: The reason (i.e. Annular rings that are too small may erode during etching) belongs in the area that you establish the design rule check guidelines. Steve Meier On Sun, 2009-03-29 at 16:21 +0100, Peter Clifton wrote: Hi guys, This time the screen-shot eye-candy is purely made in GIMP, sorry.. but please take a look at it and see if it looks useful... http://www2.eng.cam.ac.uk/~pcjc2/geda/drc_mockup.png It is based on a mixture of UI from the Banshee music player, some of my own ideas for presentation, and the DRC report Ben got from Sierra (including some stolen text which we can't reuse verbatim!) There isn't a great deal of info on the violation shown, hopefully zooming to it obviates the need to take up screen-space with coordinate readouts. (I'd imagine a tooltip, or Details pane might make a nice addition if this was required). Perhaps we could complement this expanded list with an alternative compact view, where the preview image shrinks to a smaller size (or uses a generic icon for the given rule), and we drop the detailed explanation text from each line. Any per-rule processing could be done in a few ways: * Popup click context menu * Add checkbox against each rule, then put action buttons at the bottom - Select all - Deselect all - Ignore selected violations - Highlight selected violations (on layout) - Auto-fix (right along there with Auto-design my circuit ;)) If there was too much information per violation, we could adopt a more eog image viewer approach to properties (similar to our current implementation). Make a dialog with all the information, fix suggestions, actions for a single violation, then put Previous and Next buttons at the bottom. NB: Unfortunately, I don't have a lot of time to develop these ideas in terms of code at the moment, so don't expect to see this on my branch any time soon! Best regards, ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
DJ Delorie wrote: I like the idea of showing the violation in a window, but do we need that many? Maybe something like gschem's symbol selection, where when you select a violation it's shown in a window. Tree view lets you group violations by type and expand/collapse them: + drill too small (5) + annular ring too small (18) - copper areas too close + 5.0 mil line/pin at 12500,7500 + 4.8 mil line/pin at 11500,8500 + 5.0 mil line/pin at 10500,3250 + silk over pads (1) that looks pretty reasonable to me. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
Peter Clifton wrote: On Sun, 2009-03-29 at 10:33 -0500, John Griessen wrote: Peter Clifton wrote: There isn't a great deal of info on the violation shown, hopefully zooming to it obviates the need to take up screen-space with coordinate readouts. (I'd imagine a tooltip, or Details pane might make a nice addition if this was required). Arrows are good, but need to be at the scale of the DRC, (tiny when zoomed out). How about when generating a tooltip, also cause a 1 inch window that is part of the GUI in a fixed location, or hovering like a tooltip, to show the arrows plus a little? In other words, picturs just as you've shown in a list format, but not all generated at once, only as needed by a mouse hover? I was thinking (as I believe DJ suggested a while back), that the arrows could also be overlaid on top of the PCB board as well, so when finding / fixing the DRC, the information could be overlaid. A commercial tool I use a good bit presents a list of drc types (I assume thats what you'd get if you checked the group like violations button in your mockup). You can then toggle the visibility of each. Then on the layout, you can tell it to zoom from violation to violation and it will draw the area of the violation in some outline color. I find it really useful because it shows directly the region where the violation is. For example if you have a metal spacing violation it will draw a polygon showing the entire region where the spacing is not enough. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
Peter Clifton wrote: There isn't a great deal of info on the violation shown, hopefully zooming to it obviates the need to take up screen-space with coordinate readouts. (I'd imagine a tooltip, or Details pane might make a nice addition if this was required). Arrows are good, but need to be at the scale of the DRC, (tiny when zoomed out). How about when generating a tooltip, also cause a 1 inch window that is part of the GUI in a fixed location, or hovering like a tooltip, to show the arrows plus a little? In other words, picturs just as you've shown in a list format, but not all generated at once, only as needed by a mouse hover? John -- Ecosensory Austin TX ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
On Sun, 2009-03-29 at 10:33 -0500, John Griessen wrote: Peter Clifton wrote: There isn't a great deal of info on the violation shown, hopefully zooming to it obviates the need to take up screen-space with coordinate readouts. (I'd imagine a tooltip, or Details pane might make a nice addition if this was required). Arrows are good, but need to be at the scale of the DRC, (tiny when zoomed out). How about when generating a tooltip, also cause a 1 inch window that is part of the GUI in a fixed location, or hovering like a tooltip, to show the arrows plus a little? In other words, picturs just as you've shown in a list format, but not all generated at once, only as needed by a mouse hover? I was thinking (as I believe DJ suggested a while back), that the arrows could also be overlaid on top of the PCB board as well, so when finding / fixing the DRC, the information could be overlaid. Another possibility is a bold red / orange / whatever colour circle indicating the areas directly on the board (at whatever zoom). I'd make the annotations mouse-over to a pre-light colour (indicating they are live controls, then have them click-to-zoom right into the violation. It might clash, but some kind of Press Escape to zoom back out where I was before could be handy after you've fixed the violation. -- Peter Clifton Electrical Engineering Division, Engineering Department, University of Cambridge, 9, JJ Thomson Avenue, Cambridge CB3 0FA Tel: +44 (0)7729 980173 - (No signal in the lab!) ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
This is a lot nicer than the current DRC but I would not present DRC errors in this manner. I really like DJs idea of the DRC error layer. Place a circle around each DRC error on the DRC error layer. When you mouse-over the error details could appear. Please do not add dialog boxes. I do not want a dialog with the machine. I want to see details of the error when I mouse-over it. When the mouse moves the details should disappear. A mechanism for stepping trough the DRC errors would be nice. A key command to zoom into the area surrounding the DRC error would be nice. An option for periodically running DRC automatically would be nice. (* jcl *) -- You can't create open hardware with closed EDA tools. http://www.luciani.org ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
On Sun, 29 Mar 2009 11:55:37 -0400, John Luciani wrote: I really like DJs idea of the DRC error layer. Place a circle around each DRC error on the DRC error layer. When you mouse-over the error details could appear. If the proposed pop-up contains as much information as the dialog in Peters mock-up, it would grow to an annoying size. You'd have to make sure, it does not extend off-screen, nor block the view on the actual site of violation. IMHO, mouse-over events would be better bound to more graphic feedback during edit actions. Please do not add dialog boxes. I like to work with two screens. This would mix well with peters design. The dialog with the list of current violations would sit on the right while the layout can be dealt with on the left screen. A separate DRC window makes it easier to deal with a bunch of accepted violations. ---(kaimartin)--- ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
On Sun, 29 Mar 2009 16:21:32 +0100, Peter Clifton wrote: http://www2.eng.cam.ac.uk/~pcjc2/geda/drc_mockup.png Very nice. A few comments: * Details of the meaning of a type of violation need not be repeated again and again. This is only interesting when a DRC error is encountered for the first time. So it wastes valuabel screen estate for the vast majority of cases. The text might be replaced by a button details, or help. * Add the name of the layout in the title of the window. Avoids confusion when working with more than one layout at a time. * Add a button to ignore a specific violation. * Add a button to initiate a DRC check after some edits have been done. I am looking forward to the revamped DRC-UI! :-) ---(kaimartin)--- ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
On Sun, Mar 29, 2009 at 04:48:39PM +, Kai-Martin Knaak wrote: I like to work with two screens. This would mix well with peters design. The dialog with the list of current violations would sit on the right while the layout can be dealt with on the left screen. The dialog can also group by common cause (insufficient clearance, too-small annular ring, etc). Plus it could have buttons like force annular ring to min size. I also like the idea of a DRC layer. I think you still need something like the dialog to help you navigate it. -- Ben Jackson AD7GD b...@ben.com http://www.ben.com/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
Peter Clifton wrote: some kind of Press Escape to zoom back out where I was before could be handy after you've fixed the violation. Even better is to use more than one window to view/edit layout at once. How are we on that front? Is the interprocess communication in pcb ready for opening another window on the same data that is also up to date as data changes? IOW, not just another pcb instance, or a window that has old data after changing data-objects the first window. John G ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
Kai-Martin Knaak wrote: If the proposed pop-up contains as much information as the dialog in Peters mock-up, it would grow to an annoying size. You'd have to make sure, it does not extend off-screen, nor block the view on the actual site of violation. IMHO, mouse-over events would be better bound to more graphic feedback during edit actions. [jg] I like that style also. The details can fly by in the command window and log files of that. [jg] IOW, a mouse over could generate a repeat of the DRC error details adding to the size of the log file and length of command window history text. For a graphic tool like pcb, a mouse over popup is one thing, many users would not like it to pop in their face, and it would be nice to be able to trigger a fixed/user-locatable small window update instead of a popup, configurable of course by the all-controlling-user without changing source or recompiling. Ben Jackson wrote: I also like the idea of a DRC layer. I think you still need something like the dialog to help you navigate it. [jg] OK. A dialog for stepping through DRCs. But not triggered by a hover -- too invasive -- many of us move the mouse as we track our eyes, ready to select and act on it. Triggering a hover action then would be counterproductive. [jg] I would only ever use show-DRC-details-in-toolbar-window if such a GUI feature came available -- never a popup. John G ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
I like the idea of showing the violation in a window, but do we need that many? Maybe something like gschem's symbol selection, where when you select a violation it's shown in a window. Tree view lets you group violations by type and expand/collapse them: + drill too small (5) + annular ring too small (18) - copper areas too close + 5.0 mil line/pin at 12500,7500 + 4.8 mil line/pin at 11500,8500 + 5.0 mil line/pin at 10500,3250 + silk over pads (1) One of my tasks for LF is to teach the HIDs how to deal with multiple windows; after that there would be no reason why you couldn't edit the violation right in the thumbnail view! Perhaps a mini-whole-board view, with the board dimmed and crosshairs over the violation? Another option is a call-out on the main board - let the board be zoomed way out but have a pop-up near the violation that shows, like a magnifying glass, a close-up of the violation. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
I really like DJs idea of the DRC error layer. My idea there was to allow PCB to have layers that some parts of the core just ignored. A DRC layer would be ignored by anything looking for copper, for example. I hadn't thought about how to interact with those layers, other than the same way we interact with copper layers now. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
Even better is to use more than one window to view/edit layout at once. How are we on that front? Nowhere yet. I'd like to update the GUIs to support more than one drawing window at a time; we have something like that with the pinout window but it's not generic. Once N windows are supported, we can add views all over the place - in dialogs, on other monitors, etc. One goal is two-monitor setups - one monitor for just the board, no decoration. The second (smaller?) monitor has the GUI and always shows the whole board, but with a panner or scrollbars to control the other monitor's view. Is the interprocess communication in pcb ready for opening another window on the same data that is also up to date as data changes? You don't need IPC for that, just create another drawing window. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
On Mar 29, 2009, at 1:29 PM, DJ Delorie wrote: + drill too small (5) + annular ring too small (18) - copper areas too close + 5.0 mil line/pin at 12500,7500 + 4.8 mil line/pin at 11500,8500 + 5.0 mil line/pin at 10500,3250 + silk over pads (1) I like this but I suggest a different grouping for drill too small and annular ring too small. Often vias get placed that violates rules. we put 100 of them down 25 that are 10mil hole and 26 mil size, this stack violates say a drill too small ( 15 mil min ) 50 that are 25 mil hole and 36 mil size, this stack violates min annular ring. ( 10 mil min ) 25 that are 8 mil hole and 20 mil size, this stack violates drill too small and min annular ring. This presents two DRC errors that are already separate clusters, it's the via stack that violates the rules not each and every via The reason for this is in design we usually stick to a few via selections. so as I see it. + Via violations 10 mil by 36 mil via violates drill too small ( 25 ) 25 mil by 36 mil via violates min annular ring. ( 50 ) 8 mil by 20 mil via violates drill too small and min annular ring ( 25 ) + Pin violations .. when you get details on those via clusters some fixing options should be made available. with the DRC rules we know the minimum via sizes, 15 mil hole and 35 mil size. for the first error we just need to adjust the drill bigger. This should not cause any issues, nice easy fix. The second error should recommend that we shrink the drill, this would not break layout rules, but could cause electrical violations. This should be logged to a DRC violations and corrective action file. The third error we need to bump up the min drill and then the via size to make the vias DRC compliant. This will undoubtedly cause vias to break other DRC rules, but the drills are a big limiting factor, before going to say laser drills. This type of error suggests that we need a higher tech process for this board. Similar errors will occur on pins, similar resolutions could apply, but the question I ask here is should we fix the footprint or just fix the layout? ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
On Sun, 2009-03-29 at 11:33 -0700, Ben Jackson wrote: On Sun, Mar 29, 2009 at 04:48:39PM +, Kai-Martin Knaak wrote: I like to work with two screens. This would mix well with peters design. The dialog with the list of current violations would sit on the right while the layout can be dealt with on the left screen. The dialog can also group by common cause (insufficient clearance, too-small annular ring, etc). Plus it could have buttons like force annular ring to min size. Yep, the Auto fix button would be handy. Candidates for an easy fix: Annulus size, drill size, line / arc width, polygon clearances. The trick is to figure out that the fix can be applied without introducing further violations (or perhaps we don't care - just let them stack up in the list.). More importantly though, I think we need to improve the geometric reporting of the existing checks though. The X,Y coordinates quoted by the back-end aren't actually always centred on the violation, and in many cases, we don't actually know what the violating distance is.. just that the rule has failed. I also like the idea of a DRC layer. I think you still need something like the dialog to help you navigate it. -- Peter Clifton Electrical Engineering Division, Engineering Department, University of Cambridge, 9, JJ Thomson Avenue, Cambridge CB3 0FA Tel: +44 (0)7729 980173 - (No signal in the lab!) ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: DRC UI mockup
On Sun, 2009-03-29 at 14:31 -0500, John Griessen wrote: Even better is to use more than one window to view/edit layout at once. How are we on that front? Is the interprocess communication in pcb ready for opening another window on the same data that is also up to date as data changes? IOW, not just another pcb instance, or a window that has old data after changing data-objects the first window. Tricky, but is in theory possible (of course). -- Peter Clifton Electrical Engineering Division, Engineering Department, University of Cambridge, 9, JJ Thomson Avenue, Cambridge CB3 0FA Tel: +44 (0)7729 980173 - (No signal in the lab!) ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user