Roorka – Revolutionary dive computer made by Freediver for Freedivers!

Roorka dive computer

DISCLAIMER(This article starts with a short version for beginners with Roorka and people who don’t want to understand all of it possibilities…yet….Afterwards it’s a long version with detailed description. Choose the one you want to read)

Today I want to talk about Roorka dive computer.

This is not just another dive computer. It’s a computer that is using bone conductive technology in order for you to hear it. First and only one available on the market!

If you don’t want to read whole article I’m going to say in few sentences why I recommend Roorka dive computer.

SHORT REVIEW of roorka

With traditional alarms you have to count alarms and think what do they mean. Active thinking keeps you away from flow state. Roorka can tell you exactly what you want to hear and where you want to hear it. No thinking required, better relaxation provided. Secondly it allows to build-up much more complex rules, tips on the way up and even use it in a pool as a coach, for people who have buddies, but don’t have coaches. On competitions it’s very useful for judges and safety divers. Judges can program countdowns, so they never miss or forget about official top. Safety divers can use it to know the depth where they are, current dive time, when they should leave the surface or when their partner have left the surface. The possibilities are limitless. All you have to do is setup it with a user friendly software on your laptop before the dive and if you have any problems, contact creator and i’m sure he will help you as he helped me a lot of times. You can also drop a comment below and I will try to help you myself. There are also wizards available so anyone can do it. If someone is a fan of silence and want to hear few simple commands like “mouthfill“, “freefall” etc. it’s possible too and much more convenient compared to traditional alarms. Instead of listening to beeping sound behind your head and thinking “is it a mouthfill or freefall alarm”, user gets a clear message with adjustable volume control.

INtroduction – BASIC Characteristics

It has free new software and firmware updates, has a built in accumulator that can be recharged through typical USB plug – you do not have to buy special dedicated cable that increases overall cost. If you forget one, it’s easily replaceable. It comes with 3 available charging options, you can charge it in your car, using regular socket in the wall or by plugging to the computer through the USB port. So it’s like any modern device. You can forget about going on a freediving trip and having your battery run out in the middle of it (happened to me once in Cyprus 2015). Luckily I had Roorka prototype with me. I was diving with it in 2013 to 90 m in Polish lake too. Development of this device took 5-6 years.

The shape it has is for a reason. It can last without a problem even at 300m depth. Bone conduction needs solid pressure to the head. Flat (credit card type) design would have not touched the head in case of a typical mask. 

roorka – Personal coach

Why it is so amazing?

Simply said, you place it on your head and it talks to you while diving or on the surface. Just like your personal coach would do.

Under the water you can hear it clearly, even through the hood. Above the water is not as good as underwater, but if you find sweet spot, you can hear it equally well. Personally, in open water I dive with 7 mm hood and I can hear it without any problems both on surface and underwater. Roorka is mounted as on a pictures below, if you want more hydrodynamic profile, just place it under the hood.

First, if you don’t use fluid googles and don’t know how to mount Roorka on your head, check the picture below. I use simple strap from regular googles and a duck tape. I prefer duck tape instead of original clip, because you know, I’m an engineer. There is nothing that can’t be fixed by duck tape and WD40 🙂

For me the perfect spot on the surface is as on picture below.

Roorka placed just in front of the ear

You can also place it like that

Roorka placed just behind the ear

Or even like that (in this example, for some people audio will be audible only underwater)

Roorka placed on the back of my head

Roorka placed under the hood. The sweet spot is between back of your head and the ear [side view]

Roorka placed under the hood. The sweet spot is between back of your head and the ear [rear view]

There is also a possibility of having it under the hood if someone uses it.


let’s talk about numbers

Now you probably wonder, why do I need it?

Before I begin with it, let’s talk about numbers:

Roorka has:

  • 24 slots for customized settings (alarms/messages)
  • 8 slots for timers settings (start/stop/resume)
  • 3 timers and stopwatch
  • 8 cycling periods (4 time based and 4 distance based)
  • 42 values (that can be used to build alarms)
  • 62 voice commands that can be set for many different scenarios and timers
    (check table below)
  • 8 custom messages that user will be able to record and use (part of future free software/firmware update – they will last from few seconds up to few minutes)
