SBC Model Framework

Post Reply
hominoid
Posts: 436
Joined: Tue Feb 28, 2017 3:55 am
languages_spoken: english
ODROIDs: C2, C4, XU4, MC1, N1, N2
Location: Lake Superior Basin, USA
Has thanked: 39 times
Been thanked: 124 times
Contact:

SBC Model Framework

Post by hominoid »

For those designing with SBC or micro-controllers, having a model can be important. I want to share a simple, lightweight and dynamic framework for the generation of SBC and micro-controller models written in OpenSCAD. When I originally created the OpenSCAD XU4 model a couple years back, it was a hard coded static model and the only SBC I owned. That worked fine at the time but since then I have acquired a few more SBC and I have had a need for access to different models while working on various projects. The current project I'm working on crosses multiple SBC so I decided to pause and develop the models for the other SBC involved. Creating models for the whole HK line had been on my project list for awhile but never reached a high enough priority to complete.
11 Odroid sbc.png
11 Odroid sbc.png (104.17 KiB) Viewed 162 times
Instead of hard coding all of them I decided that it would be better to create a framework which could handle multiple SBC and micro-controllers. Using this approach allows access to all of them through a single module call while keeping the code small and efficient. This is important to me since large complex assemblies can take considerable time to compile in OpenSCAD. For comparison, I recently examined a similar STEP and DXF model of the HK Odroid H2. The STEP model was 993KB and the DXF file size was 1,273KB. Not particularly large for a 3D static model but when several models are involved it can start to become significant. In contrast, all of the code and the SBC data set used in this framework, which represents 7+ SBC, totals 83KB and the efficiency of this method will only increase as more models are added.

For me, the most important criteria for most of my work is the physical dimensions so that locating and checking can be done quickly and easily as I develop designs. To keep things as accurate as possible, the information for the models was derived from both HK supplied 2D mechanical layout drawings and actual measurements of the SBC's I own. In the cases were I did not own a particular SBC, I also used component data sheets from the manufacturer. When the component manufacturer was not known, I examined datasheets from multiple manufactures to generalize a component design. Aesthetics are not as important to my use as either code size or render speed, so it is secondary in this model framework. With that said, I have spent time developing better component models so they are more complete and do look better then the original XU4 model components. I will be maintaining and adding to this SBC library as needed or other HK SBC's become available.

The SBC currently supported and complete in this initial release are:
Hard kernel's C1+, C2, XU4, N1, N2, N2+, MC1, HC1, HC2 and H2/H2+
-version 1.01 added HK Odroid-N2
-version 1.02 added HK Odroid-C4, Odroid-XU4Q
-version 1.03 added HK Odroid-N2+

Sometimes only board dimensions and hole layout is needed for a particular design and they can be added quickly and easily in this framework by editing an ASCII configuration file. I did this for testing and to illustrate the technique for the following SBC:

Raspberry Pi Foundation's Model 3B+, 3B, 3A+, 2, 1A+,
Pine64's A64, Rock64, RockPro64.
-version 1.02 added Atomicpi and Jetson Nano

Using the Framework
Any of the models can be called by passing the requested SBC model in the form of sbc("xu4"). Below is example code that was used to generate the opening picture.
sbc_test.scad

Code: Select all

include <sbc_models.scad>

translate ([-120,0,0]) sbc("c4");
linear_extrude(height = 2) {translate([-120,-20,0]) text("Odroid C4");}

translate ([-120,100,0]) sbc("c2");
linear_extrude(height = 2) {translate([-120,80,0]) text("Odroid C2");}

translate ([-120,200,0]) sbc("c1+");
linear_extrude(height = 2) {translate([-120,180,0]) text("Odroid C1+");}

translate ([0,0,0]) sbc("xu4");
linear_extrude(height = 2) {translate([0,-20,0]) text("Odroid XU4");}

translate ([0,100,0]) sbc("xu4q");
linear_extrude(height = 2) {translate([0,80,0]) text("Odroid XU4Q");}

translate ([0,200,0]) sbc("hc1");
linear_extrude(height = 2) {translate([0,180,0]) text("Odroid HC1/HC2");}

