Fab Lab Final Project - Jesus Cane

We made a cane for the blind.

  • 1 comment
  • 2 respects

Components and supplies

Necessary tools and machines

Laser cutter (generic)
Hy gluegun
Hot glue gun (generic)

Apps and online services

About this project

Fab Lab Final Project - Jesus cane

We created this product to address the inconvenience of detecting only the length of a cane.

The cane uses ultrasonic sensors to reduce the risk of accidents by making a buzzer sound when people or objects approach it.

And not only does one sound sound, but the closer it gets, the faster it becomes, and the user can sense the threat approaching.

We made case design files for the machine using makercase site.

Using a laser cutter, cut 3.8 mm plywood into a case.

Using the laser cutter, holes were drilled for ultrasonic sensors, and holes were made for replacing batteries and for easy power up and down.

Several sensors were attached to the inside of the case, cables were connected, and batteries were connected to make the machine work.

It work!!!!

An operating image of the ultrasonic sensor.

As a result of practical use, it is better able to detect threats from further distances than previous canes and will be safer for people who are blind than conventional canes. However, it is likely that the modification of thin objects will make their use smoother.


Jesus caneArduino
using ultrasonic sensor and buzer
// defines pins numbers
const int trigPin = 9;
const int echoPin = 10;
const int buzzer = 11;
const int ledPin = 13;

// defines variables
long duration;
int distance;
int safetyDistance;

void setup() {
pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
pinMode(buzzer, OUTPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600); // Starts the serial communication

void loop() {
// Clears the trigPin
digitalWrite(trigPin, LOW);

// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
digitalWrite(trigPin, LOW);

// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);

// Calculating the distance
distance= duration*0.034/2;

safetyDistance = distance;
if (safetyDistance <= 50, safetyDistance > 40){
  digitalWrite(buzzer, HIGH);
  digitalWrite(buzzer, LOW);
if (safetyDistance <= 40, safetyDistance > 30){
  digitalWrite(buzzer, HIGH);
  digitalWrite(buzzer, LOW);
if (safetyDistance <= 30, safetyDistance > 20){
  digitalWrite(buzzer, HIGH);
  digitalWrite(buzzer, LOW);
if (safetyDistance <= 20, safetyDistance > 1){
  digitalWrite(buzzer, HIGH);
  digitalWrite(buzzer, LOW);

// Prints the distance on the Serial Monitor
Serial.print("Distance: ");

Custom parts and enclosures

ultrasonic sensor case
Caseplans tprybmpzyi
ultrasonic sensor case
rdwork case file


Add projectSign up / Login