Swim faster Swim slower Relax yourself Prepare yourself Freefall Focus Attention Bottom   Mouthfill  
Official top Breathe!   Surface protocol Remove mask Remove goggles Remove noseclip Remove facial equipment Show OK Say I’m OK
Temperature Temperature min Temperature max Temperature avg Temperature MIN Temperature MAX Battery level Depth Depth max
Depth avg Depth MAX Dive time Surface time Descent time Bottom time Ascent time Dive time MAX Dive time Total
Vertical speed Ascent speed max Descent speed max Ascent speed avg Descent speed avg Ascent speed MAX Descent speed MAX Stopwatch 0 Timer 1
Timer 2 Timer 3 Battery charging started Battery charging interrupted Battery charging completed Absolute pressure Absolute pressure min Absolute pressure max Absolute pressure avg
Absolute pressure MIN Absolute pressure MAX Atmospheric pressure Atmospheric pressure min Atmospheric pressure max Atmospheric pressure avg Atmospheric pressure MIN Atmospheric pressure MAX +8 customs messages

Table 1. Roorka commands (messages Roorka can talk underwater)

Now, you probably wonder, what is the difference between Ascent speed max vs Ascent speed MAX…You can see that few of the messages or values that are being used have min/max or MIN/MAX words. Simply:

  • min/max means that it uses messages or values from previous (last dive) / current dive
  • MIN MAX means that Rorka uses values from whole history of Roorka usage (from the point when you Clear statistics from ROORKAsoft – check picture below)

Why do I need roorka?

Let’s move to the point and I can tell you why I need Roorka. I wear fluid goggles and reading from my watch is not really possible. Anyway, I’ve never heard of any freediver that check his watch during deep dives (like competition, trainings etc.) and I used to rely only on alarms, specifically I had to count them.

First alarm meant for me that I have reached point of neutral buoyancy and I should put less force into my kicks. Second meant that I should start my freefall, third meant I should take a mouthfill, fourth meant I had to refill mouthfill. Fifth meant I’m close to bottom plate…and so on…On the way up, there was no alarms available.

Now, freediving is an activity where we want to enter flow, meditative state, I don’t like when sometimes I was confusing alarms, thinking if it was 3rd or 4th and what should I do.

That’s why Roorka is a perfect computer for me and I guess for everyone who think serious about his depth training.

Instead of simple alarms as beeping sound, you can program what you want to hear and at what depth you want to hear it (as in a table above).

Now, before I begin I just want to say, that it’s not possible to list here all the possible examples of sets. You can program Roorka however you want and only your imagination is a limit! Seriously, think about what would you like to hear and you can program it, if you don’t know how to do it, ask in comments below.

My roorka settings for maximum dives at depth

In depth diving I program Roorka this way:

  • at – 15 m Roorka tells me the command “Relax yourself” – I know that I have reached point of neutral buoyancy and I should kick with less energy.
  • at – 25 m Roorka tells me the command “Freefall” – this is a depth where I do 1 last kick and start freefalling.
  • at – 30 m Roorka tells me the command “Mouthfill” – so I know that I should finish my mouthfill
  • at – 40 m Roorka tells me the command “Mouthfill” and in the future it will tell me “Refill” when I will be able to record custom messages – so I know at this depth I should refill my mouthfill the last time
  • – 5 m to the bottom plate Roorka tells me the command “Prepare yourself” – so I can wake up and prepare for the turn
  • at the bottom Roorka tells me the command “Bottom” – I know I’ve reached target depth, it can help avoid accident as in the past with wrong measurement of line. It’s good to set it -0,5-1 m from target depth.
  • at -8 m (on ascent) Roorka tells me the command “Freefall” – that’s a depth where I should stop wasting my energy and just use positive buoyancy for coming up (when we are hypoxic we will forget that!)
  • at –7 m (on ascent) Roorka tells me the command “Focus” – so I know that I should focus now on recovery breathing, surface protocol because this is a point where change in pressure is the biggest and you are more likely to blackout
  • in deep FIM dives I program very simple DCS preventive protocol. At 25m Roorka starts internal counter and if I reach -6m faster than 30 seconds (from 25m -> 6m in less than 30 secoonds) Roorka tells me “slow down” and tells me the depth “6 meters” when I reach it). In case I don’t hear “slow down” message before reaching “6 meters” it means my speed is correct and I can come up straight away

After surfacing Roorka can guide you through protocol, it can tell You “breathe”, “remove facial equipment”, “show I’m ok”, “say i’m ok”. There is plenty of options as stated in table 1.

