PPO HUD

Packhorse

Flashlight Enthusiast
Joined
Nov 29, 2007
Messages
1,912
Location
New Zealand
My latest project has just reached the testing stage.

While not strictly in line with other CPF projects it does contain LED's!

Its a Heads Up Display to indicate the PPO ( Partial Pressure Oxygen) in the breathing loop of my rebreather.
Its based on a Arduino mini pro micro controller.
It monitors 3 O2 cells and displays their readings via 3 tri colour LEDs in the HUD in a sequence known as Smithers Code.
Other features include adjustable brightness depending on light levels, auto off, calibration mode and also future upgradable.

HUD its self is machined from Acrylic and consists of 3 Tri colour (Red, Orange, Green) LED's a LDR ( Light Dependant Resistor) small PCB and cable gland.

Housing is machined from Acetal with a polycarbonate lid.

Electronics pretty much consist of the Arduino mini pro a PCB a transistor and 10 or so resistors.

There is a single switch on the unit that wakes the unit from "sleep mode", calibrates and puts the unit to sleep.
The switch ( not pictured) hold a magnet to operate the hall effect sensor.
Battery is a Trustfire 14500.


As this is a prototype the whole lot stands to be changed. Smaller Housing, Arduino FIO, 18650 battery....

As my first Arduino project it has been a bit of a learning experience but its been fun. I can see a few more projects in my future.

001-2.jpg
 

Hallmcc

Newly Enlightened
Joined
Jun 8, 2008
Messages
99
Location
Raymore, Missouri
Very nice project. You might consider looking into using a mini OLED display, sure would give your HUD a very cool factor. Goggle transparent OLED display, they are not outrageous in pricing and are fun to play with.

This is not transparent OLED but might give you a nice practice piece to play with.
http://osddisplays.com/productDetails.php?pid=9
 
Last edited:

wquiles

Flashaholic
Joined
Jan 10, 2005
Messages
8,459
Location
Texas, USA, Earth
Great project there Packhorse!

As my first Arduino project it has been a bit of a learning experience but its been fun. I can see a few more projects in my future.
Yes, once you go in this path, you will quickly see/find out that you have a lot more options open to you. For example, instead of depending on some specific LED driver for control of PWM or levels, you can now fairly easily code your own. Combined with your machining skills, the Arduino now opens a lot more possibilities ;)

Will
 

Packhorse

Flashlight Enthusiast
Joined
Nov 29, 2007
Messages
1,912
Location
New Zealand
Yeah, I know what you mean. Its a pity you cant get any really tint Arduinos though. May have to learn to program ATmels direct.
Mind you I have plenty of larger projects in mind for now.
 

sucnip

Newly Enlightened
Joined
Dec 14, 2005
Messages
53
Location
Sydney, Australia

wquiles

Flashaholic
Joined
Jan 10, 2005
Messages
8,459
Location
Texas, USA, Earth
Yeah, I know what you mean. Its a pity you cant get any really tint Arduinos though. May have to learn to program ATmels direct.
Mind you I have plenty of larger projects in mind for now.

From the little that I have read about Arduino's, it seems to me that the goal of working with Arduino code/commands is to hide the details/complexity of having to write directly to registers and such.

To be honest, I got started by looking and studying and reviewing code already available, and of course, asking tons of questions. But since I used to write software for a living at one point in my past the transition to write natively in C for the Atmel processor was fairly straightforward - the hard part is studying the data sheet "countless" times to figure out how to setup various registers to do what you want, since each pin in the Atmel chips that I use (Tiny84 and Tiny85) have 4 or 5 functions/options each!.

My own learning curve was even steeper since I learned (never done before) to create my own board-layouts, and make my own PWB designs, and learn to solder lead-less surface mount parts. I was basically trying to learn "the whole thing", so it took me a while. Of course with the Arduino you can skip the board part, and get going quicker, which is what I would recommend to start with.

And even when going from the Tiny85 to the Tiny84, a lot of the same C code is the same - it is the part with the chip-specific registers that again takes time to learn, as each chip has different I/O pins, different features/registers/etc..

My guess is this is the type of "details" the Arduino hides to make it easier to use the Atmel chip and get on with your project quicker :D

Will
 

OS74

Newly Enlightened
Joined
Feb 10, 2009
Messages
73
Very nice! Can you please expand on the Smithers code?

Cheers
 

Packhorse

Flashlight Enthusiast
Joined
Nov 29, 2007
Messages
1,912
Location
New Zealand
Its a protocol displaying PPO developed by W Smithers (Waylon springs to mind ???).

If you have a PPO of 1.00 ( pure O2 at 1bar/sea level) you get a single orange flash. O-------
If its 1.10 then you get a single green flash. Every 0.10 you get another green flash. eg 1.30 is GGG----- up to a PPO of 1.80 GGGGGGGG
If PPO=0.90 then its a single red flash R-------, PPO of 0.50= RRRRR---

Depending on the diver and the dive target PPO is 1.1-1.3. If its a no deco dive I am happy with 1.0 - 1.2 so a slow steady single flash with the occasional twin flash of green. This also means that when you have a good PPO battery drain is at a minimum.

I have just added a LCD display to the project. Not sure if it stay but at the moment its good for spotting bugs in the software and monitoring variables like the LDR value.
Pic to follow.
 
Last edited:

OS74

Newly Enlightened
Joined
Feb 10, 2009
Messages
73
Aha, cool. And the indicators are synched so you see if one differs i suppose?

