hominoids / SBC_Case_Builder

Autonomous SBC case generation using SBC Model Framework
GNU General Public License v3.0
370 stars 23 forks source link

Missing Reset Button on Star64 #34

Closed Fishwaldo closed 1 day ago

Fishwaldo commented 2 months ago

Hi, Just some feedback - The star64 model is missing the reset button between the USB jacks and the headphone jack. I've attached a image here for your reference. Star64-SBC-1

You can see it on the top left.

hominoids commented 2 months ago

Thanks for the feedback, I don't have one of these SBC. Can you post a measurement here from the top of the PCB to the top edge of the button or make the change in SBC Model Framework and issue a PR? It looks like there are two IPEX connectors next to it as well that aren't on the model which I'll also add. Any other corrections or additions?

Fishwaldo commented 1 month ago

Hi, I tried to make the changes but failed miserably. Here is some measurements.

image

image

Fishwaldo commented 1 month ago

Anything else you need?

hominoids commented 1 month ago

Well the height is important but I also need x,y in reference to the first photo you posted so I can locate the x,y position of the button on the PCB. so looking at the photo, the top left corner of the PCB to the top left corner of the body of the button, Or in other words, how far from the top edge of the PCB is the button located, in mm if possible. As soon as I get that information it won't take long to add it and push the changes to SBCCB. Thanks for the help in straightening out this SBC.

Fishwaldo commented 1 month ago

Ahhh. Sorry I was confused about the "top" of the board. Here is another pic image

A few other things (that might be relevant?)

The Ethernet port is stacked, and by default exceeds the height of the cases. Here is the height of the Ethernet jacks: image (I just increased the top half by 13 or 14 (if I went to 15, the cutouts for the vent disappeared but 15 would have been nice clearance)

Also, the PCI connector exceeds the width of the PCB by 1-2mm, and is a tight fit with the side of the case. Maybe increase the width a little bit? image

Final point, the bottom of the USB jacks also exceed the length of the board and need a cutout on the bottom of the cases, otherwise the PCB doesn't rest on the standoffs but on the edge of the bottom of the case. Maybe just increase the height of the standoffs by default? image

Last issue: the cutout for the HDMI port should be moved a slight bit lower. It ended up printing as below:image (HDMI port also rests on the bottom side of the case)

(Cheers for your assistance, I know a lot of people have been asking for a case for the star64!)

Fishwaldo commented 1 month ago

Sorry 2 other small things: This might not be an issue when the reset button is done, but right now, the length of the case is a bit small, and it rests on top of the reset button... image (hard to see with black PLA, sorry)

Also, the SD card slot is too low (the top of the slot needs to align with the top of the standoffs) and it needs to move slightly right when looking from the side: image

Fishwaldo commented 1 month ago

That last picture is from the right edge of the slot to the edge of the board.

hominoids commented 1 month ago

Great, that's the type of feedback I need. It looks like the PCB thickness may be incorrect since it is sitting slightly recessed in the case bottom. The top of the PCB surface should be even with the top edge of the case bottom. Component openings in both case halves are made automatically as needed. When it is off it can cause similar problems to what your reporting. What is the PCB thickness? It also looks like the gap, the distance between the PCB and case wall, may need to be increased in SBCCB.

I'll make all these changes and include a saved case example for you to try. The test case will tell me critical info and in the end we'll end up with a verified SBC model that will work for all the case designs in SBCCB. I have also added the FPC connectors but it is not clear what the pin count is on them or which way the FPC cable connects. This is important so that the mask openings face the correct direction. The current changes are just my guesswork. I'll let you know when the test case is ready, maybe later today still. star64_model

hominoids commented 1 month ago

All the changes have been made on the Main branch of SBC Case Builder and I saved a test case called star64_shell. When you have time, use that case for a test print so if any changes are needed I'll know what the SBCCB parameters were when printed. You'll need to update SBCCB and it's submodule SBC Model Framework prior to printing.
Screenshot_2024-05-10_18-18-22 FYI, I increased the case gap to 2mm to give more room and left the PCB thickness at the default 2mm. The double stacked rj45 was too tall so I shortened it to 25mm. The SBC maximum component height was also set incorrectly at 17mm which is why it protruded thru the case. The SOC location is unknown to me so I approximated it's location.

I try to hold design tolerances to plus or minus 1/8mm so any warping or splitting of the print will effect the fit of the case. Let me know how it went and what if any changes are needed. Straight on photos of any problems will be helpful for the corrections.

Fishwaldo commented 1 month ago

when I render in openscad I get the following error:

Parsing design (AST generation)...
Compiling design (CSG Tree generation)...
ECHO: Case_Width = 135, Depth = 87.5, Top = 28, Bottom = 12
Rendering Polygon Mesh using CGAL...
Geometries in cache: 1352
Geometry cache size in bytes: 12553112
CGAL Polyhedrons in cache: 3
CGAL cache size in bytes: 77086416
Total rendering time: 0:10:28.746
   Top level object is a 3D object:
   Simple:         no
   Vertices:    40468
   Halfedges:  144858
   Edges:       72429
   Halffacets:  64750
   Facets:      32375
   Volumes:        13
WARNING: Object may not be a valid 2-manifold and may need repair! 
Rendering finished.

if I export to my printer it complains about a damaged STL.

Fishwaldo commented 1 month ago

Oh and PCB thickness is 0.9

hominoids commented 1 month ago

The Main branch and it's sub module have been updated with the new PCB thickness. I changed the style of the SD card holder and also increased the size of the standoff support diameter to 14 for star64_shell. At 13mm it was close to the side wall and was triggering a false positive manifold error. OpenSCAD v21.1 complained but SuperSlicer v2.4.58.5 saw that it was indeed manifold. The code for manifold detection isn't that sophisticated always. I will likely add a blip about it in the README.md in the near future to warn users. Give it another try and let me know if there are any more problems.

Fishwaldo commented 1 month ago

Hi, I did a test print today and it's almost perfect!

1) HDMI port needs to shift to the left (when looking at it directly) by about 1.5-2mm