Above is just an example, I can say that each freediver has his own specific alarms that he would like to set and this is possible, as I said, your imagination is a limit, because software possibilities are limitless.

MY ROORKA SETTINGS FOR trainings in a pool

I don’t like when something talks to me while DNF/DYN. During maximum swims I don’t use it.

However, I can’t imagine my life now without it during trainings. For instance:

I don’t have a coach in the pool, never had one, and I was always using my own stopwatch to count my speed, breaks etc. What was the result? Results were inconsistent. When I push some table hard, I was never able to have exactly the same measurement for dive time or breaks. I had to use split option im my watch, calculate breaks, calculate dive times on the know how it goes in hypoxia 😉

I programmed Roorka to:

  • detect immersion to 20 cm as start of the dive
  • detect ascending to shallower depth than 10 cm as end of the dive
  • 15 seconds after surfacing, Roorka tells me the dive time of previous dive (caption & value & point & unit)
  • 20 seconds after surfacing, Roorka repeat the dive time of previous dive (value & point)
  • 30, 45, 50, 55, 60, 1:30, 1:50, 2:30, 2:50 etc. Roorka gives me the time call since surfacing from previous dive (value & point).

This way, I don’t need a coach, because I have a personal coach that is talking to me and he keeps the timing better than human…but I still need safety so never ever freedive alone! 🙂

Roorka units

Now, let’s talk about value, value & unit, caption & value & unit  etc. as on image below:

Thanks to this settings you can program Roorka and you may not know what does it mean right away.

You decide what you want to hear. Basically after many trainings you might be bored, that Roorka keeps telling you “30 seconds”, “45 seconds”, “10 meters”, “minimum water temperature 27 point 6 degrees”…you know where this is heading? Yes you can specify if Roorka will tell you “10”, “10 meters” or “10 point 6 meters”. It’s very useful, while diving deep, you may want to hear some certain depth, but you don’t want to hear “depth50 meters”, just “50”, so you set in Roorka value,  “depth” is a caption, “50” is a value, “meters” is a unit and “point five” is a point.

It’s important because if you are diving deep and at depth of 50 meters you may want to hear only “50”. Personally, when I train deep and perform only one deep dive, I also like to know straight away my dive time, minimum temperature, average descent and ascent speed, maximum reached depth. Easy, I just program Roorka to tell this values 60 seconds after the dive..and then repeat every 1 minute until Roorka power off (btw. this setting you can also choose, if it power off automatically from 5 minutes to 1 hour) or until the next dive when next cycle will start.

Without caption and unit it wouldn’t be comfortable to listen to those messages. It’s good to be able to choose what you want to hear and in what situation.

positive Influence on my training

Since I’ve started using Roorka in a pool, I finally can distinguish minor changes in my technique, how they influence the dive time, is the change good or bad, is it energy efficient.

In dynamic for instance, I’ve modified my leg-kick, it doesn’t use more oxygen but I swim few seconds faster per 100 m and I’ve realized that because I never had anyone counting my every lap with precisement of swiss clock. So in next couple of years when you will see me swimming 330 m:) it’s partially Roorka merit!

Roorka can distinguish type of dives and apply different alarms for each of them

Recently someone asked on facebook, is it possible to have different settings for a certain discipline done in one training? Let’ say someone does CNF and CWT on one session and it’s impossible to reprogram the device while being in a water. Yes it is possible. How?

I’m going to use my settings as an example. At the moment I train in a pool and I dive once or twice a week in my quarry. I’m lazy and I don’t want to change Roorka settings whenever I go to pool or for depth training. It get’s more complicated because when I’m diving in my quarry, which is 31m deep, I do first dive as CNF and later I do emptly lungs/FRCs. Those two dives require different alarms.

So how to program it all in one custom settings? Let’s start with pictures:

First I have 3 possibitiles:

  1. Dive is in a pool
  2. Dive is in a quarry (CNF)
  3. Dive is in a quarry (FRC)

