Jump to content

[Build Log] Tranquil Stream - A Submerged Streaming PC

Grrizz

We need more update :o

Sadly there probably wont be much progress this week, I'm prototype testing (and fixing/tweaking) at work at the moment which leaves me with next to no spare time :(

I have ordered the I/O PCB and think now that my flat cables are here all the electronic components have arrived... so many packages I've kinda lost track but I'm pretty sure the only thing still in the post now is acrylic glue, speaking of which I'm pretty happy with the acrylic part design at the moment so will likely send the files off to the laser cutters in the weekend.

 

VEtbEeRl.jpg

I have also decided to go ahead with wiring in a temperature sensor to allow a temperature based light control option as I think it would look cool and its to easy of an add-in to pass over.

One thing I've discovered I might have some issues with is the main I/O input connectors crimp pins, they are a lot smaller in real life than they looked on the computer screen lol, its something which gets me from time to time especially when designing things in CAD but I have a lot of spares so with a bit of persistence I should be able to get there in the end. I would have bought the crimping tool but it goes for ~$500 (bloody rip off) so I'll be slaving over them with a pair of pliers and maybe a dab of solder for peace of mind.

I'll probably be weighing in towards the end of next week with some more progress unless I get the soldering bug and decide to put the I/O PCB together before then but that is unlikely with my current workload, for now I'll leave you with a render of how it should look with a bit of blue lighting running. I need to do something to the wood design too as it doesn't quite feel right in my eyes at the moment, it feels like it needs something to break up the squareness like a slope at the back of the top or an angle or engraving somewhere, I'm not sure yet but I'll have to play around with it when I get a chance, the difficulty is I don't want to make it any bigger and I have to work around the existing aquariums shape.

 

Ej9tO0al.png

Oh and I have also changed my mind about the bubbler and am now leaning towards using the air stone instead of the bubble wall as I just think the wall might be a bit much however I'm still open to hearing what the LTT forums think would look best, perhaps I can plumb them both in, wire in a solenoid valve and make it selectable? I was also thinking I could use the bubble wall with the fluid pump to create an even flow of oil across the front of the motherboard.

Link to comment
Share on other sites

Link to post
Share on other sites

I think the bubble wall would look cooler in front of the pc as long as it wasn't too overdone or too little

- i7-2600k @ 4.7GHz - MSI 1070 8GB Gaming X - ASUS Maximus V Formula AC3 Edition - 16GB G.SKILL Ripjaws @ 1600Mhz - Corsair RM1000 - 1TB 7200RPM Seagate HDD + 2TB 7200 HDD + 2x240GB M500 RAID 0 - Corsair 750D - Samsung PX2370 & ASUS ROG SWIFT -

Link to comment
Share on other sites

Link to post
Share on other sites

I think the bubble wall would look cooler in front of the pc as long as it wasn't too overdone or too little

