A whale of a time
[Fall 2022] Our goal was to simulate whale echolocation. Select whale species send out a series of clicks and intepret their echoes after bouncing back from surrounding objects. Our project does just that!
- Suitable forB.Tech/B.E Embedded Systems students
- Build time4-6 weeks
- LevelIntermediate
- Available atAjvika Labs, Kakinada
About this project
Project Introduction
Our goal was to simulate whale echolocation. Select whale species send out a series of clicks and intepret their echoes after bouncing back from surrounding objects. Our project does just that!
In our setup, there are two whales, one represented by a stationary Raspberry Pi Pico microcontroller and one mobile robot also programmed with a Raspberry Pi Pico. Both whales are equipped with a microphone and a speaker. When the moving whale emits clicks, the stationary whale detects the sounds and reponds with its own clicks of another frequency. The mobile whale can use the calculated time from when a click is sent to when a response is received to determine the distance to the stationary whale and decides which direction to move in, based on our implementation of a state machine to navigate in a grid-like manner towards the stationary whale.
Detailed Project Description
A whale of a time is an embedded-systems build that integrates sensors, actuators, a microcontroller and firmware into one working device, with the design decisions and test results documented so it can be reproduced.
How It Works
1. Input devices (sensors, buttons, encoders, wireless links) are connected to the microcontroller.
2. Firmware samples the inputs at a fixed rate and runs the control/processing logic (often with interrupts, timers or PIO for precise timing).
3. Outputs (motors, LEDs, displays, audio, radio) are driven according to the result.
4. The system is tested against its specification and tuned for reliability and responsiveness.
Key Components and Their Role
- Raspberry Pi Pico (RP2040): dual-core Cortex-M0+ microcontroller with PIO state machines used for precise, low-level timing.
- RP2040: dual-core Cortex-M0+ microcontroller with programmable I/O used for precise, low-level timing.
- Raspberry Pi: single-board Linux computer that runs the higher-level processing and networking.
Implementation Steps
1. Collect the components and study each module's datasheet (pin-out, voltage, interface).
2. Wire the circuit on a breadboard following the pin mapping; power sensors from the correct rail (3.3 V / 5 V).
3. Install C, Arduino IDE and the required libraries; flash a minimal test sketch for each module separately.
4. Write the main firmware: read sensors → process → drive outputs / send data.
5. Configure network or cloud credentials and test communication end-to-end.
6. Calibrate thresholds, add error handling (reconnect, sensor time-out) and run a long-duration test.
7. Finalise on a PCB / enclosure and document wiring, code and results.
Key Features
- Real-time firmware
- Custom hardware integration
- Measured performance
- Documented design and trade-offs
Expected Output
On completion the student will have a demonstrable device that meets its functional specification, with wiring diagram, code and results.
Deliverables
- Complete source code with comments
- Circuit diagram and pin mapping
- Project report with screenshots and results
- Demonstration-ready build
Our goal was to simulate whale echolocation. Select whale species send out a series of clicks and intepret their echoes after bouncing back from surrounding objects. Our project does just that!
In our setup, there are two whales, one represented by a stationary Raspberry Pi Pico microcontroller and one mobile robot also programmed with a Raspberry Pi Pico. Both whales are equipped with a microphone and a speaker. When the moving whale emits clicks, the stationary whale detects the sounds and reponds with its own clicks of another frequency. The mobile whale can use the calculated time from when a click is sent to when a response is received to determine the distance to the stationary whale and decides which direction to move in, based on our implementation of a state machine to navigate in a grid-like manner towards the stationary whale.
Detailed Project Description
A whale of a time is an embedded-systems build that integrates sensors, actuators, a microcontroller and firmware into one working device, with the design decisions and test results documented so it can be reproduced.
How It Works
1. Input devices (sensors, buttons, encoders, wireless links) are connected to the microcontroller.
2. Firmware samples the inputs at a fixed rate and runs the control/processing logic (often with interrupts, timers or PIO for precise timing).
3. Outputs (motors, LEDs, displays, audio, radio) are driven according to the result.
4. The system is tested against its specification and tuned for reliability and responsiveness.
Key Components and Their Role
- Raspberry Pi Pico (RP2040): dual-core Cortex-M0+ microcontroller with PIO state machines used for precise, low-level timing.
- RP2040: dual-core Cortex-M0+ microcontroller with programmable I/O used for precise, low-level timing.
- Raspberry Pi: single-board Linux computer that runs the higher-level processing and networking.
Implementation Steps
1. Collect the components and study each module's datasheet (pin-out, voltage, interface).
2. Wire the circuit on a breadboard following the pin mapping; power sensors from the correct rail (3.3 V / 5 V).
3. Install C, Arduino IDE and the required libraries; flash a minimal test sketch for each module separately.
4. Write the main firmware: read sensors → process → drive outputs / send data.
5. Configure network or cloud credentials and test communication end-to-end.
6. Calibrate thresholds, add error handling (reconnect, sensor time-out) and run a long-duration test.
7. Finalise on a PCB / enclosure and document wiring, code and results.
Key Features
- Real-time firmware
- Custom hardware integration
- Measured performance
- Documented design and trade-offs
Expected Output
On completion the student will have a demonstrable device that meets its functional specification, with wiring diagram, code and results.
Deliverables
- Complete source code with comments
- Circuit diagram and pin mapping
- Project report with screenshots and results
- Demonstration-ready build
Technologies used
Hardware components
- Raspberry Pi Pico
- IMU
- microphone
- speaker
Software & tools
- C
- Arduino IDE
Project demo video
What you get
- Working project / hardware kit, tested before delivery
- Complete source code with explanation
- Project demo and guidance for your viva
- Project report, PPT and IEEE paper support (on request)
Delivery & Payment
Delivery takes a minimum of two weeks from the date your inquiry is confirmed.
Payment is in two parts:
• 50% advance to start the project
• Remaining 50% before delivery
Note:
• Documentation and PPT are not included by default
• If you need documentation/PPT, it can be arranged for extra time and cost
We'll confirm the exact timeline and cost with you after reviewing your requirements.