In Parameters/Intervals tab:

  1. First formula is to decide if dive is done in a pool or in a quarry (pool that I train has maximum depth of 1,8 m).  In my case, if dive is the one in a quarry, STOPWATCH 0 – START.
    How to read formula from picture below:
    – at the end of dive if  maximum depth reached was greater or equal to 3 meters, STOPWATCH 0 – STARTs.
  2. Second and third formula is to decide, wheter dive is a CNF or not. How to understand it? In CWT/FIM, after let’s say 4 meters (on first 4 meters, with duck-dive anything can happen), for next at least 10 seconds, speed is more/less constant, while in CNF, speed drops to almost 0 m/s during arms/legs recovery phase. It’s enough to distinguish these two patterns and decide which dive is CWT/FIM and which one is CNF.
    How to read formula from picture below:
    In my case, after descending below 4 meters, if in next 10 seconds (Timer 1), my Vertical speed drops below 0,3 m/s, Timer 2 Starts (with infinite [666 seconds] clock) and it means the dive is a CNF dive. If my speed never drops below 0,3 m/s, it means i’m not doing CNF.
  3. How to read formula from picture below:
    If timer 2 is coutning, which means, the dive is a CNF and if I’ll reach depth of at least 20 meters, Timer 3 Starts.
    Why? On the way up, we often forget due to hypoxia, that we should use positive buoyancy and stop swimming. Personally I never know if I’m at 15m, 13m or 10m, 7m and so on. It’s hard to decide when I should stop swimming and just glide to the surface. I want Roorka to tell me “Freefall” when I reach -8 meters on the way up, but only in CNF dive, not FRC/empty lungs dive, because that’s too deep for them.

    Now let’s built a rule that will do that. (Messages tab)
    Here it is. If timer 3 is counting (only if dive was detected as CNF) and depth reached was at least 20 meters, Roorka will say command Freefall only once.

In Messages tab:

  1. First 3 messages are for battery control. Roorka will notify me if battery is low (<40%) and at the beginning of charging and when the process completes.

2. We already established that if Timer 2 is counting (and it is counting, because my speed after reaching 4 meters was lower than 0,3m/s which means it’s a CNF dive) and I reach a depth of at least 15 m, Roorka will tell me that I should swim slower, because that’s the point where I reach neutral buoyancy and I shouldn’t use too much effort with each stroke anymore. At depth of 27 m I should start complete freefall (and watch my head because in Zakrzówek quarry I can bang my head at the bottom of 31 m). On the way up I will hear a “Freefall” message at depth where I should use just positive buoyancy for freefall to surface. (Timer 3 is counting, so the rule is true because dive is a CNF [Timer 2 counting] and my depth reached is 31 meters which is more than 20 meters).

3. Now, in open water, I want to know some characteristics from my previous dive. Characteristics like dive time, maximum depth reached, average descent and ascent speed, minimum temperature during the dive. I want to hear that after both, CNF and empty lung/frc. In this case I use Stopwatch 0 – Start rule as I explained before. If Stopwatch 0 is counting it means I’ve reached depth lower than 3 meters (so it can’t be my pool) and I want to hear dive summary 15 seconds after surfacing.

4. In a pool however, I want to hear different summary and also counting down for my next dive in a table. Stopwatch 0 is not couting, which means I haven’t reached depth lower than 3 meters and it must be my pool.

roorka pool summary

This is it, end of a little bit complicated example, but if you didn’t get it at once, read it few more times, slowly and you will get it. If you have any problems, just ask me in comment. Me or MAVI (creator of dive computer) will answer you hapilly.

Now, let’s talk a little bit about accuarcy of Roorka!

  1. User can adjust speaker volume from -57 [dB] to +6 [dB] – everyone will find his sweet spot.
  2. Depth sampling rate is set from 1 to 10 times per second.
  3. Suspend mode tells about, how much time has to pass until Roorka goes to sleep mode in order to extend battery life (from 5 min to 12 hours).
  4. Suspend mode depth sampling rate can be set to 1s, 2s, 4s or 8s. It can be different than depth sampling rate during the dive.
  5. Dive start depth threshold can be set to minimum 10 cm and maximum 255 cm currently.Thanks to that it allows to distinguish static immersion and emersion. This way user can program his warmup routine for static and don’t have to control time manually.
  6. Surfacing depth threshold has to be set at least 5-10 cm shallower than dive start depth threshold
  7. Ascend phase speed threshold
  8. Bottom phase speed threshold

The last two fields (7&8) needs more explanation

For more efficient usage of the messages, you can use dive phases in formulas:
during descent
on the bottom
during ascent

For these phases definition, Roorka uses speed (not depth) threshold mechanism.
Two parameters (7th and 8th) allow to correct phase definition.