Thanks for the feedback :) I don't think it will be too little (refer to the video in the original post) but I am concerned it might be a bit much, I am toying with the idea of adding both with a valve so there is the option to use one or the other however if the wall is too OTT it will be a fairly redundant addition. The bubblers will be under the pebbles so as to hide them from sight which should increase the dispersion somewhat and the wall is slightly longer then the aquarium is wide so I would likely zig-zag it giving the bubbles a bit more depth rather then just coming up as a straight wall. If anyone else has an opinion on what they think would work best I would love to hear it as this is probably the main thing I cant make my mind up on one way or the other. As much as I'd like to just try it, access to the bubblers will be difficult to say the least once it has all been put together :(

 

Will you be open sourcing the LED control panel?

Yea, if that's something people are interested in I would be happy to share it with the community, with the usual terms of being for personal use only (or if someone wants to make some money off it cut me in too ;)). I will put it up once I get to a point where I feel it is "done".

If there is enough interest (drop a comment or like this post) I will put some time aside to cut the LED control portion out of the full code and do a schematic/PCB design with bill of materials to make it a stand alone LED controller (without the pump control, etc.) otherwise I'll just post the code as it is and let people go at it to make it function how they like - the hardware is Arduino based so making a custom PCB isn't a requirement but it does need some additional interfacing components to work. Also if anyone has ideas for modes they would like to see throw them up here and I'll see what I can do (no promises though :P), one thing I might look into is a 3/4 pin fan header interface for lighting control from the motherboard but I wont be working on that right away.

NOTE: The previously posted schematic has changed slightly, I found the HDD and power LED interface on the motherboard is actually low side switching so if you are looking at that for a reference be aware you will need either an optocoupler or transistor interface to drive the circuit properly, I opted for a optocoupler as they are relatively cheap and from the motherboards point of view it is just driving an LED with the added, albeit unnecessary, benefit of isolating the two circuits. I will post an updated schematic in a future update.

Link to comment
Share on other sites

Link to post
Share on other sites

I would be very interested in the code and the pcb design for my own personal build (I'm a software engineer).

Link to comment
Share on other sites

Link to post
Share on other sites

Is it safe to assume you are making the wooden shell yourself? If so, what wood do you plan on using for it? Also, how much did that mineral oil cost?

Link to comment
Share on other sites

Link to post
Share on other sites

Is it safe to assume you are making the wooden shell yourself? If so, what wood do you plan on using for it? Also, how much did that mineral oil cost?

At this point the wood parts will be CNC milled, the top will be cut from a solid block while for the sides and bottom I'm looking at cutting from a sheet and bending it around a base block to keep costs down and have a continuous grain. The wood I've used for the model and at this point intend to use is Mahogany as it has a nice grain, is fairly common and is a hardwood. Pine is a good go to wood in NZ because it's so cheap and can be stained to look how you want it but it's fairly soft... my mind may change on all this when I get pricing in though ;)

I was quoted NZ$175 for 20L of oil but managed to pick it up with a fairly good discount, because there is no list price this can change (up or down) so my quote may be different from someone else's depending on quantity or even time of year etc. so don't look at that price as "the" price just a guide.

I haven't got much further along unfortunately, work is pretty balls to the wall at the moment and I picked up a GTX970 on Friday so with that and the Final Stand DLC for BF4 coming out last week I spent my free time in the weekend playing that. I have spent some time adding code to the controller so the software will automatically find the port the hardware is attached to rather than having to manually set it and I added in integral type behaviour for the LEDs when on the "Drive activity" setting, the rate at which they change is now set by the speed slider so you can go from hard cuts as in the video above to slow blends depending on how busy the drive is. I also added the temperature option so the colours will blend based on the current temperature, I coded it so it "learns" the working temperature range and will drift over time to adjust to seasonal changes etc. but may add in settable min/max temperatures as well because until I get that in the system I don't know how well it will follow long term temperature changes, adding an ambient temperature probe might be a worth while addition to make it track quicker.

I'm probably going down to my old Uni on Thursday so if the laser cutter's free I'll see if I can use it to get the acrylic pieces done and the controller PCB has finally turned up, sadly their black solder mask comes out brown when over copper planes (hence the brown in the models) but its better than a 4 week lead time when ordering from overseas ;) so that will be getting put together this weekend, assuming I have all the parts... I thought I did but I'm still getting at least one parcel a day, to be honest I'm pretty sure I have all the components I think most of what I'm getting now is just the less commonly used plugs/sockets. I will say it is nice having something waiting for me at the door every day even if it is just a JST plug or some optocouplers :D

 

Yf2EUdml.jpg

Link to comment
Share on other sites

Link to post
Share on other sites

If you are going to put a fish into it. There's a chance it will die quite quickly. I can't remember where i found it but there was a dude that put a fish into his submerged pc, and in 3 months 2 fishes died...

Just sayin' they can die quickly.

If you want my attention, quote meh! D: or just stick an @samcool55 in your post :3

Spying on everyone to fight against terrorism is like shooting a mosquito with a cannon

Link to comment
Share on other sites

Link to post
Share on other sites

If you are going to put a fish into it. There's a chance it will die quite quickly. I can't remember where i found it but there was a dude that put a fish into his submerged pc, and in 3 months 2 fishes died...

Just sayin' they can die quickly.

Well yes since there is no water for them to breath from..

\

Link to comment
Share on other sites

Link to post
Share on other sites

Really liked the LED demonstration video. Wouldn't mind playing around with what you have there, really cool work.

 

I like the idea of the dual chamber to get fishes to work, hopefully it works out finding a stable temperature and you are going through a few fishes per month. I'll be watching, good stuff.

Link to comment
Share on other sites

Link to post
Share on other sites

Hey guys thanks for the feedback @PumaXCS glad you liked the LED controller :)

