DIY 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!

This is a pretty good topic. I was always disapointed that scuba electronics are behind the times. Even the most soficistated dive computer cant compare with procesing power to one of those palm PCs.
I'm sure that with the right program, good imput sensors, and some water proofing a palm PC could be a dive, navigation, and communication computer all in one small package, and you still could play videogames on it when you get borred at a deco stop. Best of all, if a new deco model comes out you dont have to buy a new computer just update the softwere.
 
(so, if you need any help, jsut ask)

It really is time someone provided a decent underwater platform with open source.

If you need a tester in the red sea, or if you need a small donation to support this efford - email me.

(it will cast you in progress reports :155: )
 
mddolson:
I suspect the list of volunteer guinea pigs will be extremely short, if not non-existant.

Mike D


If we maintained these attitudes there would be no such thing as SCUBA. We would still be sitting around in the dark and thinking about that new fangled Pony Express. Do you think Cousteau took any chances on his first dive?
 
MaxAlegraD:
With the advent of highly sofisticated microchip technology such as ATMEL AVR, PIC, etc. I was wondering if someone tried to actually build a dive computer ?

All we need a pressure sensor for measuring the depth, pressure sensor for air integration, timer circuit and a case.

The programming could be made in GNU C for Atmel AVR and since most of the chips have internal flash memory and serial ports we can do all sorts of hacking.

The display could be a normal LCD inside the case with 2 or 3 buttons to control the whole gizmo.

Roughly speaking I would estimate the total cost of less than USD 100. Considering the sensors would be the most expensive items.

We can even insert some games for long lasting decompression :crafty:

Any ideas ? Thoughts ?

I built a proof of concept by modifying a single board computer design when I was going to university (in 1987 iirc). I had never seen a dive computer before so I didn't have much to go on but it did work. To test it I didn't have a pressure sensor but a variable speed controller similar to what you find in your windshield wipers that works on a similar principle (increasing voltage). By replacing that part with a pressure sensor you could have theoretically taken it down in a chamber.... The algorithm was straight from the RDP (afterall it was only a proof of concept) and it only displayed NDL, depth and bottom time based on square profiles. Hardest part about the programming was that the design was unique (built chip-for-chip) so the program for the dive computer and the operating system were all shuffled together in a brilliant bit of spaghetti assembler that fit in 8k. (needless to say I was not the next Steve Jobs....)

It would probably have run for a few dives on a 12v battery and aside from the battery it would have taken up your entire forearm.... :) As I recall the parts cost virtually nothing without a transducer or waterproofing but you'd need a lab to build it in. Effort was about 400 exhausting hours and I am absolutely sure I'll never attempt anything like this again. I'm buying :)

R..
 
MaxAlegraD:
Just to keep posted, with the sensors from Intersema and VPM algorithm open source code ( http://www.decompression.org/maiken/VPM/Bubble_Model_Program_Info.htm ) I will develop a first prototype with a BASIC-X ( http://www.basicx.com) and try to accomodate everthing inside a transparent Otterbox with a LCD serial display and some buttons and switches.

The software of the dive computer will of course be open source as well as the schematics of the PCB.

Power will be provided by a 9V battery or rechargeable pack.

The Otterbox seems to be waterproof for 100 feet or (30m) thats enough for testing purposes.

Since BX24 chip has 32k of memory it will easly handle logging of all types of information for debbuging and testing.
Although VPM-B (I wouldn't use VPM since too many kludges are necessary) is a great alg for doing decompression its not the best choice for doing a dive computer for several reasons..

its very computationally intensive.. you need a fast processor to do it justice.. Unlike Buhlman algs which do a fixed ascent schedule.. Vpm has to do multiple tries to optimize the decompression.. if you start doing any dives with real deco requirements the update time can easily run into MINUTES to compute.
unless you go with one of the very expensive compilers some of the floating point math functions necessary for VPM-b are not available in the affordable products.

The intersema sensor that you are talking about is used in the VR-3 although it is a 14 bar sensor absolute its range has been entended into the "proof" range.. the vr3 gives accurate depths to 30bar ish
 
I agree that can be an issue, I'm not very familiar with the CPU utilization of these algorithms.

But anyway our first goal is to build a open architecture computer with the basic sensors.

By accomplishing this task we can start working on the software design.

Since the microcontroller will only read a couple of sensors most of the idle time can be used to compute the decompression requirements.

Nowadays there are several microcontrollers such as ATMEGA128 that have a lot of power. And they also have some backward pin-compatible features making easy to upgrade if necessary.

If that doesn't work we can go higher and still maintain costs.

BTW, I just ordered the sensors from SERVFLO in USA. I'm also including some MSG3500 to do air integration.

Does someone knows a supplier of sealed switches ? I have found some but they are too expensive. I tried to find some specs about push-buttons boots but could not confirm they can handle the job. And since we probably use gloves they cant be too small.
 
MaxAlegraD:
Does someone knows a supplier of sealed switches ? I have found some but they are too expensive. I tried to find some specs about push-buttons boots but could not confirm they can handle the job. And since we probably use gloves they cant be too small.

I made a few posts about the use of dry reed switches operated by magnets.
Do an advanced search for "dry reed" and check the DIY posts.
 
MaxAlegraD:
Just to keep posted, with the sensors from Intersema and VPM algorithm open source code ( http://www.decompression.org/maiken/VPM/Bubble_Model_Program_Info.htm ) I will develop a first prototype with a BASIC-X ( http://www.basicx.com) and try to accomodate everthing inside a transparent Otterbox with a LCD serial display and some buttons and switches.

The software of the dive computer will of course be open source as well as the schematics of the PCB.

Power will be provided by a 9V battery or rechargeable pack.

The Otterbox seems to be waterproof for 100 feet or (30m) thats enough for testing purposes.

Since BX24 chip has 32k of memory it will easly handle logging of all types of information for debbuging and testing.

Funny, that is the chip I'm using for my RB controller. I chose that one as it has the power for when I upgrade to the deco comp too.
Later,
John
 
Why are you guys not using C??? Microchip/Atmel Controllers??? We are not turning a stepper motor here........

Are any floating point calculations required?? Data bus size, memory requirements???
 
ShakaZulu:
Why are you guys not using C??? Microchip/Atmel Controllers??? We are not turning a stepper motor here........

Are any floating point calculations required?? Data bus size, memory requirements???


Yes there is floating point math.. Buhlman algs are reasonable for most microcontollers true RGBM and VPM need much more horesepower to do it justice.

For reference the original Juergensen Marine mk 15 digital controller used a Picstik, very similiar to a basic stamp.. the 2nd and 3rd gen controllers used various versions of a pic.

The original Megladon controller with built in deco computer also used a pic.

The current juergensen controller (hammerhead) uses a much faster DSP based chip.

Both the VR3 and Explorer use the same brand RISC CPUs.

The ATmega series is a pretty capable controller and a Buhlman alg would be no problem implmenting.. (although probably not with any of the free tools)

The Atmel AVR processors (and it descendents) were designed with C in mind.. They can be programmed easily in assembler but their design is highly optimized for C.

I program (about 20 years now) many types microcontrollers and DSP processors and I chose to Usually progrem in assembly. This gives me full control over what is going on.. A project like this however I would do as a combination of both.. The User interface and deco stuff would be done in c and all the low level control and sensor evaluation in assembly.

Floating point is definately doable in assembly (I wrote my first floating point package for the 6502 while I was in High school), but it does require a good command of the math (intrinsic functions are basicly infintie series, logs are infinite sums of a series,) and assembly.
 
https://www.shearwater.com/products/perdix-ai/

Back
Top Bottom