Deepak Kandepet

  • Home
    • Projects
    • internals
  • Life.Outside.Work
  • About
  • Contact

3D Printing: Slicing 3D objects

posted in 3D Printer, hacking, internals on June 1, 2017 by deepak 0 Comment

The 3D printing process begins with a 3D model of the object, usually created by computer-aided design (CAD) software. One of the widely used open-source CAD programs is OpenSCAD. Here is an example of a simple 5 x 7 x 10 pyramid created using OpenSCAD. An STL (“StereoLithography”) file is a triangular representation of a… Continue reading →

Deconstructing a flashlight

posted in attiny, flashlight, hacking, internals, teardown on May 4, 2017 by deepak 2 Comments

Ever wondered how the modern flashlight works? What happens when you click the switch on, or click it multiple times to change the brightness? I was curious about it as well, so I deconstructed a commercially available flashlight (Astrolux S1) and studied the parts; even reprogrammed it to have different levels of brightness. Here is… Continue reading →

Marlin 3D printer firmware: Delta inverse kinematics

posted in delta 3d printer, hacking, internals, marlin, teardown on March 9, 2017 by deepak 0 Comment

Kinematics is the study of motion or movement in space. In the case of Linear Delta Printer Kinematics we are interested in how the (linear) motion of three carriages along identically spaced vertical columns is transformed into the movement of the tip of a hotend in the usual Cartesian system of X, Y and Z… Continue reading →

Dissecting the ErgoDox – The Ergonomic Programmable Keyboard

posted in hacking, internals, teardown on June 10, 2016 by deepak 3 Comments

Invented by Dominic Beauchamp (a.k.a Dox), the ErgoDox is an ergonomic mechanical keyboard that uses an open hardware and software. Built off the Key64 keyboard design, which was a keyboard that tried to reduce the total number of keys to just the ones you really need. The ErgoDox has a few additional keys, bringing the total… Continue reading →

Detecting similar and identical images using perseptual hashes

posted in internals on July 30, 2012 by deepak 0 Comment

Couple of my hobbies are traveling and photography. I love to take pictures and experiment with photography. Usually after my trips, I just copy the photos to either my iPad or couple of my external hard disks. After several years, I have over 200K photos distributed across several disks and machines. I had to find… Continue reading →

Dissicting the 82559 Ethernet controller – From bits to waves

posted in internals, teardown on May 9, 2012 by deepak 0 Comment

When I first started working, I was very interested in learning about the Linux kernel. Specifically the TCP/IP stack and the inner workings of an Ethernet controller. To learn more, I picked one of the most widely used Ethernet controllers at that time, the Intel 82559 10/100 Fast Ethernet Controller and one of its open-source… Continue reading →

Dissecting Lucene – The Index format

posted in internals on October 1, 2011 by deepak 0 Comment

Lucene is high-performance, scalable, full-featured, open-source text search engine written in Java. Since I am a search engineer by profession, I wanted to learn more about Lucene and its internals. This article is about the index format of the 3.4 Lucene. Specifically the Lucene inverted index. Lucene Inverted Index Some Definitions Index: An Index is… Continue reading →

How big of a haystack do you need to hide?

posted in General on August 4, 2011 by deepak 0 Comment

Every fact you learn about a person reduces the “entropy” of their identity. For e.g. If I know your gender, we can eliminate about 50% of the population: There were about 155.6 million females & 151.4 million males in the United States in 2009. If I know your birthday we can eliminate a much larger… Continue reading →