Thursday, February 28, 2013

Fix for perpetual dropbox 'Connecting'

I recently had an issue with my Dropbox installation on my Mac. It had been working fine for many months, but at some point it began to get locked into a mode where it never connected to the service. I could hit the site without problem. I followed all the procedures I could find on the web to reinstall, deleting the app fully, deleting settings, deleting the entire dropbox folder... Nothing worked. After reinstallation, it got even worse, as the setup wizard couldn't complete. Telling the app to close would hang the app, and I'd have to kill it manually from the command line.

Well, to make a long story short, and preserve this so hopefully folks having this same issue in the future can find my solution:

First, go to 'Terminal'. Make sure that Dropbox is not running by typing the following:
sudo killall -9 Dropbox

After that, you'll want to flush the DNS cache:
sudo killall -HUP mDNSResponder

Then start dropbox and wait a little while (let's say 30 seconds). Now we want to get a summary of all the servers your machine has tried to connect to. This first command logs that info to the system log:
sudo killall -INFO mDNSResponder

The second command searches that log for entries matching dropbox:
cat /var/log/system.log|grep dropbox

The resulting information for me showed an entry for 'client71.dropbox.com'. When I did an nslookup for that domain on my box, I got a strange error. When I did a lookup using an online DNS tool, it worked fine... I never bothered to determine the problem, the solution was to add the following line to /etc/hosts:
127.0.0.1   client71.dropbox.com

I killed Dropbox again using the killall command, restarted it, and it immediately went to the wizard step where it asked for my credentials, and it's been fine ever since. Huzzah!

Tuesday, February 7, 2012

Lots of valves and bits

Here are the parts, assembled for your viewing pleasure, about to go into building out the backend waterworks for my reef tank. The size reference is difficult to see, but the valves on the back left are about 12" tall. They're massive.

Saturday, January 21, 2012

3-way PVC ball valve

This is one of those things that probably only gets me excited, but the 3-way valve for part of my 240 gallon reef tank has finally arrived, and if a valve can be sexy, I think this one is!


Now I'm just waiting for the 60 other plumbing parts to arrive. 

Wednesday, November 30, 2011

240 Gallon reef tank build - part 1

My old site had a link to my 80 gallon saltwater reef tank. It had graphs of temperature, pH and ORP, status of lighting, and a small webcam that updated every 15 seconds or so. This was circa 2002. I've long since shut down that tank, moved several times, and finally I own my own house. I'm in the process of finishing the basement and adding a new 240 gallon dream tank, custom built into the wall. I'll document a bit of the process here!



My old tank was 48" long, 18" deep and 24" tall. Each dimension was CLOSE, but not quite what I wanted. So this time around I went with the largest dimensions I could realistically want and also importantly, FIT into my little basement. The new tank is 72" long, 24" deep, and 31" tall. And just barely fit into the basement.

As I was redoing the basement, I realized "Wow, this is where the tank should go!" Up until then, I'd planned to tank over a substantial part of the dining room above, reinforce the floor, run additional power, etc. But the basement was a blank slate, already reinforced (it's concrete!) and was all found space, so no stealing living area from the other inhabitants of the house.

So I immediately tore out the studs I'd begun adding for the wall between the playroom and the storage room, and began to design and construct a built-in stand:



As you can see, it's built from 2x4 dimensional lumber except for the top, which is 2x8... And it is massively overbuilt. A single 24" 2x4 can handle about 19,000 pounds (assuming you can prevent it from moving sideways). I have eight 2x4s in compression, and the entire stand is wrapped in 1/2" plywood to give lateral stability. In reality, the plywood is the real structure of the stand, going without it would be very dangerous. I still have some concerns about the 72" unsupported span on the back, for sump access. Time will tell if I've made a miscalculation. The top of the stand is 3/4" plywood, with a 6" ledge around the sides and back so I can kneel or stand to access the tank from above.

Here's the hole in the wall, drywalled (but not yet spackled or painted) and ready to receive the tank:


Moving the tank into place turned out to be... Challenging. I had three guys helping me, but the total weight of the tank was well over 400 pounds, and the thing is delicate and unwieldy. We could not lift the tank outright, but we could lift an end of it at a time, so we could lower the back out of the car, then lower the front. I'd tacked carpet onto sheets of OSB to make sleds, and those proved to be our salvation. We were able to get the tank from the one in the car onto one on the driveway, then walk that sheet over to the side door of the house, then put the one from the car as a ramp into the door, etc. It was quite a process.









In that second (top right) image, you can see the carpet ramp and the painted/unpainted shadows of the two steps I had to remove from the basement stairs to allow the tank to enter the building. Prior to ordering the tank I'd made a mockup with the same dimensions, and moved it from outside to inside, and dimensionally, it worked. However, I did not take the weight into account, and it wasn't possible to move the tank through the same motions when the real day came. Live and learn there. The third image (bottom left) is the tank sitting half on the ledge of the foundation wall, half on a 2x4 brace I'd made for just this purpose, as a staging step prior to the last push, getting the tank onto the stand (last picture).

I've since replaced the steps, here they are a day or two later:


Once the tank was physically in place, I began building the wall above the tank. I didn't want the wall to impede the lighting entering the tank, so I built the bottom of the wall at an angle, shown below in various stages of being built and drywalled:





