Incorrect rotation data from export pick and place

Report bugs here
Message
Author
usedtobe
Posts: 12
Joined: 26 Oct 2014, 10:20

Incorrect rotation data from export pick and place

#1 Post by usedtobe » 30 Sep 2019, 05:04

Howdy,

I'm finding that most of the time, components on the bottom side of a PCB come out with the wrong rotation data when I select "Export -> Pick and Place"

For example, if set a component's angle to 0 degrees, press spacebar once to rotate 90 degrees, the resulting rotation value is 270. This leads to many backwards diodes and is quite a headache for my contract manufacturers, and me before I realized what was happening.

Tomg
Expert
Posts: 2028
Joined: 20 Jun 2015, 07:39

Re: Incorrect rotation data from export pick and place

#2 Post by Tomg » 30 Sep 2019, 22:14

Are these components from the standard DipTrace libraries or are they from custom libraries?
Can you post a procedure that will show how to reproduce this problem starting with the original placement of the component from a library?

I did notice a difference in rotation angle between the Component Properties dialog window and the Properties panel on the right side of the screen when I performed the following steps...
1) Place a component from the library on the Top layer.
2) Rotate the component 90 degrees by selecting/highlighting it and pressing the [Space] bar once.
3) Double-click on the component to bring up the Component Properties dialog window and compare its rotation angle with that displayed in the Properties panel on the right side of the screen. They should be the same.
4) In the Component Properties dialog window, enter a new rotation angle of 0 degrees and click on the [OK] button. Notice that the angle displayed in the Properties panel on the right side of the screen is now 360 degrees. Have more fun by observing the angle displayed in the Properties panel (right side of screen) when the component is repeatedly rotated using the [Space] bar.

Maybe I'm not able to understand why this is happening because it is way too early in the morning for me, but it seems unusual and unnecessary to see rotation angles of 360 degrees or more being displayed.
cr.gif
cr.gif (48.92 KiB) Viewed 657 times
Tom

usedtobe
Posts: 12
Joined: 26 Oct 2014, 10:20

Re: Incorrect rotation data from export pick and place

#3 Post by usedtobe » 07 Oct 2019, 06:21

Thanks for the reply, Tom.

These are parts from custom libraries. My parts are usually footprints that came with Diptrace with a custom part number.

Here is my repeatable process:

1) Place component, in this case a SOD-323 diode package.
2) Rotate the component 90 degrees by selecting/highlighting it and pressing the [Space] bar once. Diode is now pointing "down"
3) Double-click to bring up Component Properties. Angle says 90 degrees.
4) Right-click on the component, select "Change Side". Diode is now on the bottom of the PCB and pointing "up"
5) Double-click to bring up Component Properties again, angle still says 90 degrees but the component has rotated 180 degrees.

I had read another post with a similar issue, but wasn't able to fully understand what happened with them or how to fix it.

Cheers,
Chris

usedtobe
Posts: 12
Joined: 26 Oct 2014, 10:20

Re: Incorrect rotation data from export pick and place

#4 Post by usedtobe » 07 Oct 2019, 06:54

viewtopic.php?f=9&t=12794

this was the other thread, and their method of replacing the part did not help here.

Tomg
Expert
Posts: 2028
Joined: 20 Jun 2015, 07:39

Re: Incorrect rotation data from export pick and place

#5 Post by Tomg » 07 Oct 2019, 10:38

Looks like you nailed it, Chris. Maybe some flag/variable is not being properly reset when resetting the angle back to zero in the properties window. This might explain what I'm seeing, too. Notice that before starting any rotations, changing sides works as it should without vertically flipping the pattern. It all falls apart when a rotation is executed and then reset back to zero via the properties dialog window. A definite bug that Novarm needs to fix right away.
Tom

Alex
Technical Support
Posts: 3897
Joined: 13 Jun 2010, 23:43

Re: Incorrect rotation data from export pick and place

#6 Post by Alex » 08 Oct 2019, 01:42