Every dive starts with a descent phase. First, you increase the depth till the moment when you have to reduce the vertical speed. This speed finally riches “bottom phase speed threshold” and bottom phase starts.
After the turn Your speed reachesascend phase speed threshold” and activates the last (ascent) phase.

For the simpliest dive profile (CWT) both parameters can be set to 0cm/s.
For CNF, spearfishing or recreational diving it is better to ignore the slow ascent (e.g. Par.7: -50cm/s; Par.8: -20cm/s). The graphic below explains it well enough.

roorka descent ascent bottom phases

Next 4 settings are used to provide very precise depth measurement!

At pressure tests, Roorka provided very precise readings. At 134 m, depth was accurate to +/-0,1 meters.

How is that possible? First, user has to specify 5 parameters. Local salinitytemperature source for water density calculations (if option constant is selected user has to specify it in field .11)AMSL (altitude)Latitude (N or S).

All of the dive computers work the same way, they don’t measure depth, they measure absolute pressure (by pressure sensor) and their software convert that pressure (precisely: minus estimated atmospheric pressure) to depth unit which is later displayed on our watch.

Now if you have some physical knowledge, you know why these 4 parameters are important. Because salinity, water temperature, altitude, latitude, all of them have an influence on how precise is the measurement of pressure sensor. Roorka allows to customize it, anywhere you are traveling to. Non of the dive computers does it, they have some “average” settings and in some parts of the world they have bigger or smaller measurement error. Some computers offer salinity switch, between fresh/salt water, but that’s not enough. Salinity is different in Caribbean Sea or in a Red Sea.

Dive simulation

If you are not sure if your settings are corret, since ROORKAsoft_1_0_4_0_EN soft has been released, user can now test drive his settings in a real dive scenario…on a computer.

4th tab called Simulation is the place where it happens. You have to download settings from PC to Roorka, as almost all values are real values from Roorka. It means that if you come up with some settings and you don’t download them from PC to Roorka, it will keep simulating what Roorka has stored in it’s memory.

For downloading settings you use this button. This will save them on a Roorka device.

roorka download

Once it’s done, we can start our simulation now.

On the right we use slider to specify our vertical speed and moving it down is a descent while  moving it up is an ascent. This way you can specify your own speed and check all the alarms, if they are working correct and do you hear exactly what you wanted to hear while programming Roorka.

Below is an example of a descent with ~2 m/s.

Below is an example of an ascent 2m/s.

Other roorka settings

Since Roorka can detect phases of a dive (descent, bottom, ascent) spearfishermen can greatly benefit from it. They can program alarms around bottom phase to avoid overstaying at depth.

Judges during competitions can program intervals in which Roorka will provide countdowns for them.

Robert Cetler, one of the safeties during Polish lake competition can’t imagine his life without it now. He was using simple settings. Depth every 5 meters, dive time every 30 seconds since 1 minute and counter on a surface (dive start threshold set to 10 cm). Thanks to all of that, safeties can know at which depth they are, how long they can stay there and many more informations that will make safetying easier and safer.

Other usefull settings I find are about speeds. User can build bunch of alarms around certain ascent/descent speed.For instance:

  • you can program Roorka to tell you swim faster or slower, based on your ascent/descent speed (average or minimum). Maybe not in a competition dives but it can be very helpful in trainings. Let’s say you do a table of 30 m dives. You want to make ascent as fast as possible.
    You can set a condition that if your current ascent speed drops below 1,5 m/s, you will hear command “swim faster“, or you can set a repeatable command, that every 3 seconds (or meters) you will hear your current ascent speed…and so on.

Do you see now how many possibilities it has? It’s basically Limitless and it can help you fine tune your diving.

Of course, if you are a fan of simple alarms, you can program it that way, but if you are gig like me, it’s a great tool that allows to min/max our dive and bring extra safety layer to it!

If you have any questions or problems with settings, you have an idea for settings for you but have no idea how to program it, feel free to ask below in comments section. Me or MAVI will respond as soon as this is possible.

Roorka costs 450 euros. It’s a very reasonable price for a dive computer. It comes with 2 years warranty and is shipping worldwide.

Plans in development

  • RoorkaSOFT is a program where you can adjust all of your settings. Currently it is available for windows devices and it will be also for Mac and Android.
  • There will be software to download and analyze dive profiles, just as in any dive computer
  • Possibility to record up to 8 custom messages

All of it will be available through software/firmware update for free!

Click here to visit the website of Roorka


facebook webpage