translate ([0,290,0]) sbc("mc1");
linear_extrude(height = 2) {translate([0,270,0]) text("Odroid MC1");}

translate ([120,0,18]) sbc("n2");
linear_extrude(height = 2) {translate([120,-20,0]) text("Odroid N2");}

translate ([120,140,0]) sbc("n1");
linear_extrude(height = 2) {translate([120,120,0]) text("Odroid N1");}

translate ([240,0,0]) sbc("h2");
linear_extrude(height = 2) {translate([240,-20,0]) text("Odroid H2");}
A component of an SBC that is not needed or needs to be disabled temporarily, can be excluded by adding a minus sign to its class entry in the sbc_models.cfg file. One example of this use might be for emmc's. Both the emmc and the plug(attached to the PCB) are available. Below is an illustration for the XU4 to disable the display of the emmc while displaying the emmc plug.

Code: Select all

// Hard Kernel Odroids
["xu4",83,59,1,3.5,17,6,                                // sbc model, pcb size and component height
3.5,3.5,3,3.5,55.5,3,                                   // pcb holes 1 and 2 location and pcb hole size
79.5,3.5,3,79.5,55.5,3,                                 // pcb holes 3 and 4 location and pcb hole size
79.61,22,3,28.39,42,3,                                  // pcb holes 5 and 6 location and pcb hole size
0,0,3.3,0,0,3.3,                                        // pcb holes 7 and 8 location and pcb hole size
0,0,0,0,0,0,                                            // pcb holes 9 and 10 location and pcb hole size
14.5,15.75,1.25,59.7,20.55,0,0,"top",                   // soc1 size, location, roation and side
0,0,0,0,0,0,0,"",                                       // soc2 size, location, roation and side
0,0,0,0,0,0,0,"",                                       // soc3 size, location, roation and side
0,0,0,0,0,0,0,"",                                       // soc4 size, location, roation and side
47.5,13.7,0,"bottom","memory","emmc_plug",              // emmc plug location, rotation, side, class and type
45,0,0,"bottom","-memory","emmc",                        // emmc location, rotation, side, class and type
45.85,5,0,"top","storage","sdcard",                     // sdcard location, rotation, side, class and type
79,7.15,0,"top","switch","slide_4x9",                   // switch location, rotation, side, class and type
25.925,52.925,0,"top","button","momentary_6x6x9",       // pwrbutton location, rotation, side, class and type
34.85,-1,0,"top","plug","pwr5.5_7.5x11.5",              // pwrplug location, rotation, side, class and type
26,0,0,"top","usb2","single_vert_a",                    // usb2 location, rotation, side, class and type
7.55,41.6,180,"top","usb3","double_stacked_a",          // usb3 location, rotation, side, class and type
7.4,0,0,"top","network","rj45_single",                  // ethernet location, rotation, side, class and type
60,-1,0,"top","video","hdmi_a",                         // hdmi location, rotation, side, class and type
0,37.8,90,"top","plug","uart_micro",                    // uart location, rotation, side, class and type
0,25,270,"top","plug","rtc_micro",                      // rtc location, rotation, side, class and type
27,22,90,"top","fan","micro",                           // fan location, rotation, side, class and type
35.4,52.25,0,"top","gpio","encl_header_30",             // gpio1 location, rotation, side, class and type
76.25,32.5,270,"top","gpio","encl_header_12",           // gpio2 location, rotation, side, class and type
43.8,27.25,0,"top","ic","ic_5.75x5.75",                 // pmic location, rotation, side, class and type
32.5,40.5,0,"top","ic","ic_7x7",                        // usbhum 7mm location, rotation, side, class and type
11.7,22.8,0,"top","ic","ic_6x6",                        // nic location, rotation, side, class and type
0,0,0,"*","*","*"],                                     // end
Modifying and Adding Components
The framework is setup so that both SBC and components can be easily added or modified and the resulting models can be used regardless of the state of completion. The framework consists of three parts, the SBC data set (sbc_models.cfg), the main module(sbc_models.scad) and a library of components(sbc_library.scad).

sbc_models.cfg is an ASCII file that can be modified with any text editor. It contains a data set for the description of a given SBC.
The schema is as follows:

Code: Select all

