Last week Mike Brandl published a nice video from his latest LEGO MINDSTORMS creation. A submarine capable to drive underwater (off course), steer, descend and ascend while diving.
Big challenge here seems to have been the way to keep the NXT brick dry...
As he described in the comments section from his video, here it is the way it was made waterproof - "a plastic bag, two layers of soft tape, some glue for the corners and around the cables, and afterwards screwed together with two metal stripes to make it tight ... it works!"
The "Grey November" (as he called it) includes three PF motors - Two for drive and steer and another one for descending / ascending control.
Please realize the LEGO PF motors are not waterproof, however they have proved to perform well under water for some time. It can go from a few hours till weeks, until they die forever... Even if they do not die in service, they will turn into rust sometime later anyway!
While we see a few air tanks from the images, I bet they are not used as ballast and there is no sophisticated mechanism to pump air out of them and initiate the descent. I guess all the model is quite balanced to have a density similar to the water and then the propellers movement are just enough to make it navigate around.
Although this is not the first functional LEGO submarine creation. Remember at least a few other [1, 2, 3] and one failed attempt .