image

2) The Standoff are a bit misaligned on the side where the Ethernet port is. I hope you can see from this pic? image

3) (may be just due to me doing a fast print) - the thickness of the board means it's not a perfect fit between the top/bottom parts and leave a small gap around the joint (as seen on the first photo). The reset button and SD card are aligned perfectly.

Fishwaldo commented 1 month ago

Here is another shot of the HDMI

image

Fishwaldo commented 1 month ago

This doesn't bother me but if you want to center the FAN over the SOC, you can see its slight off in this pic:image image

It needs to move down 5mm (centered?) and to the left 4mm when viewed with the Ethernet ports on the left of the pic.

hominoids commented 1 month ago

Ok, I made some more changes. The HDMI was moved and the PCB thickness increased to 1.6. I know you said 1mm but since there is a gap between the halves that cannot be right. Most SBC are 1.6mm and that would make sense with what I'm seeing. I also made a slight adjustment to the power connector and moved the PCB holes to 3.5mm from the corners. FYI, The top fan opening is meant to be centered on the heatsink, not the SOC. If you want it centered on the SOC we can disable the fan mask under the Fan and Vent Openings Tab and create an accessory entry in sbc_case_builder_accessories.cfg for the new fan mask location with a subtractive entry. https://github.com/hominoids/SBC_Case_Builder#fan_mask When you get a chance I could use the SOC size and location too. The location measurement should be from the lower left corner of the PCB to the lower left corner of the SOC with the PCB orientated so the RJ45 connectors are on the left. That would complete the model once we finish the final tweaks.

When there are no OEM drawings or models It usually takes me at least 2-3 test prints to get things zeroed in correctly, depending on how accurate I can measure things. You might consider doing the bottom test print first to see if the holes are correct, then the top if they are correct. If they aren't, let me know ASAP and I'll adjust them accordingly, no point in wasting time and resources. Let me know how things go...were almost done. Thanks

hominoids commented 1 month ago

Just wanted to verify if the last adjustments worked out before I close this issue? Does everything align? If so, I'll mark the star64 as verified-green otherwise I'll leave it as yellow?

Fishwaldo commented 1 month ago

Sorry I haven't had a chance to do another print. I've started one now and will let you know soon.

Fishwaldo commented 3 weeks ago

Sorry I ran out of filament so only completed the print today.

The mounting holes are still a bit off. I hope these pics are clear enough for you (I have one screw on the hole near the power connector)

image image image

hominoids commented 3 weeks ago

Ok, lets do this a different and more accurate way so not to waste any more of your time and filament. Also, from the photo it looks like the PCB holes may not be located symmetrically in the corners, it's hard to tell.

First use your digital calipers to measure the inside diameter of the PCB hole. Use the top set of gauges on the caliper that are designed for measuring inside diameters. Then use the other set to measure the distance from the hole edge to the PCB edge in both the x and y axis, in case the hole isn't placed symmetrically.

Half the hole diameter plus the distance from the edge of the PCB to the edge of the hole will give us the exact location of the center of the hole from the corner. If the x and y measurements for the PCB edge to hole edge are different, then the hole isn't placed systematically and I'll need to know both measurements and which measurement goes with which axis when the long side of the PCB board is orientated horizontal along the x-axis. Check all four holes too just in case they aren't placed symmetrical to each other. If measurements for all four holes are the same then I only need measurements from one of them. Thanks

On 6/7/24 03:17, Justin Hammond wrote:

Sorry I ran out of filament so only completed the print today.

The mounting holes are still a bit off. I hope these pics are clear enough for you (I have one screw on the hole near the power connector)

image image image

Fishwaldo commented 2 weeks ago

Ok - Here we go: hole diameter: 3.5mm Hole A - x side 2.66mm - y side - 2.5mm Hole B - x side 2.66mm - y side - 2.5mm Hole C - x side 2.66mm - y side - 2.8mm Hole D - x side 2.66mm - y side - 2.65mm

y side width - 79.5mm x side height - 127mm

Fishwaldo commented 2 weeks ago

image

hominoids commented 1 week ago

The holes have been adjusted.

hominoids commented 4 days ago

I just received a very nice assortment of Pine64 SBC and one of them is a Star64. You might want to hold off doing any test prints. I'll start with the Star64 and after a good SBCCB test print let you know when it is ready.

hominoids commented 1 day ago

The Star64 model has been completed and a test case printed successfully. Your hole measurements were spot on. The Star64_shell saved case should be used which incorporates a 3mm gap. It has a 40mm fan mask but you can change it to 25mm in the tab Fan and Vent Openings -> fan size. The case also uses 3mm inserts in the top standoffs which can be disabled if your not using them, tab SBC Top Standoff Global Settings -> top standoff insert. If you disable them make sure to select the standoff and hole size you want. I consider this complete and will close the issue, thanks for the help.