Finishing the drywall was a massive pain in the butt, because there was a giant fish tank in the way! But it came along bit by bit, and finally came out ok!











Tuesday, August 9, 2011

Alton Brown's PID-controlled Flower Pot Smoker

I saw Alton Brown's segment on Brined Pulled Pork, and thought "That sure looks good, but I bet it'd be better if the temperature could be controlled to within .1 degrees C. I'm going to do that! Here are the source videos that go the ball rolling:




I then modified the plans I found over here: I thought it was silly to have all the electronics hanging above the water, and given the issues the author mentioned with heaters burning out, it made sense to have it be a separate box, with plugs to plug in whatever heating elements one might want.







One issue I had with the smoker was that the heating element's thermostat would actually cycle the thing on and off even when set on high, making the PID controller useless. So I took the heating plate apart, removed the thermostat, and that fixed things just fine.




Sunday, July 10, 2011

Closet Bathroom Completed

Just completed my mom's tiny 3'x4' half bath! Check out that sink, just about big enough for one hand at a time!

Thursday, July 7, 2011

iSCSI Windows 7 Boot (Using Synology DS1511+)


I recently purchased a Ceton InfiniTV 4 tuner card, not realizing at the time that it would not simply install into my existing SageTV PC... So I'm building out a new box, this time Core i3-based instead of Atom, but I still wanted to keep power consumption low. So a hard-drive-less machine was the way to go, backed by iSCSI provided by the Synology DS1511+


Install Windows 7 to physical drive
I couldn't get the windows installer to recognize the iSCSI drive I had created on my Synology NAS, it would boot, stay connected, and then setup wouldn't find any candidate disks. In any case, it works much easier to install to a physical disk, do all your updates, hack the registry, and then clone to iSCSI.

Tweak the registry so your network card can boot correctly
This was the special sauce that prevented Windows from booting for me on countless attempts: By default, the Light Weight Filter (LWF) is bound to all system NICs. If you install to an iSCSI drive, the setup program automatically unbinds this filter from the boot NIC, but since we've installed to disk, we've got to do it ourselves. I found the solution here, with a link to the MS article about it here.


  • Open HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ Class\{4D36E972-E325-11CE-BFC1-08002BE10318}
  • Find and open the subkey for the NIC (eg. 0007)
  • Open the subkey Linkage
  • Edit the value FilterList. Delete the line that refers to the LWF driver UUID {B70D6460-3635-4D42-B866-B8AB1A24454C}. In my case I had to delete the second line. Before:
{158B0494-2576-4DE5-9E32-98DB9E177DD8}-{B5F4D659-7DAA-4565-8E41-BE220ED60542}-0000
{158B0494-2576-4DE5-9E32-98DB9E177DD8}-{B70D6460-3635-4D42-B866-B8AB1A24454C}-0000
After:
{158B0494-2576-4DE5-9E32-98DB9E177DD8}-{B5F4D659-7DAA-4565-8E41-BE220ED60542}-0000

  • Clone the physical drive onto an iSCSI drive:


So now we've got a nice clean install, with the LWF disabled on our boot NIC, and we're going to mount the physical disk to another machine, mount the iSCSI drive to the same machine, and use 'dd' to clone the source to the target. I'm on a Mac, though Linux would be similar. I used the GlobalSAN iSCSI Initiator for OSX (available after some hoop-jumping from here)
Determine your device names:
$ diskutil list
will give you something like this:
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *500.1 GB disk0
1: Windows_NTFS System Reserved 104.9 MB disk0s1
2: Windows_NTFS 104.8 GB disk0s2
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *160.0 GB disk2
1: EFI 209.7 MB disk2s1
2: Apple_HFS System 159.7 GB disk2s2
/dev/disk3
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *160.0 GB disk3
1: Apple_HFS User 160.0 GB disk3s1
/dev/disk4
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *107.4 GB disk4


So in this case, /dev/disk0 is my source drive, and /dev/disk4 is my target iSCSI drive. I want to clone 0->4, so dd is my friend:

$ sudo dd if=/dev/disk0 of=/dev/disk4 bs=64k
And then just wait. It can take a long time. The bs=64k option will make it go faster. I got around 10MB/sec from a local disk to a remote iSCSI disk over a gbit connection. To force dd to give you an update on its progress, you can figure out its pid and then send a SIGINFO to it:

$ ps -ef|grep dd
0 34 1 0 0:03.10 ?? 0:09.20 /usr/libexec/hidd
0 3137 713 0 1:22.63 ttys000 1:22.86 dd if=/dev/disk0 of=/dev/disk4 bs=64k
501 3181 780 0 0:00.00 ttys001 0:00.00 grep dd
$ sudo kill -SIGINFO 3137
which will print something like:
102872+0 records in
102871+0 records out
6741753856 bytes transferred in 640.615671 secs (10523867 bytes/sec)

BIG FAT UPDATE:

I got all this working, installed SageTV, and it worked great... Except that bluray playback stuttered like crazy, as if the system was loading the stream from the remote disk, writing it to local disk (which was iSCSI, so was remote), reading again from local, then sending the stream to the client... In any case, it didn't work correctly, so I gave up and put a tiny hard drive into the box. Lame.
Related Posts Plugin for WordPress, Blogger...