"model",pcbsize_x, pcbsize_y, pcbsize_z, pcbcorner_radius, topmax_component_z, bottommax_component_z
pcb_hole1_x, pcb_hole1_y, pcb1_hole_size, pcb_hole2_x, pcb_hole2_y, pcb2_hole_size
pcb_hole3_x, pcb_hole3_y, pcb3_hole_size, pcb_hole4_x, pcb_hole4_y, pcb4_hole_size
pcb_hole5_x, pcb_hole5_y, pcb5_hole_size, pcb_hole6_x, pcb_hole6_y, pcb6_hole_size
pcb_hole7_x, pcb_hole7_y, pcb7_hole_size, pcb_hole8_x, pcb_hole8_y, pcb8_hole_size
pcb_hole9_x, pcb_hole9_y, pcb9_hole_size, pcb_hole10_x, pcb_hole10_y, pcb10_hole_size
soc1size_x, soc1size_y, soc1size_z, soc1loc_x, soc1loc_y, soc1loc_z, soc1_rotation, "soc1_side",
soc2size_x, soc2size_y, soc2size_z, soc2loc_x, soc2loc_y, soc2loc_z, soc2_rotation, "soc2_side",
soc3size_x, soc3size_y, soc3size_z, soc3loc_x, soc3loc_y, soc3loc_z, soc3_rotation, "soc3_side",
soc4size_x, soc4size_y, soc4size_z, soc4loc_x, soc4loc_y, soc4loc_z, soc4_rotation, "soc4_side",
component_x, component_y, component_rotation, "component_side", "component_class","component_type"
Part of the schema has a fixed length and includes the SBC model, PCB xyz size, corner radius, top and bottom maximum component heights, up to 10 thru holes and up to 4 SOC. This part of the schema is the same length for all SBC definitions. The number of component entries is unlimited in quantity and I'll discuss that in a minute. I believe the basic PCB data is self explanatory. The physical dimensions(xyz) must be known in order to create it. The top and bottom maximum component Z height can be useful for designs using this library. PCB holes are limited to 10 defined by their xy center location and diameter. The number can be easily expanded if this becomes restrictive.

I choose to accommodate multiple SOC and not include them as a component for a couple of reasons. There are already SBC's that are specialized and include multiple processing units. I refer to them all in this framework as SOC but they could also be micro-controllers, neural-net processors, or dedicated communication processors on the PCB, to name a few. By defining them separately from components, additional information such as size and height can be included without burdening every component entry with this additional information. Four entries should be sufficient but it too can be easily expanded in the future without significant modification of the program. SOC entries can be rotated and also be placed on either side of the PCB. If a hole or SOC is not needed leave scalar values as zero and text entries empty.

The last entry in the schema is for components. A component is anything that is attached to the PCB. Any number of components from the library can be placed per SBC. The algorithm will automatically place as many or as few as defined. There are six values per component. The xy component location for the top of the PCB are measured from the lower left corner of PCB to the lower left corner of component or opening, with holes measured to the center. Bottom side components are measured from top left corner to top left corner of component when the PCB is rotated around the x axis. All measurements are in mm and as a general rule PCB orientation is with long side of the PCB along the x axis.

The rotation value does not rotate the component around the xy location. It is a reference to the direction that the component faces and whichever corner of the component is in the lower left after rotation, will assume the xy location specified for the component entry. This allows a uniform means to measure the placement of components regardless of their orientation on the PCB. The schema entry labeled component_side is the side of the PCB the component is to be placed on. So far we covered component_x, component_y, component_rotation and component_side. The last two entries are component_class and component_type. These entries together determine what component is placed. Each component class contains one or more component types. There are currently 17 component classes with corresponding component types.

