diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/README.md b/hardware/case/remixes/mbchars-horizontal-desktop-printed/README.md new file mode 100644 index 00000000..0d2619ac --- /dev/null +++ b/hardware/case/remixes/mbchars-horizontal-desktop-printed/README.md @@ -0,0 +1,79 @@ +Author: Mykyta Bilous (mbchars), https://github.com/mbchars +License: CC-BY-SA-4.0 +Based on: Patternflow enclosure by engmung / SeungHun Lee; +Fits: Patternflow v3.0 controller PCB; 320 × 160 mm LED panel with the tested hole pattern +Material: PLA; Bambu P2S; 0.4 mm nozzle; 0.20 mm layers; textured plate. +Verified: 2026-10-07; assembled by the author; photographs below + +# Horizontal desktop printed enclosure + +This enclosure holds Patternflow horizontally on two removable stands. There are also screw openings for wall-mounting. The four controls are on the right in the front view. + +The release has one control section with a holder for the **PDSink 303PDSink01 USB Trigger**. The separate module connects to **J4**, the controller power terminal. + +![Completed enclosure with white frames and orange controls](images/photo_front.jpg) + +## Features + +- The three front sections print with their front faces on the plate. +- The power bank compartment is removed. +- Four joint bars connect the front sections independently of the rear covers. +- Two rear covers give access to the electronics. +- Four small alignment pins are optional. They can guide the parts during glue. + +**Glue is optional. The joint bars hold the enclosure without glue.** + +The enclosure dimensions are approximately 411 × 176 × 42 mm. These dimensions exclude the knobs and stands. + +![Front surface, controls, and cable](images/photo_front_angle.jpg) + +## Print files + +Open [print_layout.3mf](print_layout.3mf) as a project in Bambu Studio. This single project contains all nine plates. + +Select your printer and PLA profile. Keep the supplied part orientations and support blockers. + +Each plate uses one color. + +| Plate | Part | Quantity | Color | +|---|---|---:|---| +| 01 | [Outer frame](stl/white_outer_frame.stl) | 1 | White | +| 02 | [Inner frame](stl/white_inner_frame.stl) | 1 | White | +| 03 | [Control section](stl/control_section.stl) | 1 | Orange | +| 04 | [Display rear cover](stl/rear_display_cover.stl) | 1 | White | +| 05 | [Control rear cover](stl/rear_control_cover.stl) | 1 | White | +| 06 | [Joint bar](stl/joint_bar.stl) | 4 | White | +| 06 | [Optional alignment pin](stl/alignment_pin_2mm.stl) | 4 | White | +| 07 | [USB retainer](stl/usb_retainer.stl) | 1 | Orange | +| 08 | [Stand](stl/stand.stl) | 2 | Orange | +| 09 | [Knob](stl/knob.stl) | 4 | White | + +Each STL contains one part. The 3MF contains the quantities in the table. The colors are optional. + +The front sections and USB retainer use configured supports. The covers, joint bars, pins, stands, and knobs do not use supports. + +Keep the USB retainer screw face upward. Remove its supports before assembly. Do not put supports inside the PCB guides or alignment holes. + +An STL does not contain print settings. For another slicer, use the 3MF orientations and support locations as references. + +The estimated total is 24 hours 08 minutes and 714 g of PLA. + +## Parts and assembly + +Use the [BOM changes](bom.md) with the original v3.0 BOM. Follow the [illustrated assembly instructions](assembly.md). + +Make sure that your panel hole pattern agrees with the enclosure before you print. Panel dimensions alone do not establish compatibility. + +The tested module PCB is 27.8 × 11.1 × 1.5 mm, excluding the socket overhang. The metal socket is 8.97 mm wide. + +The USB retainer accepts PCB lengths from 27.5 to 28.3 mm. Other modules with the same product name can have different dimensions. + +**J4 is the controller's only power input.** Do not use its onboard USB footprint or DevKit USB port for LED panel power. + +Set the separate trigger output to 5 V. Measure its output before connection to J4. Follow the original [power connection instructions](../../../../BUILD_GUIDE.md#2-power-input--use-the-screw-terminal). + +## Attribution and license + +This is a community remix of [Patternflow by engmung / SeungHun Lee](https://github.com/engmung/Patternflow). + +Mykyta Bilous designed the enclosure changes and supplied the build photographs. The files in this folder use [CC BY-SA 4.0](../../../../LICENSE-CC-BY-SA). diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/assembly.md b/hardware/case/remixes/mbchars-horizontal-desktop-printed/assembly.md new file mode 100644 index 00000000..534bb67e --- /dev/null +++ b/hardware/case/remixes/mbchars-horizontal-desktop-printed/assembly.md @@ -0,0 +1,141 @@ +# Assembly instructions + +Use the parts in [bom.md](bom.md). Disconnect the supply before mechanical assembly or wire installation. + +The **joint bar** connects two front sections. The **USB retainer** holds the separate trigger PCB against its socket location. + +The controls are on the right in the front view. They are on the left in the rear view. + +## 1. Prepare the printed parts + +1. Remove all supports and brims. +2. Remove loose material from the joint channels, PCB guides, and screw holes. +3. Put the three front sections face down on a clean, soft, flat surface. +4. Put the concealed laps into their recesses. +5. Make sure that the front faces are flush. +6. If a joint does not close, remove the obstruction before you continue. + +Do not use screws to pull a distorted frame flat. + +## 2. Install the brass inserts + +![Insert dimensions and joint screw section](images/02_joint_section.png) + +1. Put the four joint bars on a heat-resistant surface, away from the enclosure. +2. Use a temperature-controlled insert tool to install two M3 inserts in each bar. +3. Make each insert top flush with the bar surface. +4. Let the bars cool on a flat surface. +5. Make sure that each bar is straight. +6. Install the 16 rear cover inserts in their case bosses. +7. Install one insert in the USB retainer screw boss. +8. Let all inserts cool before screw installation. + +Use the insert tool supplier's procedure for PLA. Keep the tool away from visible surfaces. + +## 3. Connect the front sections + +![Four joint bars in the rear view](images/01_frame_connections.png) + +1. Keep the three front sections face down. +2. Slide one joint bar beneath each pair of joint lugs. +3. Point the insert openings toward the rear of the enclosure. +4. Install two M3 × 8 mm countersunk screws through each lug pair into its bar. +5. Leave the screws loose initially. +6. Hold the joint closed with the front faces flush. +7. Tighten the two screws alternately until the joint is secure. +8. Repeat the procedure for all four bars. +9. Make sure that all three sections remain connected with the rear covers removed. + +The joint lug holes and rear cover insert holes are separate. Do not put joint screws into the cover insert holes. + +### Optional alignment pins and glue + +![Optional alignment pins at a joint](images/03_optional_pins.png) + +The four small printed pins are optional. They locate the parts and can guide them during glue application. + +The joint bars provide the mechanical connections. Glue is not required. + +1. If you use the pins, put them in the four alignment locations before you close the joints. +2. Make sure that each pin permits the joint to close fully. +3. If a pin holds a joint open, remove it. +4. If you use glue, first assemble the joints without glue to confirm the fit. +5. Apply a small quantity of PLA-compatible glue to the mating faces as specified by its manufacturer. +6. Keep glue away from the visible faces, inserts, PCB guides, and electronics. +7. Align the parts with the pins during glue application. +8. Keep the joints aligned until the glue has cured. + +## 4. Install the panel and controller + +1. Put the LED panel in the frame with its display face toward the front. +2. Make sure that its power and data connectors face the internal cable passage. +3. Make sure that the rear components do not contact the joint bars. +4. Install the panel with its correct mounting screws. +5. Tighten the panel screws gradually. +6. Make sure that the frame joints stay closed. +7. Install the controller with the encoder shafts through the control section. +8. Install the encoder washers and nuts. +9. Tighten the nuts until the controller is secure. + +If a joint opens, stop before you tighten the screws further. Correct the cause before you continue. + +## 5. Install the separate USB module + +![USB module and short retainer in the rear view](images/04_usb_installation.png) + +1. Put the module into its guides, with the socket first. +2. Keep the components toward the open rear of the enclosure. +3. Seat the socket behind the side opening. +4. Put the USB retainer against the rear PCB edge. +5. Keep the output wires above the low retainer tongue. +6. Install the M3 × 8 mm countersunk retainer screw. +7. Tighten the screw only until the module is secure. +8. Make sure that the retainer does not contact the adjacent joint bar. +9. With the supply disconnected, insert and remove the USB-C cable gently. +10. Make sure that the plug seats fully and the PCB stays in position. + +Do not use the retainer to force the module into position. Do not clamp wires beneath the retainer. + + +![Actual socket installation](images/photo_socket_detail.jpg) + +## 6. Connect power and data + +![Electrical connection diagram](images/05_connections.png) + +**CAUTION: The trigger output must be 5 V. A higher voltage can damage the controller and panel.** + +1. With the supply disconnected, set the trigger to 5 V according to the module manufacturer's instructions. +2. Keep the trigger output disconnected from J4. +3. Connect the USB-C supply to the trigger. +4. Measure the trigger output voltage and polarity with a multimeter. +5. If the output is not 5 V with the correct polarity, stop. +6. Disconnect the supply. +7. Connect the module's positive output to J4 +5 V. +8. Connect the module's negative output to J4 GND. +9. Connect the panel power cable to J3. +10. Connect the HUB75 ribbon cable between J1 and the panel input. +11. Make sure that the ribbon cable orientation agrees with the connector keys and panel labels. +12. Make sure that all terminals are secure and no bare conductor can contact another connection. +13. Keep the wires clear of screws, joint bars, and cover edges. + +**J4 is the controller's only power input.** Do not use the controller USB footprint or DevKit USB port for panel power. + +The diagram shows the connections, not the physical terminal order. Use the labels on the actual boards. + +![Actual rear assembly with controller, module, and connections](images/photo_rear_assembly.jpg) + +## 7. Close the enclosure + +1. Make sure that all supports and loose objects are removed from the enclosure. +2. Put the two rear covers in position. +3. Make sure that the covers seat without pressure on wires or components. +4. Install the 16 rear cover screws. +5. Tighten the screws until the covers are secure. +6. Install the four knobs on the encoder shafts. +7. Put one stand at each lower end of the enclosure. +8. Put the enclosure on a stable, flat surface. +9. Connect the supply. +10. Make sure that the display and all four controls operate correctly. + +Follow the original [build guide](../../../../BUILD_GUIDE.md) for controller setup and operation. diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/bom.md b/hardware/case/remixes/mbchars-horizontal-desktop-printed/bom.md new file mode 100644 index 00000000..ee9b034d --- /dev/null +++ b/hardware/case/remixes/mbchars-horizontal-desktop-printed/bom.md @@ -0,0 +1,46 @@ +# Bill of materials changes + +Use these changes with the original [v3.0 BOM](../../../bom/bom_v3.0.csv). The controller PCB components and LED panel remain unchanged. + +## Replacement parts + +| Original item | Replacement for this enclosure | +|---|---| +| Original printed enclosure | Parts in the [print table](README.md#print-files) | +| Power bank | External USB-C supply with a 5 V output compatible with the trigger | +| USB cable cut for connection to J4 | Complete USB-C cable, separate trigger module, and two output wires to J4 | + + +## Additional hardware + +| Part | Quantity | Specification or location | +|---|---:|---| +| PDSink 303PDSink01 USB Trigger | 1 | Separate module; output set to 5 V | +| Brass heat-set insert | 25 | M3 thread; 5 mm outside diameter; 5 mm length; 4.5 mm printed pilot | +| Joint bar screw | 8 | M3 × 8 mm, countersunk head; two per joint bar | +| USB retainer screw | 1 | M3 × 8 mm, countersunk head | +| Rear cover screw | 16 | M3 × 8 mm, countersunk head | +| Output wire pair | 1 pair | Module +5 V and GND to controller J4 | + +The 25 inserts comprise 16 cover inserts, eight joint bar inserts, and one USB retainer insert. + +The enclosure uses 25 M3 screws in total. + +Do not substitute the enclosure screws for the panel screws. + +## Printed quantities + +| Part | Quantity | +|---|---:| +| Outer frame | 1 | +| Inner frame | 1 | +| Control section | 1 | +| Display rear cover | 1 | +| Control rear cover | 1 | +| Joint bar | 4 | +| USB retainer | 1 | +| Stand | 2 | +| Knob | 4 | +| Optional 2 mm alignment pin | 4 | + +The four small pins can guide the parts during glue application. Glue and pins are optional; the joint bars provide the connections. diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/01_frame_connections.png b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/01_frame_connections.png new file mode 100644 index 00000000..d5cc3ef5 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/01_frame_connections.png differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/02_joint_section.png b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/02_joint_section.png new file mode 100644 index 00000000..67142028 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/02_joint_section.png differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/03_optional_pins.png b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/03_optional_pins.png new file mode 100644 index 00000000..049d326f Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/03_optional_pins.png differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/04_usb_installation.png b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/04_usb_installation.png new file mode 100644 index 00000000..99fc4569 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/04_usb_installation.png differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/05_connections.png b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/05_connections.png new file mode 100644 index 00000000..1c7f703f Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/05_connections.png differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_front.jpg b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_front.jpg new file mode 100644 index 00000000..c32b5dab Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_front.jpg differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_front_angle.jpg b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_front_angle.jpg new file mode 100644 index 00000000..a289e7b6 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_front_angle.jpg differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_rear_assembly.jpg b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_rear_assembly.jpg new file mode 100644 index 00000000..0ec29ee0 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_rear_assembly.jpg differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_socket_detail.jpg b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_socket_detail.jpg new file mode 100644 index 00000000..5d3b1aa8 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/images/photo_socket_detail.jpg differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/print_layout.3mf b/hardware/case/remixes/mbchars-horizontal-desktop-printed/print_layout.3mf new file mode 100644 index 00000000..fce4d25a Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/print_layout.3mf differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/alignment_pin_2mm.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/alignment_pin_2mm.stl new file mode 100644 index 00000000..d6279610 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/alignment_pin_2mm.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/control_section.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/control_section.stl new file mode 100644 index 00000000..97c93828 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/control_section.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/joint_bar.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/joint_bar.stl new file mode 100644 index 00000000..c027b9b4 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/joint_bar.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/knob.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/knob.stl new file mode 100644 index 00000000..ce1909ba Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/knob.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/rear_control_cover.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/rear_control_cover.stl new file mode 100644 index 00000000..7e0d0907 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/rear_control_cover.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/rear_display_cover.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/rear_display_cover.stl new file mode 100644 index 00000000..e7474403 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/rear_display_cover.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/stand.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/stand.stl new file mode 100644 index 00000000..6cf17d11 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/stand.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/usb_retainer.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/usb_retainer.stl new file mode 100644 index 00000000..6bbbdf7a Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/usb_retainer.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/white_inner_frame.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/white_inner_frame.stl new file mode 100644 index 00000000..deb195f7 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/white_inner_frame.stl differ diff --git a/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/white_outer_frame.stl b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/white_outer_frame.stl new file mode 100644 index 00000000..6a9368d8 Binary files /dev/null and b/hardware/case/remixes/mbchars-horizontal-desktop-printed/stl/white_outer_frame.stl differ diff --git a/web/public/builds/extraplojo/angle.jpg b/web/public/builds/mbchars/angle.jpg similarity index 100% rename from web/public/builds/extraplojo/angle.jpg rename to web/public/builds/mbchars/angle.jpg diff --git a/web/public/builds/extraplojo/front.jpg b/web/public/builds/mbchars/front.jpg similarity index 100% rename from web/public/builds/extraplojo/front.jpg rename to web/public/builds/mbchars/front.jpg diff --git a/web/public/builds/extraplojo/inside.jpg b/web/public/builds/mbchars/inside.jpg similarity index 100% rename from web/public/builds/extraplojo/inside.jpg rename to web/public/builds/mbchars/inside.jpg diff --git a/web/src/components/sections/InsideGlobe/builds.ts b/web/src/components/sections/InsideGlobe/builds.ts index 0317b011..4ad1e110 100644 --- a/web/src/components/sections/InsideGlobe/builds.ts +++ b/web/src/components/sections/InsideGlobe/builds.ts @@ -338,20 +338,20 @@ export const builds: Build[] = [ ], }, { - id: 'ukraine-extraplojo', + id: 'ukraine-mbchars', title: 'Horizontal build', category: 'builds', - slug: 'extraplojo-ukraine', + slug: 'mbchars-ukraine', kind: 'build', location: { lat: 50.4501, lng: 30.5234, label: 'Kyiv, Ukraine' }, - maker: 'extraplojo', + maker: 'mbchars', date: '2026-10', description: "A horizontal Patternflow in orange and white, for a desk or a wall. The case is held together with brass inserts instead of glue. It is also the maker's first 3D design, first PCB order and first soldering job, and it came out beautifully.", images: [ - { src: '/builds/extraplojo/front.jpg', alt: "extraplojo's horizontal Patternflow from the front: a rainbow gradient on the panel, an orange side panel with four white knobs, and orange feet" }, - { src: '/builds/extraplojo/angle.jpg', alt: "extraplojo's Patternflow at an angle, blue and orange waves on the panel and a braided orange cable running off to the side" }, - { src: '/builds/extraplojo/inside.jpg', alt: "Inside extraplojo's case: the board in the orange control box beside the panel, with brass inserts at the corners" }, + { src: '/builds/mbchars/front.jpg', alt: "mbchars's horizontal Patternflow from the front: a rainbow gradient on the panel, an orange side panel with four white knobs, and orange feet" }, + { src: '/builds/mbchars/angle.jpg', alt: "mbchars's Patternflow at an angle, blue and orange waves on the panel and a braided orange cable running off to the side" }, + { src: '/builds/mbchars/inside.jpg', alt: "Inside mbchars's case: the board in the orange control box beside the panel, with brass inserts at the corners" }, ], }, ];