Mew463 / Project-l0ckcr4ck3r

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project-l0ckcr4ck3r

This robot is a true creation of the idea many years ago brought on by Samy Kamkar's robot that "utilized" his algorithm for cracking combination locks. Samy Kamkar never demonstrated his robot actually performing the algorithm, though he implied multiple times that it does do it.

I've always wanted to build a robot that actually decodes locks while maintaining a cool desk toy vibe! I am quite happy with the user-oriented design and doubles as a nice fidgety-toy-thing to play with.

This robot is able to decode the majority of locks that don't have much wear and tear on it and usually takes ~40 seconds.



Photo

MVIMG_20220913_114445

Video

3 Locks in a Row

How it works.

Cracking lock Algorithm

First number: Turn dial Counter Clockwise while incrementally adding more and more force to the shackle until it suddenly stops. Round down to the nearest whole number and add 14. That is the first number in the combo.

Third number:

  1. Find the gates between digits 0 - 10 .
  2. Take the two gates that correspond to a whole number and see whether each of those numbers %(modulo) 4 = firstNum % 4.
  3. If the equation is satisfied, store that number somewhere. Now add 10 to each number and perform the same operation as the previous step until you have two numbers that satisfy the equation
  4. Now check the gate size of the two numbers which satisfy the equation. The number with the biggest gate is the third number.

Second number: Guess and check until the lock opens, though it follows a pattern of being (FirstNum % 4) + a multiple of 4.

I found that this video really helped me when trying to program the algorithm.

This robot

A TMC2208 Trinamic driver drives a stepper motor & magnetic encoder. These components turn the dial and can detect when the stepper motor stalls. L0ckcr4ck3r (6)

With this method, any desired number can easily be input into the lock and the lock can be "felt" for it's geometries. ezgif com-gif-maker (4)

Meanwhile a servo powers a rack and pinion gear which allows precise control of the shackle. ezgif com-gif-maker

Since I modified the servo with an analog Feedback wire, we can pull up on the shackle and use this to check whether the lock has been opened or not.

ezgif com-gif-maker (6)

3D Model

L0ckcr4ck3r CAD Files

Electronics

Custom PCB powered by a 12V USB C input. An Arduino Nano is the brain and a 5V regulator gives the neccessary voltage for the servo. MVIMG_20220823_125722 l0ckcr4ck3r Electronics

KiCAD files are included in the github.

Materials

Mechanical

Electrical

About

License:MIT License


Languages

Language:C++ 96.0%Language:HTML 4.0%