KinkyMakers / OSSM-hardware

OSSM pcb and hardware enclosure design
CERN Open Hardware Licence Version 2 - Strongly Reciprocal
259 stars 48 forks source link

OSSM - Open Source Sex Machine

Discord

OSSM (pronounced like "Awesome") is a user friendly every day sex machine for the people.

This project aims to help people curious about sex machines explore their interest. A second objective is optionally learning how mechanics, electronics, physics and computing are involved in your sexual pleasure.

Please note that this is a work in progress and we have attempted to keep compatibility with the current BOM going forward, but it's not guaranteed.

Our Primary design goals are to make a machine that is compact, quiet, of moderate cost, 3D printable (no cutting/machining required), flexible, highly performant, with easily sourced components, and doesn't look like a giant machine.

Is it actually Open Source?

It is one of a kind Certified, Actual, Factual, Open Source

image

Getting Started

Read the Frequently Asked Questions

There are a few hardware flavours to choose from, we've included community modified versions in case that fits your use case better!

Build Instructions

Build Videos

Join our Discord to be part of the discussion and get help with your build. We have a huge community of makers!

image

Software

The software is available in this github repository. It is written and compiled utilizing PlatformIO on Visual Studio Code. [Reference for working with the code in PlatformIO here](OSSM PlatformIO Readme.md)

We recommend using the Research and Desire Reference Board as Do It Yourself by someone without extensive electronics knowledge creates a lot of support overhead. This code is still arduino IDE compatible but offers many times better performance. Web based control is projected to be available in Feb 2025.

Eagle PCB

Simple PCB to power an ESP32 (wifi enabled microcontroller) from 24V and breakout the pins for the OSSM control

Mechanical design

The OSSM use a compact belt design with components that have become widely available due to 3D printing popularity. It is driven by a Nema23 motor of your choosing, although we reccomend small integrated closed loop servos for their silent operation and very high performance.

Mounting

We have a new stand design you can check out on onshape! OnShape link

OSSM on mounting solution

Safety

The safety of the OSSM build is yet to be fully characterized as it is a work in progress. The OSSM is a framework for building your own sex machine and as such your specific combination may have risks not inherent to other builds. These risks may be undocumented or undiscovered. Please see the Hazards file for more information.

While using the OSSM we can suggest the following hierarchy of safety, however it is up to you and your build to decide what risks exist and how to mitigate them.

  1. Have ability to move away
  2. Have ability to remove the power
  3. If you are in bondage, safety is responsibility of the Top

Bill Of Materials

We are calling this the reference build, when deviating from it please check compatability with existing Bill Of Materials (BOM)

  1. 3D Printed Parts

  2. IHSV57 NEMA23 Servo with 8mm shaft or 57AIM30 (Gold Motor):

    • Gold Motor
      • New standard motor for OSSM, please see Gold Motor Info while docs are being updated. This motor is cheaper, more compact and has improved features which are being implemented in OSSM firmware.
      • For the latest information about this change, join the KinkyMakers Discord.
    • iHSV57 (Previous Standard Motor)

      • Avoid the StepperOnline version

      • Make sure you get something with 8mm shaft.

      • There are 3 sizes of this motor:
        100W = iHSV57-30-10

        140W = iHSV57-30-14

        180W = iHSV57-30-18

      • We recommend motors with firmware version 6 (shown as V60x). Pay attention to this, the firmware version is printed on the label on the side. You cannot update the motor firmware. version 5 will work, but it is not as feature rich for potential new features.

      • Search around for the best deal for you - we reccommend searching "ihsv57" on Aliexpress.com and choosing the -10 -14 or -18. Some example listings:

      AliExpress - US

      AliExpress - CA & AU

      • For details on picking the right motor for your use case - check this FAQ
      • If you are using the 140W or 180W version it is recommended to use a 10mm wide belt and pulley (see the next two items)
  3. GT2 Pulley 8mm Bore 20 Tooth, 10mm width :

    Amazon - CA

    Amazon - US

    Banggood - AU

  4. GT2 Timing Belt - 10mm width :

    Amazon - CA

    Amazon - US

    [Amazon - AU]()

    • Your desired stroke length plus about 200mm should be your minimum order length
  5. Bearings MR115-2RS 5x11x4mm : Amazon - CA

    Amazon - US

    Aliexpress - AU

  6. MGN12H Rail and bearing :

    Amazon - CA

    Amazon - US

    Aliexpress - AU

    • Minimum 250mm in length, suggested 350mm
    • Rail length = desired stroke + 180mm
    • Must be MGN12H rail - H is a longer car than C which gives greater stability. 12 indicates 12mm rail width.
  7. Power Supply: 24 volt 4-5 amp w/ 2.1mm barrel DC plug

    • Larger motors generally need more power!
      180W -> 24V 5A suggested minimum
      140W -> 24V 4A suggested minimum
      100W -> 24V 4A suggested minimum

    • See the FAQ for more details about power supply sizing based on real world experience of OSSM users.

    • The OSSM will work with small power supplies, but will be limited on maximum force.

    • Ensure the power supply is fully enclosed and shielded to avoid cross talk from electromagnetic interference (like a laptop power supply).

    • Ensure the power supply has the correct approvals for your location - This really helps ensure performance as well! (UL, CE, etc.)

    • It is strongly recommended that you purchase a good quality PSU such as a Meanwell.

  8. Metric Hex Cap Screws :
    Amazon - CA & US

    Amazon - AU (this is a little expensive, we are looking for a cheaper alternative)

    • A kit like the ones above will provide what's needed:
    • 4x m5x20
    • 1x m5x12 (can also use m5x20)
    • 10x m3x8
    • 2x m3x16
    • 8x m5 nuts
    • 8x m3 nuts
  9. ESP32 Development Board

    • An official OSSM reference PCB
    • We do not currently have a best suggestion if you are not using a reference board, most generic development boards are the same
    • We have found that the 3.3v boards may miss steps at high speed, so please use a level shifter as well.
    • To start working on the project, something like this Adafruit board is an excellent place to start.
    • Accessories required for prototyping include Breadboard and Dupont Jumpers

Octopart Links for ease of ordering and tracking

A list of non-3d printed supplies in one place. Most of the parts aren't available through the preferred Octopart vendors but it still makes for a convenient list.

Octopart - Collected Bill of Materials for US Suppliers

Official OSSM Wiring

OSSM reference board front The above image is of a version 1 reference board.

OSSM PCB Connections

OSSM PCB connection diagram

GPIO Layout

OSSM pinout diagram JST Header location with pin labels

Non-Official OSSM Wiring

This should be a good start for the wiring of your OSSM! However, depending on your hardware mix settings or wiring may be different

OSSM PCB w/ TB6600 Stepper Driver

image

Servo Wiring

ServoWiring

Stepper Wiring

wiring notes