CRUX APPS

Embedded vision · motion control

Machines that see, decide, and move.

Crux Apps builds embedded Linux and computer-vision systems, from camera pipeline to motor driver. The current flagship is Sentry: a garden-hose turret that finds its target and shoots a stream of water at it.

CAD render of the Sentry turret: a square base with two stepper motors underneath, coaxial drive tubes, and a nozzle on a tilting yoke. SENTRY · REV B · CAD

Featured project

Sentry: a 360° water turret

Sentry watches the yard with a pair of wide-angle cameras, picks out animals with an on-device neural network, and shoots a jet of water at them. The motors stay in the base, so it can spin continuously with no slip ring and no electronics on the turret head.

01 / SEE

360° vision

Two back-to-back fisheye cameras on a Raspberry Pi 5 with an AI accelerator cover every direction, day and night (using IR LEDs for illumination).

02 / AIM

Coaxial differential drive

Nested tubes carry azimuth and elevation up the center. The firmware mixes both motors, so the head needs no power or data.

03 / FIRE

Water

A solenoid valve briefly turns on the water, shooting a jet of water at the target.

Labeled CAD cutaway of the Sentry turret showing the inner elevation tube, outer azimuth tube, bevel gears, motors and the water tube up the center. CUTAWAY · COAXIAL STACK

Spec sheet

Azimuth (left/right rotation)Continuous/Infinite
Elevation (up/down)-20° to +200°
Drive2 × NEMA-17, 2:3 gearing
Motion ControllerBTT SKR Mini E3 V2.0
Computer VisionRaspberry Pi 5 4G, AI HAT+ (13 TOPS), 2 × 200° IMX219 4K cameras
Illumination4 x 3 watt 850nm IR LEDs
Resolution0.33°
SpeedUp to 300rpm (5 revolutions per second, 0.55ms/degree)
LatencyTypically <150ms: 80ms to detect a target, and 70ms to aim turret to target.
Water2 mm jet stream orifice, 40ft (12m) range (assuming 60 psi residential pressure)
Power Supply24V 6A (included)
Power ConsumptionTBD but expected to be <10w idle, 30w maximum.

Build log

How it got here

  1. Slip-ring prototype

    The first version put the elevation motor on the turret head and fed it power and data through a slip ring. It worked, but the slip ring was the weak point.

  2. Motors move to the base

    A coaxial differential replaced the slip ring. The inner tube drives elevation through bevel gears, and firmware compensates for azimuth, so the head carries no electronics.

  3. No rotary unions

    A single flexible tube runs up the center and loops into the nozzle, removing two leak points.

  4. Printer firmware, turret kinematics

    Marlin on a 3D-printer controller board, configured with Markforged kinematics so G-code speaks azimuth and elevation directly.

  5. Add your latest milestone here

    Night vision, fisheye dewarping, target lead for moving animals…

Services

What Crux Apps builds

Independent engineering for products that need cameras, compute and motion to work together in the field.

Embedded Linux on NVIDIA Jetson

Production embedded Linux on Jetson Xavier and Orin, including ConnectTech Rogue carrier boards.

Jetson · Linux · Docker

Camera and vision pipelines

Camera capture and processing pipelines with on-device detection and tracking.

Cameras · Python · Computer vision

Kiosk and instrument systems

Kiosk-style instrument systems that boot straight into the app and keep running in the field.

Python · PySide6 · Embedded Linux

Fleet management and backends

Managing fleets of deployed devices, and the Django services behind them.

Django · Docker · Fleet management

Contact

Have a machine that needs eyes?

Tell me about the hardware, the camera and what it has to do. Add your response-time promise.

hello@crux-apps.com