Model originates from OP-1 by teenage engineering.
Each module modeled in Cinema 4D, assembled procedurally in Houdini.
Rendered with Arnold Render.
Each modules are modeled in Cinema 4D.
Then modified inside Houdini after imported as alembic.
Made a board generator based on a grid with specified size.
Some rules are applied in module selection and placement, to make it feel a little convincing as a product.
(such as, like placing at least one speaker module in each board, or placing keys buttons in a row.) .
Outer box is modeled entirely inside Houdini.
For the whole layout, I first placed randomly sized rectangles, just checking not to be overlapped.
Then, to make spaces more tight and even, Bullet Solver + Spring Constraint is applied. ("Connect Adjacent Pieces" SOP is used to generate constraints between.)
The result felt much more unique than the one I tried with "UV Layout" SOP.
At first attempt was to make all meshes inside Houdini, but couldn't make it through the end.
It was quite difficult to maintain both procedural control and clean topology for subdivision.
Rather, I found it more interesting combining "hand crafted" mesh in C4D and the procedural strength of Houdini.