There's a little confusion though (@samcool55), this build wont include fish! Its going to be a single chamber oil only build so putting fish in it would just be cruel ;) @RainColts WetRarity is the dual chamber build going on at the moment, it looks to be a very interesting build too. As much as I like the idea of having fish in a build like this for me personally the maintenance involved is a bit much, having to regularly clean the tank and cycle the water etc. and I don't think they would take too kindly to the lighting either, I picked up some details on what's involved when I was living with a flatmate who used to keep a couple of tanks.

Link to comment
Share on other sites

Link to post
Share on other sites

Update #2: Ready, steady, bake!


So with enough parts in my possession and the PCBs turning up I was able to get started on putting together the I/O and control boards.

A blank slate:

CfSW4wgl.jpg


Patiently applying the solder paste and even more patiently placing the components:

ZVQlDOnl.jpg

cIEdhZal.jpg


This is the point where I found my first problem… the HDMI header I had didn’t fit the shields PTH positions, no problem I thought, I’ll just trim the rear legs and bend the front ones into place, sadly on closer inspection even the data wires were misaligned with my landing pad layout :o apparently I had somehow ordered a different header to the one whose datasheet I had been looking at, and what’s more, they were twice the price of the one I wanted :( they don’t cost a whole lot but I ordered several for stock which was a little frustrating. So off I went to reorder the correct parts and pushed forward with what I had.

DBTKZnKl.jpg


Next we journey over to the kitchen:

B8HyWc1l.jpg


What’s that hanging out the side? you say… the controller that keeps the temperature following my preprogramed solder reflow curve:

SIn6yXdl.jpg


I started my oven build about a year ago with the intent of tidying everything up, reassembling it and adding a control interface with an LCD for setting curves and checking states but shortly after starting it I needed to use it to do some prototyping for work and it has since fallen into the bracket of “it works and is in use” so it never quite gets to the top of my to do list even if it is a bit messy ;)

Getting ready to cook!:

OhFk3LCl.jpg


In the “soak” zone, she’s getting warm in there (~160-180c):

H32XbZnl.jpg


Starting to reflow (200-230c):

XoxhFyDl.jpg


DING! and out it comes (don’t touch unless you like blisters ;)):

sPVBvQyl.jpg


I am leaving the PTH stuff until I get all the SMT stuff done (HDMI header), the SPDIF daughterboard was hand soldered and lined up on the main board which is where I found problem number two, each of the I/O headers had been laid out to have a 1mm overhang off the edge of the main PCB but foolishly I had put a 1mm overhang for the SPDIF module on the daughterboard and a 1mm overhang for the daughterboard on the main board leaving it with a 2mm total overhang :( not a biggie but a bit of a face palm moment.

swCCaxhl.jpg


I seem to have misplaced my flux cleaner so please forgive the gunk on the board :)

The other potential problem I ran into (or potentially avoided running into) was the fact I didn’t have pull down resistors on the MOSFETS driving the LEDs, while generally this shouldn’t be an issue because they are soldered to the PCB and only powered on when the MCU is also powered on thus holding the gate at a know state, I read about someone having issues in the long term when not using pull down resistors on a brushless camera gimbal, he theorised that there could potentially be a small lag between power on and the point where the MCUs outputs were no longer floating and a floating gate on a powered MOSFET is generally a bad thing so I grabbed some small 0402 size resistors (1x0.5mm something I had the pleasure of being able to avoid on this project up to now which was nice for a change) and nestled them between the gate and source pins on my MOSFETs “just in case”. This is something I would always do on a prototyping breadboard due to the potential for wires to come loose etc. but I kind of 50/50 it on PCBs depending on if it’s for personal or commercial use, after reading that article I will always allow for them in future though as they cost nothing more than a bit of board real-estate.

