top of page

Project FishWorks

The four of us, Kayleb, Eric, Braden and Sebastien first met in September 2022 during our first year at Camosun.​ 

By December 2023 we had an idea and plan in place and Project FishWorks was born.

 

Project FishWorks was built out of Kayleb's passion in reef keeping, and has strived to conceptualize a safer and more enjoyable aquarium experience.
 

DSC09729_01.webp

Timeline

Stage 1 - Planning & Initial Prototyping

Jan - Sept

Documents

"If you're not ahead you're behind" = summer fun!

At the start of 2024 we decided on a smart aquarium monitoring system for our capstone project and thus project FishWorks was born.  We met several times over the summer and by August and we had a working prototype circuit board and basic test web app running a simple weather station. 

project fish works summer work b.jpeg
image11.jpeg
image39.jpeg

Stage 2 - Core Hardware & Software Development  

Sept - Oct

Documents

Round 2, this time with feeling!

In September we started the capstone semester and working on this project full time. Our primary focus during this stage was developing our two custom circuit boards. We were able to successfully design assemble and test five base stations and eight node controllers.

 

During this time we also completed the bulk of the core communication software and hardware allowing for communication between the devices and the base station and the base station and the web app.

node altium.png
image7.jpeg

Stage 3 - Device Development &  system integration

Oct-Nov

Documents

Where the rubber meets the road: integration hell.

With the bulk of the developing and work done on our circuit boards, we moved into producing and finalizing our devices and integrating them into the full system.

 

This included engineering solutions for how best to tie the individual device electrical requirements and systems into the node controller through additional circuitry.

 

Throughout this period, we also focused on the Web App, and ensuring each device had all its functionality available through the app.

image36.jpeg
image39.jpeg
Screenshot 2024-11-14 104024.jpg

Stage 4 - Testing & Documentation

Nov - Dec

Documents

Test, test again and test one more time for good luck!

On Saturday November 9th, at around 5pm we (for the second time) finished our hardware. I'm sure we will have multiple other finishes as we find things wrong, but for the most part we are hardware complete. We currently have a salt water tank, complete with coral and crabs acting as a live test of the system.

 

This brings us to our final stage, documentation and presentations. From our initial proposal presentation,  to our progress presentation,  we have been actively producing and working on our Capstone academic responsibilities throughout the semester. But, we had decided early on that we wanted to ensure our documentation and presentation was as polished as possible, thus we allowed for the final month of the semester to be dedicated to these tasks.

DSC09525.webp
DSC09777.webp
image84.jpeg

Technical Details

Communication

Fish Sense uses two main communication protocols:

CAN Bus

Used to communicate between devices and the base station 

MQTT

Used to communicate between the base station and the web app over WiFi.

CAN Bus

An industrial serial communications protocol most commonly used automotive applications.

 

Transmits data using a differential signal over a twisted pair.

Fish Sense transmits the CAN Bus signal along with 24V DC power over standard Ethernet cables(CAT 5 or 6) with standard RJ45 terminations. 

Allows up to 20 devices and a base station to be chained together in a "bus" type configuration .

DSC09837.webp

Web App & MQTT

MQTT

A common Internet protocol most often used to connect IoT devices.

Greatly simplifies the real-time data transfer between the base station and the web-app.

Communication is achieved using a intermediate server called the MQTT broker that both the base station and the web app connect to. 

Blazor

A web-framework made by Microsoft to allow the creation of interactive web pages using C# and html.

Allows the app to run in almost any browser. 

Our app uses the web assembly rendering mode. This allows all interactive elements to be rendered by the user's web browser resulting in a simpler web hosting setup.

Custom Circuit Boards

Base Station

image9.jpeg

Connects the CAN Bus network to the web app over WiFi

Powered by the duel core ESP32 S3 module.

 

Takes 24V DC power from a external AC to DC to power itself and all connected devices. Includes a power switch and current monitor for the 24V device power.

Built-in SD card for data logging.

Connections for the base station lights, buzzer and screen.

Node Controller

image10.jpeg

Works with device-specific hardware to connect sensors, controllers, etc. to the CAN Bus network

 

Powered by the ESP32 C3 module.

 

Includes various IO options to accommodate a variety of different devices.

 

Powered with 24V DC from the base station.   

bottom of page