I repeat the steps to confirm the problem but there is no problem. If you move component from top to bottom side it obviously looks mirrored because it is on bottom side now. But user looks on the component from top side through the board.

The topic by the link viewtopic.php?f=9&t=12794 is different case and it is confirmed bug.

Tomg
Expert
Posts: 2028
Joined: 20 Jun 2015, 07:39

Re: Incorrect rotation data from export pick and place

#7 Post by Tomg » 08 Oct 2019, 03:15

There is a vertical flip of the copper and "shape on silk" that shouldn't be happening. Remember that we are looking down through the PCB from the top. See these examples...

U1: Original placement.
U2: After executing Change Side (no rotation). This is as it should be; no vertical flip of anything.
U3: After rotating 90 degrees using the [Space] bar, and then resetting the angle back to zero in the Component Properties dialog window. Notice that the pads and the "shape on silk" are fine, but the copper text has not returned to zero degrees.
U4: After rotating 90 degrees using the [Space] bar, resetting the angle back to zero in the Component Properties dialog window, and then executing Change Side. Notice how the orientation of the "shape on silk" and all copper objects has fallen apart.
rotation.gif
rotation.gif (23.25 KiB) Viewed 633 times
Each example was initiated with a fresh placement directly from the library.
Tom

usedtobe
Posts: 12
Joined: 26 Oct 2014, 10:20

Re: Incorrect rotation data from export pick and place

#8 Post by usedtobe » 08 Oct 2019, 03:57

Thanks for the reply, Alex!

There definitely is an issue. When a component is moved to the bottom of the board, it will display (and thus export) an angle of 90 degrees when pointing "up" which is incorrect. An angle of 0 degrees, for a diode package, will have the cathode (-) pointing "left". a 90 degree rotation would rotate it counter-clockwise 90 degrees, resulting in the cathode pointing "down"

I've attached photos showing this happening. This was the process:

(1) Add a diode (this was from the diptrace library, not a custom one) Note the angle of 0 degrees
(2) press space bar once, note the angle of 90 degrees with cathode pointing down
(3) right click on the component, select "change side". note the angle is still 90 degrees yet the component has rotated 180.
Attachments
Screen Shot 2019-10-08 at 9.55.08 AM.png
Screen Shot 2019-10-08 at 9.55.08 AM.png (164.83 KiB) Viewed 626 times
Screen Shot 2019-10-08 at 9.55.15 AM.png
Screen Shot 2019-10-08 at 9.55.15 AM.png (187.98 KiB) Viewed 626 times
Screen Shot 2019-10-08 at 9.55.32 AM.png
Screen Shot 2019-10-08 at 9.55.32 AM.png (160.03 KiB) Viewed 626 times

Alex
Technical Support
Posts: 3897
Joined: 13 Jun 2010, 23:43

Re: Incorrect rotation data from export pick and place

#9 Post by Alex » 09 Oct 2019, 02:30

When you change side a component, visually it looks like the component is flipped horizontally (if component angle is 0 or 180 degrees) or flipped vertically (if component angle is 90 or 270 degrees). But that is OK because you see bottom layer through the board.

usedtobe
Posts: 12
Joined: 26 Oct 2014, 10:20

Re: Incorrect rotation data from export pick and place

#10 Post by usedtobe » 09 Oct 2019, 03:28

Sorry Alex but that is not true. Having the component flip vertically** when you change sides but the angle staying the same is definitely wrong. Specifically, the cathode of a diode pointing up and calling that 90 degrees rotation is 180 degrees away from the industry standard, and this bug is causing problems with automated assembly, requiring manual inspection and correction of all XY data. This really is a problem! Manually checking 50 diodes in a layout against the XY output is very time consuming and error prone. Tom also showed earlier in this thread that the angle in the "Component Properties" window does not always match the "Properties" tab on the right side of the main window. There is obviously an underlying issue here.

Thank you for your time and help!

**edited to clarify vertical flipping. horizontal flipping with the angle staying the same is correct, but not vertical flipping.
Last edited by usedtobe on 09 Oct 2019, 05:16, edited 1 time in total.

Post Reply