memory - emmc, emmc_plug, sodimm_5.2, sodimm_9.2
switch - slide_4x9
button - momentary_6x6x9, momentary_6x6x4
plug - pwr5.5_7.5x11.5, pwr2.5_5x7.5, rtc_micro, uart_micro, molex_4x1, small_encl_satapwr
usb2 - single_vert_a, double_stacked_a, micro
usb3 - double_stacked_a
network - rj45_single
video - hdmi_a, dp-hdmi_a
fan - micro, encl_pmw
gpio - encl_header_30, encl_header_12, header_40, header_20
ic - ic_2.8x2.8, ic_4.7x4.7, ic_5x5, ic_5.75x5.75, ic_6x6, ic_6.75x6.75, ic_7x7, ic_6.7x8.4, ic_11x8, ic_13x8
audio - out-in-spdif, jack_3.5
storage - sata_header, sata_encl_power, sata_encl_header, m.2_header, sdcard
combo - rj45-usb2_double, rj45-usb3_double
jumper - header_2x1, header_7x1
misc - ir_1

sbc_test_components.scad
sbc_components.jpg
sbc_components.jpg (92.36 KiB) Viewed 6310 times
Simply put, new SBC are defined in sbc_model.cfg and new components are added to sbc_library.scad. To add an SBC, modify sbc_models.cfg by creating or copying of an existing SBC entry. Update the relative SBC data and components for the new SBC. When a component type needs to be added, simply add code that draws that component type in the class module the component belongs to, located in sbc_library.scad. There is no checking or validation of any kind so in reality any class can contain any component type. The names are simply the ones I choose to impose some structure that makes sense for my use of the library moving forward.

OpenSCAD has the ability to export models in other formats, so thru export and possible translation, other CAD systems can use these models as well. If you have any questions or problems, or would like to contribute SBC data or components to the library, make a post or send me a PM. I will be maintaining this library and announcing any additional SBC and components in this thread.

For those interested in trying out this SBC model framework, I recommend a more recent build of OpenSCAD that's available at their development snapshot repository. There is even a recent armhf appimage that I have verified does work on an XU4 running Ubuntu 18.04. Unfortunately it is not hardware accelerated so it is slow for a design of any significant size. I recently tried to compile the source for the XU4. All dependencies could be met but there was an issue with opengl declaration mismatches. In my brief research, this is common and it looks resolvable using glew or other tool. It's a low priority issue for me now, but I would like to get hardware acceleration working for OpenSCAD on Odroid's in the future.

20190214 Version 1.0.0 SBC Model Framework

20190218 Version 1.0.1 SBC Model Framework
-Added HK Odroid N2 as "n2"

sbc_models_v1.0.1_20190218.zip
(14.07 KiB) Downloaded 181 times

20200425 Version 1.0.2 SBC Model Framework
-Added Odroid c4 as"c4"
-Added Odroid xu4q as "xu4q"
-Added oem heatsinks
-Updated Odroid n2 sbc data
-Updated Odroid h2 sbc data
-Added AtomicPi as "atomicpi"
-Added Nvidia JetsonNano as "jetsonnano"

sbc_models_v1.0.2_20200425.zip
(136.78 KiB) Downloaded 40 times
sbc_models_v1.0.2_stl.zip
(1.39 MiB) Downloaded 35 times

20200725 Version 1.03 SBC Model Framework
-Added Odroid n2+ as “n2+”

OpenSCAD design files
sbc_models_v1.0.3_20200725.zip
(171.4 KiB) Downloaded 7 times
stl files for all Odroid SBC in the framework
sbc_models_v1.0.3_stl.zip
(1.54 MiB) Downloaded 3 times
Last edited by hominoid on Sun Jul 26, 2020 10:40 pm, edited 5 times in total.
These users thanked the author hominoid for the post (total 3):
Mullcom (Sat Aug 17, 2019 6:59 pm) • teeedubb (Sun Nov 17, 2019 10:02 am) • chabad360 (Wed Feb 12, 2020 11:32 am)

AreaScout
Posts: 1384
Joined: Sun Jul 07, 2013 3:05 am
languages_spoken: german, english
ODROIDs: X2, U3, XU3, C2, HiFi Shield, XU4, XU4Q,
N1, Go, VU5A, Show2, CloudShell2,
H2, N2, VU7A, VuShell, Go2, C4
Has thanked: 62 times
Been thanked: 201 times
Contact:

Re: SBC Model Framework