I never made it down to the laser cutter last week unfortunately, a couple of prototypes at work inexplicably died which ate up even more of my non-existent spare time at the moment, however, as mentioned earlier I have updated the software to automatically find which port the controller is plugged into rather than having a fixed setting to make things all the more convenient whilst being tidier than having a drop box selector. Man C++ registry access is a nightmare, its times like these that make me want to switch to using C# but with most of what I do being embedded I’m stubborn and like the uniformity between my hardware and software code :P Now that I’ve done it once it should be easy in the future but there are a lot of little gotchas in the learning process.
I have also modified the drive activity setting on the controller to allow for integral type behaviour on the LEDs which can be set with the speed slider to whatever your preference of behaviour is, from hard cuts to slowly building blends over long access times.
The temperature sensor option has been implemented too allowing it to learn the computers temperature range and automatically adjust over time to account for changes in average temperature over different seasons etc. however I will probably need to add a second ambient temperature probe as well so it can keep up with rapid temperature changes like day/night cycles, putting a heater on in winter or even just mixed rainy and sunny days. Fortunately I had the foresight to break out a few spare I/O pins on my MCU :D The I2C port is available too because I thought I might like to add a temperature readout down the track but it also allows a huge amount of potential expansion if I manage to fill the I/O I currently have available.

This video shows a couple of different speed settings for the drive activity mode and the temperature controlled mode using my fingers to warm up the probe. I picked up a cheap RGB LED strip to try out, it has a higher LED per meter count then the one in the other video and the colours are slightly different but its great value:


I was really hoping I would get to test the I/O board last weekend but alas that will have to wait another week. I’m going to try to get down to the laser cutter on Friday but my schedules pretty tight at the moment so it might get pushed back to next week, well see how things go as the week progresses.

 

Link to comment
Share on other sites

Link to post
Share on other sites

Really cool with the custom PCBs, can't wait to see the final product!

Link to comment
Share on other sites

Link to post
Share on other sites

Really cool with the custom PCBs, can't wait to see the final product!

Cheers, glad you like it so far :)

Unfortunately I only got a shipping notice for my replacement HDMI headers on Friday but nothing in the mail box so I will probably only see them on Monday. I didn't make it down to the laser cutter either but will definitely get there at some point in the second half of next week, my acrylic solvent did turn up though which was nice because I have been waiting on that for quite a while now :)

Link to comment
Share on other sites

Link to post
Share on other sites

Got another package today... YAY :D

 

looks......AWESOME!!! :lol:  :lol:  :lol:

Link to comment
Share on other sites

Link to post
Share on other sites

Looks smexy! Great work dude!

My build: CPU:  i5-4670K Mobo: ASRock Z87 Extreme4 RAM: Kingston Fury Red Series 16GB GPU: Asus GeForce GTX 970 STRIX Case: Corsair Obsidian 750D

Link to comment
Share on other sites

Link to post
Share on other sites

Looks smexy! Great work dude!

looks......AWESOME!!! :lol:  :lol:  :lol:

Thanks for the positive comments guys, they're much appreciated :)

Link to comment
Share on other sites

Link to post
Share on other sites

I love this, I need more!

Awesome job :)

Cheers :D

 

I cant wait for next update please do it soon  :(  :(  :(

I'll have something up later this week, my car broke down last week so I didn't get to the laser printer however I plan to see if its free in the next couple of days (its amazing how hard it is to carve an hour or two out of my day to get there at the moment :(). I did mange to get the I/O board together in the weekend, next step will be doing the cables... I'm not really looking forward to that but it has to be done lol.

I'm still really stuck on the air stone vs. bubble wall debate, Linus and Slicks build highlights my exact concern about the wall being too overpowering so I'm back to favouring the air stone for the time being.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×