Open Source Dive Computer

Please register or login

Welcome to ScubaBoard, the world's largest scuba diving community. Registration is not required to read the forums, but we encourage you to join. Joining has its benefits and enables you to participate in the discussions.

Benefits of registering include

  • Ability to post and comment on topics and discussions.
  • A Free photo gallery to share your dive photos with the world.
  • You can make this box go away

Joining is quick and easy. Log in or Register now!

I think the biggest barrier will be cost. I don't believe there is a complete simulator available so we'd all have to buy one or more of these computers.

That said, we could just fork the mainline and play on.

Would we need to get one of their machines? Couldn't we fabricate one with an arduino or similar micro controller? All of the modules required in a dive computer are available in arduino/raspi module.
 
Yes, I was thinking to build the hardware from "scratch". Start with a bottom timer and build up. I hoped that I might be able to incorporate code from subsurface to deal with the actual dive computer features.

When I say hardware from scratch I was thinking about building off something like Get C.H.I.P. and C.H.I.P. Pro - The Smarter Way to Build Smart Things which is a very cool low cost SoC that is still very powerful. We'd have to add the depth sensor, buttons and display. It would use way more power than a normal dive computer and would probably have to be charged between dives. But hey... for a hobby project it could be fun.

An Arduino would use less power but may not be powerful enough. A Raspberry Pi would be more powerful, but probably more than we need. We could get a better bang for our buck with a microcontroller like an atmega or stm32, but then everything is more work and this is supposed to just be a hobby project, right? Plus then anyone contributing would need the corresponding development board to program the chips. I think that C.H.I.P. might hit the sweet spot.

Disclaimer: I'm not a real engineer, and I've played with all of the stuff I've mentioned but not professionally.
 
Would we need to get one of their machines? Couldn't we fabricate one with an Arduino or similar microcontroller? All of the modules required in a dive computer are available in Arduino/raspi module.
Maybe. What processor runs the firmware they provide? Are there any ROMs in the computers that might be necessary to execute the firmware code? I think I'm going to spend some time reading the documentation and code tonight.

I got a response from Henrichs Weikamp today. One of the pertinent tidbits they shared is that the code currently available is for older models, but the OSTC4 code is going to be released soon.
 
Last edited:
They're using the MPLAB-X IDE and have straightforward instructions to setup the development environment.

They appear to be using this chip in the OSTC3 dive computer: PIC18F87K22
 
This guy started something similar a while ago:
Dive depth logger with arduino

Eventually he was asking for financial support:
Diveduino is on its way..Please help :)

I believe the more community that surrounds such a project, the more fun it will be, and provides a great learning experience.

Here's hoping! :)
I agree.

I'm a 100% software guy (as I am a software engineer). Not so much on the hardware aspects of things. Learning as I go.
 
Getting the diving software run on a small one chip computer is not the real problem (I can confirm that for example Subsurface compiles pretty much out of the box on both RasperryPi and C.H.I.P.. The challenging part is to come up with a box that can withstand the pressure while exposing the pressure sensor to the outside. Once you manage that, you can start worrying about the electronics and the programming.

If what you are really looking for is a small project involving a single chip computer and scuba diving you could help me with something that I have been trying to get to work for a while but due to lack of time have not finished: Create a small device that allows to read out non-bluetooth LE dive computers with a phone (in particular iOS): Use the RPi (or whatever) to actually talk to the computer over USB or serial or BT classic (as I said, that pretty much works out of the box using Subsurface) and then relaying that data via wifi to the phone (by creating an access point and acting as a subsurface cloud server).

All the bits are there, they just have to be tied together. If interested get in touch with me and I will provide you with further pointers to what has already been done.
 
Getting the diving software run on a small one chip computer is not the real problem (I can confirm that for example Subsurface compiles pretty much out of the box on both RasperryPi and C.H.I.P.. The challenging part is to come up with a box that can withstand the pressure while exposing the pressure sensor to the outside. Once you manage that, you can start worrying about the electronics and the programming.

If what you are really looking for is a small project involving a single chip computer and scuba diving you could help me with something that I have been trying to get to work for a while but due to lack of time have not finished: Create a small device that allows to read out non-bluetooth LE dive computers with a phone (in particular iOS): Use the RPi (or whatever) to actually talk to the computer over USB or serial or BT classic (as I said, that pretty much works out of the box using Subsurface) and then relaying that data via wifi to the phone (by creating an access point and acting as a subsurface cloud server).

All the bits are there, they just have to be tied together. If interested get in touch with me and I will provide you with further pointers to what has already been done.

My next project was going to deal with that exact thing (bluetooth to phone). Right now I need a dive compass :D I'm sure there is an easy BT protocol that can transmit the data too and from and be displayed / accessed via phone at least for the arduino configuration.
 
If you do irc, there is #subsurface on freenode. Sometimes real-time chat can be useful.
 

Back
Top Bottom