Post by AreaScout »

    how cool is that ! thank you :)

    User avatar
    odroid
    Site Admin
    Posts: 34839
    Joined: Fri Feb 22, 2013 11:14 pm
    languages_spoken: English, Korean, Japanese
    ODROIDs: ODROID
    Has thanked: 924 times
    Been thanked: 755 times
    Contact:

    Re: SBC Model Framework

    Post by odroid »

    Really nice model library. :D
    I hope you will add N2 soon. We will post PCB and heatsink dxf drawings files on the wiki early next week.

    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    odroid wrote:
    Sat Feb 16, 2019 9:26 am
    Really nice model library. :D
    I hope you will add N2 soon. We will post PCB and heatsink dxf drawings files on the wiki early next week.
    Absolutely, As soon as I can get the information consider it done. I can't wait to get a N2!

    User avatar
    rooted
    Posts: 7868
    Joined: Fri Dec 19, 2014 9:12 am
    languages_spoken: english
    Location: Gulf of Mexico, US
    Has thanked: 724 times
    Been thanked: 221 times
    Contact:

    Re: SBC Model Framework

    Post by rooted »

    Great work, this will make case design so much easier.

    User avatar
    MysteryScience
    Posts: 32
    Joined: Sun Dec 23, 2018 9:09 pm
    languages_spoken: english, spanish
    ODROIDs: XU4Q, XU4
    Has thanked: 1 time
    Been thanked: 0
    Contact:

    Re: SBC Model Framework

    Post by MysteryScience »

    Really impressive, many thanks for the contribution :)

    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    Odroid N2-1.jpg
    Odroid N2-1.jpg (56.64 KiB) Viewed 6186 times
    Odroid N2 added

    User avatar
    odroid
    Site Admin
    Posts: 34839
    Joined: Fri Feb 22, 2013 11:14 pm
    languages_spoken: English, Korean, Japanese
    ODROIDs: ODROID
    Has thanked: 924 times
    Been thanked: 755 times
    Contact:

    Re: SBC Model Framework

    Post by odroid »

    Glad to see the N2 3D model quickly. :D

    crazyquark
    Posts: 336
    Joined: Thu Jan 15, 2015 4:22 pm
    languages_spoken: english, french, romanian
    ODROIDs: C1,C1+,C2,HC1,XU4
    Has thanked: 3 times
    Been thanked: 16 times
    Contact:

    Re: SBC Model Framework

    Post by crazyquark »

    Awesome!

    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    Updated the sbc model framework to 1.0.2 which includes the addition of the Odroid C4 and XU4Q models. A new class called heatsink was added with new component types supporting Several HK OEM Heatsinks. Thanks to @ravelle for contributing the Odroid-H2 heatsink stl and HK for the Odroid-N2_heatsink stl. Additional ic components were added to support the C4. sbc_models.cfg data for the N2 and H2 was also corrected. PCB and hole data was added for the Atomicpi and Jetson Nano.

    There have been no schema changes to the configuration file sbc_models.cfg, only sbc data changes. Any custom entries can be copied and pasted into the new configuration file. If you have a custom sbc_models.cfg make sure to back it up.
    Odroid-C4.png
    Odroid-C4.png (23.12 KiB) Viewed 1966 times
    These users thanked the author hominoid for the post (total 3):
    rooted (Tue Apr 28, 2020 2:07 pm) • odroid (Tue Apr 28, 2020 2:19 pm) • joy (Wed Apr 29, 2020 11:23 am)

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    Can i get some help to get this Hardware in to Fusion 360 so i can make some models for this to my Blade Rack? STL files is to extreamly hard to work with.

    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    Mullcom wrote:
    Tue Apr 28, 2020 4:25 pm
    Can i get some help to get this Hardware in to Fusion 360 so i can make some models for this to my Blade Rack? STL files is to extreamly hard to work with.
    I don’t use step and I do not have any tools to convert to step, other than FreeCAD. I did try to convert a stl to step using FreeCAD. I have no way of validating the step model it produced. Give it a try and let me know if it works. If it does, I’ll make a step archive of all the models.
    Odroid-C4.stp.zip
    (1.35 MiB) Downloaded 15 times
    These users thanked the author hominoid for the post (total 2):
    rooted (Wed Apr 29, 2020 10:07 am) • Mullcom (Sun May 03, 2020 4:02 am)

    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    For those only interested in a stl, I have added an archive in the OP that contains a stl of every Odroid SBC in the framework.

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    hominoid wrote:
    Mullcom wrote:
    Tue Apr 28, 2020 4:25 pm
    Can i get some help to get this Hardware in to Fusion 360 so i can make some models for this to my Blade Rack? STL files is to extreamly hard to work with.
    I don’t use step and I do not have any tools to convert to step, other than FreeCAD. I did try to convert a stl to step using FreeCAD. I have no way of validating the step model it produced. Give it a try and let me know if it works. If it does, I’ll make a step archive of all the models.
    Odroid-C4.stp.zip
    Thx. What is your output file type?

    Fusiin360 can read many different types.

    Step Is what I have with H2 I think. STL files is so crazy hard to work with when you design in CAD software.

    I report back.

    Skickat från min SM-G973F via Tapatalk


    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    hominoid wrote:
    Wed Apr 29, 2020 9:35 am
    Mullcom wrote:
    Tue Apr 28, 2020 4:25 pm
    Can i get some help to get this Hardware in to Fusion 360 so i can make some models for this to my Blade Rack? STL files is to extreamly hard to work with.
    I don’t use step and I do not have any tools to convert to step, other than FreeCAD. I did try to convert a stl to step using FreeCAD. I have no way of validating the step model it produced. Give it a try and let me know if it works. If it does, I’ll make a step archive of all the models.
    Odroid-C4.stp.zip
    So i test to import upload it to fution360 but seams i dident get any of the colors that i did with H2...

    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    That's normal, @rvalle added the color after importing the H2 stl. You should be able to do the same for the C4. Thanks for letting me know that you could import the model.
    These users thanked the author hominoid for the post:
    Mullcom (Tue May 05, 2020 3:58 am)

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    hominoid wrote:That's normal, @rvalle added the color after importing the H2 stl. You should be able to do the same for the C4. Thanks for letting me know that you could import the model.
    Okej.

    Send me all the bords please and I fix them up. Going to need them to my module blade server project.

    Skickat från min SM-G973F via Tapatalk


    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    I had to break them up because the archive exceeded the maximum file size for the forum. Even then, the H2 would not compress small enough(94.4MB to 14.4MB) as a single file so it is not attached. I would imagine the FreeCAD step libraries are not as efficient as professional step tools. Fusion 360 does have the ability to convert stl to step so you may have to work with the stl and convert it yourself using Fusion 360. I'm not familiar with Fusion 360 so you can search the internet for the conversion procedure.
    Odroid-Cx_HC1_MC1_N1_step.zip
    (5.25 MiB) Downloaded 19 times
    Odroid-N2.stp.zip
    (3.17 MiB) Downloaded 20 times
    Odroid-XU4Q.stp.zip
    (3.85 MiB) Downloaded 17 times
    Odroid-XU4.stp.zip
    (3.83 MiB) Downloaded 16 times
    These users thanked the author hominoid for the post:
    Mullcom (Tue May 05, 2020 6:22 am)

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    hominoid wrote:I had to break them up because the archive exceeded the maximum file size for the forum. Even then, the H2 would not compress small enough(94.4MB to 14.4MB) as a single file so it is not attached. I would imagine the FreeCAD step libraries are not as efficient as professional step tools. Fusion 360 does have the ability to convert stl to step so you may have to work with the stl and convert it yourself using Fusion 360. I'm not familiar with Fusion 360 so you can search the internet for the conversion procedure.
    Odroid-Cx_HC1_MC1_N1_step.zip
    Odroid-N2.stp.zip
    Odroid-XU4Q.stp.zip
    Odroid-XU4.stp.zip
    Thx.. H2 i already have. =)

    Thx. i am going to have much fun with this.

    Skickat från min SM-G973F via Tapatalk


    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    FYI, The only change for the H2 that I recall was the Ethernet housing size(depth or y-axis in the model), It was shortened a little(1mm-2mm). Using the older version 1.01 model most likely shouldn't matter for what your doing.
    These users thanked the author hominoid for the post:
    Mullcom (Tue May 05, 2020 7:41 am)

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    hominoid wrote:FYI, The only change for the H2 that I recall was the Ethernet housing size(depth or y-axis in the model), It was shortened a little(1mm-2mm). Using the older version 1.01 model most likely shouldn't matter for what your doing.
    Thx. It's okej the depth is not so important. But good to know.

    Skickat från min SM-G973F via Tapatalk


    rvalle
    Posts: 35
    Joined: Tue Oct 29, 2019 5:38 am
    languages_spoken: english
    Has thanked: 2 times
    Been thanked: 18 times
    Contact:

    Re: SBC Model Framework

    Post by rvalle »

    hominoid wrote:
    Wed Apr 29, 2020 9:35 am
    Mullcom wrote:
    Tue Apr 28, 2020 4:25 pm
    Can i get some help to get this Hardware in to Fusion 360 so i can make some models for this to my Blade Rack? STL files is to extreamly hard to work with.
    I don’t use step and I do not have any tools to convert to step, other than FreeCAD. I did try to convert a stl to step using FreeCAD....
    Be aware that Step and STL files are very different in nature. Step are solids, and STL are meshes. STLs converted to Step don't show up so nicely in Fusion 360, for example.

    However, openScad uses solids too, so it is better to convert directly to Step.

    The way I did to convert the H2 openScad to step was using OpenScad inside Freecad (with the openscad plugin), then you open the OpenScad file from Freecad and you can export to Step without needing to pass via STL.

    When you open in Fusion360 or other you can then assign materials to the different volumes quite easily.

    Actually it would be very good to publish all these files in Step format.

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    rvalle wrote:
    hominoid wrote:
    Wed Apr 29, 2020 9:35 am
    Mullcom wrote:
    Tue Apr 28, 2020 4:25 pm
    Can i get some help to get this Hardware in to Fusion 360 so i can make some models for this to my Blade Rack? STL files is to extreamly hard to work with.
    I don’t use step and I do not have any tools to convert to step, other than FreeCAD. I did try to convert a stl to step using FreeCAD....
    Be aware that Step and STL files are very different in nature. Step are solids, and STL are meshes. STLs converted to Step don't show up so nicely in Fusion 360, for example.

    However, openScad uses solids too, so it is better to convert directly to Step.

    The way I did to convert the H2 openScad to step was using OpenScad inside Freecad (with the openscad plugin), then you open the OpenScad file from Freecad and you can export to Step without needing to pass via STL.

    When you open in Fusion360 or other you can then assign materials to the different volumes quite easily.

    Actually it would be very good to publish all these files in Step format.
    I agree. STL is incredibly difficult to work with. So you can avoid it and I'll do it.

    @rvalle if you working in fution 360 then I would be grad if you wanted to add me to your contacts. I'm still a beginner so would be good to have someone to ask.

    I've worked a lot in google sketchup. between this two applications it's a big difference about how you do things. Fortunately, I have found 3D sketching in fution. My biggest frustration is to patch somting or all the Lines that popup that not needed and make a mess .

    yes Google Scetchup have same triangle system that STL files. Its was really easy to work with but for 3d printing modeling was horrible. But it take 30 sec to patch somting. to do the same in fution it takes rediceles long time if are lucky =)

    Skickat från min SM-G973F via Tapatalk


    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    rvalle wrote:
    Tue May 19, 2020 12:16 am
    The way I did to convert the H2 openScad to step was using OpenScad inside Freecad (with the openscad plugin), then you open the OpenScad file from Freecad and you can export to Step without needing to pass via STL.
    That's good, I didn't know you could convert directly using the OpenSCAD plugin. I brought the wire frame in as a part and then converted to a solid eventhough some of the models tossed an error on the conversion.
    rvalle wrote:
    Tue May 19, 2020 12:16 am
    Actually it would be very good to publish all these files in Step format.
    I agree and am I to understand correctly that @Mullcom is going to do the conversion, if not I can give it another try using the plugin. Are there problems with the step models posted above?

    rvalle
    Posts: 35
    Joined: Tue Oct 29, 2019 5:38 am
    languages_spoken: english
    Has thanked: 2 times
    Been thanked: 18 times
    Contact:

    Re: SBC Model Framework

    Post by rvalle »


    hominoid wrote: Are there problems with the step models posted above?
    Yes, I tried and they show as a collection of faces not as a collection of different volumes, I have assumed that they are coming from STLs that is why I think we need the Steps directly from OpenScan.

    Sent from my Redmi Note 7 using Tapatalk


    rvalle
    Posts: 35
    Joined: Tue Oct 29, 2019 5:38 am
    languages_spoken: english
    Has thanked: 2 times
    Been thanked: 18 times
    Contact:

    Re: SBC Model Framework

    Post by rvalle »

    I attach some more models.

    It is easy to produce the steps from openscad files, follow these steps:

    - Setup FreeCad to work with OpenScad (see documentation)
    - edit the file sbc_test.scad and leave only the include on top and the sbc call that renders the board you want.
    - open sbc_test.scad in FreeCad
    - Select the volume you want to export (normally a group)
    - Export as STEP

    Open in your 3d suite and assign materials to the different volumes for a more realistic rendering.
    Attachments
    odroids.zip
    (3.16 MiB) Downloaded 19 times

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    rvalle wrote:I attach some more models.

    It is easy to produce the steps from openscad files, follow these steps:

    - Setup FreeCad to work with OpenScad (see documentation)
    - edit the file sbc_test.scad and leave only the include on top and the sbc call that renders the board you want.
    - open sbc_test.scad in FreeCad
    - Select the volume you want to export (normally a group)
    - Export as STEP

    Open in your 3d suite and assign materials to the different volumes for a more realistic rendering.
    I take a look tomorrow.

    Skickat från min SM-G973F via Tapatalk


    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    rvalle wrote:
    Tue May 19, 2020 12:16 am
    hominoid wrote:
    Wed Apr 29, 2020 9:35 am
    Mullcom wrote:
    Tue Apr 28, 2020 4:25 pm
    Can i get some help to get this Hardware in to Fusion 360 so i can make some models for this to my Blade Rack? STL files is to extreamly hard to work with.
    I don’t use step and I do not have any tools to convert to step, other than FreeCAD. I did try to convert a stl to step using FreeCAD....
    Be aware that Step and STL files are very different in nature. Step are solids, and STL are meshes. STLs converted to Step don't show up so nicely in Fusion 360, for example.

    However, openScad uses solids too, so it is better to convert directly to Step.

    The way I did to convert the H2 openScad to step was using OpenScad inside Freecad (with the openscad plugin), then you open the OpenScad file from Freecad and you can export to Step without needing to pass via STL.

    When you open in Fusion360 or other you can then assign materials to the different volumes quite easily.

    Actually it would be very good to publish all these files in Step format.


    Sorry for this taking time. But now i am in work with this today. I have install freecad and OpenSCAD and implemented all settings so i can convert all the files.
    as @hominoid has mention.

    @rvalle Can you send me all orginal files so i can directly convert them to STL files pleas. this files you made in openScad.

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    Sorry my brian not waken today.

    i mention you wrong.

    hominoid
    Posts: 436
    Joined: Tue Feb 28, 2017 3:55 am
    languages_spoken: english
    ODROIDs: C2, C4, XU4, MC1, N1, N2
    Location: Lake Superior Basin, USA
    Has thanked: 39 times
    Been thanked: 124 times
    Contact:

    Re: SBC Model Framework

    Post by hominoid »

    Updated SBC Model Framework to 1.0.3. to include the Odroid N2+ with heatsink.
    These users thanked the author hominoid for the post (total 2):
    tobetter (Sun Jul 26, 2020 10:42 pm) • odroid (Mon Jul 27, 2020 11:19 am)

    User avatar
    Mullcom
    Posts: 193
    Joined: Sun Jun 30, 2019 1:41 am
    languages_spoken: english
    Has thanked: 99 times
    Been thanked: 19 times
    Contact:

    Re: SBC Model Framework

    Post by Mullcom »

    hominoid wrote:Updated SBC Model Framework to 1.0.3. to include the Odroid N2+ with heatsink.
    Nice done

    Skickat från min SM-G973F via Tapatalk


    Post Reply

    Return to “General”

    Who is online

    Users browsing this forum: No registered users and 1 guest