It seems like good thinking for monitoring a set-point. But at the leathal extremes of below 0,2 and above say 1.6 it would be good with an aditional warning so you dont have to count whether it was 6 or 8 flashes. I don't know anything about RB diving so maybe leaving the set-point is the only notice needed.

Cheers
/O
 

girdles

Newly Enlightened
Joined
Aug 15, 2009
Messages
34
The HUD on the Meg goes solid Green Hyperoxic or solid Red for Hypoxic mix.
 

Packhorse

Flashlight Enthusiast
Joined
Nov 29, 2007
Messages
1,912
Location
New Zealand
If below 0.20 or above 1.60 you are not going to be counting the flashes. You will simply see it flashing hard out and move to increase or decrease PPO accordingly. In fact the first thing you would probably do would be to check your other PPO display. For the PPO to be that far out there is something wrong!!! When PPO is out by more than 0.30 from 1.10 the LED's go to full brightness as well.

The HUD on the Meg goes solid Green Hyperoxic or solid Red for Hypoxic mix.
Thats interesting. Not sure I like it though. A flashing light is noticed better than a fixed light.
 

betti154

Enlightened
Joined
Jul 7, 2011
Messages
229
If below 0.20 or above 1.60 you are not going to be counting the flashes. You will simply see it flashing hard out and move to increase or decrease PPO accordingly. In fact the first thing you would probably do would be to check your other PPO display. For the PPO to be that far out there is something wrong!!! When PPO is out by more than 0.30 from 1.10 the LED's go to full brightness as well.


Thats interesting. Not sure I like it though. A flashing light is noticed better than a fixed light.

One of the things I love about my HUD is that you can see it when in zero vis. I'm not sure I'd be assuming that I can always check my display for this reason. I'd like to see a easily recognizable change in state for hypoxic and hyperoxic conditions, but each to their own I guess.

Very cool project though. I'd be tempted to try something similar but have no use case for it. Will definitely look more at the arduino board though.


Regards,
Damien Siviero
http://damiensiviero.com
 

OS74

Newly Enlightened
Joined
Feb 10, 2009
Messages
73
Slightly OT your project, but:

Is there some off-the-shelf waterproof boxes of the type you have made, i.e. box with proper o-ring and simple plexiglass lid that is held by screws?

It would be great for projects, I'm a EE, but I'm "mechanically challenged" and have only the most basic tools

I've got some Otterboxes for the purpose, but does not quite trust the sealing, and there are few surfaces flat enough for cable glands

Cheers
/O
 

Packhorse

Flashlight Enthusiast
Joined
Nov 29, 2007
Messages
1,912
Location
New Zealand
Betti, Im not interested in hypoxic or hyperoxic. I want a warning way before it gets any where near that. The increase in flash's over its 4 second duty cycle does that as does the increase in brightness. IMHO if you have missed that then a steady red or green light isnt going to help.

I have been using a rEvo Dream for the last 2 years and I have found that I only notice it when I make a conscience decision too. I hope this will be different. I think the multiple brightness levels will help in this regard.



OS74. No I dont know of any off the shelf products. But any one with a mill should be able to make one up for you. Just make sure you get the dimensions well sorted first.
 

girdles

Newly Enlightened
Joined
Aug 15, 2009
Messages
34
Betti, Im not interested in hypoxic or hyperoxic. I want a warning way before it gets any where near that. The increase in flash's over its 4 second duty cycle does that as does the increase in brightness. IMHO if you have missed that then a steady red or green light isnt going to help.

I agree with the solids.
I run the unit with electrics set .5 below the setpoint I require, I set my wrist computer at the setpoint for calculated deco then manually inject O2 the keep the setpoint at the required level. The hud is great constant reminder of setpoint and once you get used to 3 green flashes its second nature just to tap the 02.
 
Joined
Feb 1, 2008
Messages
889
Location
US
Packhorse .... why not to pot simple led bar in acryl with red , yellow green leds and set to pointer ( only one led at the time to avoid blindness ). That bar could be very tiny. (there you remember position of led (analog style display))

IMO : blinking only when is urgent to swich on bailout , colour led (from single led) ... when narked on deepth i'm not sure in colours ( also some low current can cause that maybe mix between (green /yellow /orange colour)
 

Packhorse

Flashlight Enthusiast
Joined
Nov 29, 2007
Messages
1,912
Location
New Zealand
Because it would require 3 LED bars (one per O2 sensor).
That would require more LED's and more control pins from the processor. It would also give a lower resolution.

I chose the Smithers Code because its industry tested and many seem very happy with it.

Originally I did consider using a LED bar graph and a bar graph driver chip. This would have made a very simple and cheap analogue HUD.
 

betti154

Enlightened
Joined
Jul 7, 2011
Messages
229
Betti, Im not interested in hypoxic or hyperoxic. I want a warning way before it gets any where near that. The increase in flash's over its 4 second duty cycle does that as does the increase in brightness. IMHO if you have missed that then a steady red or green light isnt going to help.

Fair positions, I guess I'm just saying that I'd just like to be able to determine my exact PPO2 from the HUD for zero viz situations as I've had to deco in caves like this. My assumption is that 1.5-1.6 might be difficult to distinguish from say 1.7. I've not used it though so am just speculating.

As I said though, dam cool home brew project and I think HUD sequence opinions seems to vary in between divers, manufacturers and experience - so this debate is nothing new.
 
Top