Flying multi-rotor (particularly quadcopter) radio-controlled vehicles is a lot of fun and you can do amazing things with them, in particular some beautiful aerial photography. While most r/c pilots do this by looking up at their craft from whatever their distance happens to be at the moment, a growing number of r/c enthusiasts are using FPV (first person view) to remotely control their vehicles. By using a tiny video camera with an attached transmitter the pilot can virtually fly their quadcopter as though they were a miniature pilot located inside it. Aside from just being a lot of fun, this perspective makes it possible to fly over far longer distances than one could by merely looking at the craft from the ground. The equipment to do FPV is not cheap, however, with decent entry-level setups of camera, transmitter, and receiver costing $1,000. And so I couldn't help but wonder why no one talks about using the ubiquitous smart cell phone with its included cameras as an alternative solution. The cell phone has a number of advantages over a typical FPV setup, namely that with the right apps running it can record its own video, it can operate over almost infinite distance with its use of cellular networks for data transmission, it can operate with very high bandwidth over 4G or wifi (though very limited distance with wifi), it can log its own flight path by recording its GPS positions, and if it crashes it can transmit its location to make recovery easy. With all these advantages in a package that can cost just $100 it's hard to imagine it not used by everyone!
From what I understand in talking to a few people, the issue comes down to video quality, latency, and the possibility that the connection just drops out. Few people want to risk their $1,500 and up r/c darling on Sprint's or AT&T's potentially spotty and variably efficient cell coverage. And the current video streaming software available as apps for the key FPV feature are not intended for mission critical, near real time transmission. Imagine trying to drive a car or pilot a plane with Skype. You might do just fine for a while, as long as sender and receiver have good signals but if either gets into trouble the video suddenly becomes erratic, delayed, and pictured objects become indistinct and it would be impossible to make critical operating decisions based on that.
Given the enormous complexities being overcome daily by dedicated enthusiasts of r/c flying this seems like a challenge that can fairly easily be overcome. One of the key pieces of software this community has developed and continually refined is the "flight controller", or the software which takes signals from the pilot's transmitter (the device with the joysticks that he uses to control the vehicle) and turns those into adjustments to motors and control surfaces. Many flight controllers now even come with amazingly sophisticated auto pilot features, like the ability to hover motionless in one spot (despite winds, etc.), to fly home in the event that signal is lost or a fault develops, to automatically land if batteries are low, and even to navigate on its own, flying between coordinates previously supplied to it. If all that can be achieved surely the FPV via cell phone problem can be overcome!
There are three problems that need to be addressed: loss of signal, degradation of signal, and overall quality of video.
Loss of video signal is clearly a very real problem and no amount of clever software can make up for a lack of inputs from the pilot, but such situations can be appropriately handled to minimize negative impact. As I mentioned above, many flight controllers now include safety modes such as hover, automatic return home, and automatic landing. The pilot with such an onboard autopilot can at the flick of a switch tell his craft to do the appropriate thing, presumably either hovering to wait and see if signal is restored or begin to return home at least enough to regain the signal. Also, the FPV app in the cell phone can be optimized to recover quickly from any network failure (once the underlying data connection is restored). And if this was to all develop and become more sophisticated clearly an integration of the FPV app and the onboard flight controller would be ideal, allowing the FPV app to command auto pilot features directly in the event of network loss as well as be the means of transmitting flight controller telemetry to the ground during routine flight (and perhaps controlling other features of the flight controller as well).
Degradation of signal and overall quality of video are related problems. The key here is, I believe, to develop a video codec or perhaps just an application of existing codecs that focuses on the critical visual data FPV pilots need. While users of video streaming applications like Skype want overall picture quality to be good, an FPV pilot is primarily focused on visual information related to the orientation of their craft relative to ground, potential physical obstacles in their path, and anything necessary to continue whatever flight motion they were executing. If the signal degrades and there is less bandwidth over which to send video it's most important that the critical parts of the pilot's picture continue to appear in near real time! How exactly one extracts or prioritizes those features I am not sure at this point, but I am fairly certain it's an achievable goal. One need only think of situations they have been in when their own vision has degraded due to environmental factors like darkness, fog, smoke, etc. to realize that our brains can seize upon very small and sometimes indistinct cues to maintain orientation. An algorithm could be developed to prioritize the sending of lesser quality video data related to horizon and to nearby obstacles (elements of the frame which the algorithm have noted move more relative to the overall background). And with the ongoing development in the areas of computers interpreting images to extract features like faces, eye positions, smiles, body positions, etc. it should present little challenge to have the FPV app be able to maintain an awareness of very crude items like the horizon and those objects most likely to represent near obstacles. This specific data could even be transmitted using ultra-low bandwidth as mere vector data rather than actual color images, in other words allowing the second receiving cell phone app to reconstruct the approximate figures overlapping whatever video may or may not be coming in.
Hopefully these things will see development in the near future because it can hardly be argued that the potential here is huge.
I recently bought the Blade mQX micro quadcopter and it is absolutely amazing! If you think it looks fun you'd be a fool not to buy one and see just how much. For $129 (Bind-n-Fly) or $169 (Ready to Fly) you just can't go wrong.
The mQX is super responsive, acrobatic, and (near as I can tell) indestructible.
This is my very first quad and very first "real" r/c anything; I've only owned two or three of those cheap, indestructible indoor foam helicopters. Stepping up to the mQX was definitely not easy, but neither was it too great a step to make. If I can do it, you can do it too! But I would ***strongly*** recommend buying the Phoenix R/C simulator and flying the Gaui 330X model (that's the only simulator I've seen with a quad model in it). I spent hours flying the Gaui in the balloon popping trainer of the Phoenix simulator and it made a profound difference on my flying ability. I had serious doubts that a simulator could help with real world flying, especially given that I was flying a non-mQX model, but was happily proven completely wrong. My real world flying made a quantum leap after a few nights of simulator flying
One of the most impressive things about the mQX is how inconceivably strong it is. In my early flights especially I would get disoriented and send the mQX screaming into the ground and it sustained absolutely no lasting damage (the canopy was destroyed and I had to bend a propeller blade back to straight a couple times but that's it).
And, coolest of all, the mQX is powerful enough to mount any of the tiny 808 cameras. I put a jumbo keychain 1080p camera on it and it seemed to fly as responsively as it always did, and for seemingly almost as long as it always did. It amazes me that I could have a HD aerial camera platform for under $200. (Obviously it's no $1,000 stabilized system, but on a very calm day with a good pilot consciously flying for a particular shot, it's stunning!)
I don't usually bother to evangelize a product, but this one deserves it!
If you're interested, check out my beginner's guide to flying r/c helicopters, planes, or quadcopters.
Now in my early post-Lytro days I've been wondering how I could achieve the same effect with better results, not wanting to wait the years it might take for them to come up with a suitable next generation model. Lytro's only real selling point at this moment is it's ability to take "living pictures" (their parlance), which really just means a photo which is interactive in as much as you can focus on different items in the picture by tapping those items. The technology may be capable of quite a bit more, but that's all it currently delivers, and it delivers that with poor resolution, graininess, and restrictive requirements on lighting/action.
Living Pictures without Lytro
Why couldn't I achieve the exact same effect with far better results using my existing digital camera? I could, and did! Here's my "living picture" proof, using just an ordinary digital camera and a bit of human assistance.
No Lytro was required for this "living picture", just an ordinary digital camera (in this case a Sony NEX 5). Click on different objects in this scene to change focus depth!
...and now for Lytro's version...
Lytro's "living picture"! Click on different objects in this scene to change focus depth!
It doesn't take an expert in photo analysis to see that the non-Lytro picture looks much better: sharper, higher resolution, less grainy, and more realistic colors.
Faking Lytro Manually
Making Cameras Support Lytro-Like Effects
Many cameras these days have a feature called "exposure bracketing" which takes reacts to a shutter button press by taking a series of pictures at different exposure settings. You then review the photos later and determine which photo looked the best. Why then could you not have a "focus bracketing" feature which does the same thing but with focus? The simplest approach would be to take multiple photos as the camera automatically walks the focus back from infinity to macro taking as many photos as necessary to achieve a desirable effect, perhaps as few as 5 or 10 would be needed to achieve a reasonable effect; with the aperture appropriately set any given picture's depth of field is wide enough to allow significant ranges to be sharply focused. You would then need some mechanism for assigning clickable regions to the photo frames which happened to be in focus in that region. This would likely be a fairly trivial software problem to solve. All of this could be done with minimal camera intelligence, since it would just be varying focus distance in a fixed manner. A far better but slightly more complicated solution would be to do automatic, intelligent focus bracketing using the camera's built-in autofocus system. Many cameras (particularly in phones) allow you to select a region of the scene which should be in focus. It would thus be easy for the camera to break down the scene into a search grid it would scan looking for objects upon which to focus, taking a single picture at each focus depth (one photo per range, according to the depth of field). The camera could record which grid location contained an object at a certain focal distance away, this being usable later to relate clicks on an image to a particular focused frame. The advantage of this approach is that it might be far quicker and more efficient, needing only as many frames as a scene objects' depths require. A scene which had two people in the foreground hugging and a church in the background would probably require just two photos to make a "living picture", people around a table at a birthday table with a cake in the center and a bounce house in the background may require 5 or 6 photos to make a Lytro-like image.
Working with Motion
These approaches share one significant weakness which is the fact that using multiple sequentially taken images negates the ability to capture any action-oriented scenes. While modern digital cameras take rapid-fire photos, and those with exposure bracketing take three or so shots in a half second, that's certainly slow enough to make any significant movement within the scene noticeable when switching between frames. Still, as action is easily blurred with the first generation Lytro, this hardly seems any sort of argument against this alternate approach. An interesting solution to this problem and that of the inability to easily alter most existing camera's firmware, would be to use a replacement lens that split a single digital frame into multiple differently focused reproductions of the scene. Just as I use a Loreo 3-D lens to merge the images captured by two lenses onto one digital frame, so to could one produce a system that would use four or perhaps nine lenses to capture one instant onto one digital frame through small lenses focused at slightly different depths. Software could then easily split apart the single digital image into its component frames and do an easy focus analysis to determine what regions in each were in focus, with viewer software showing those as appropriate in response to touch. The limitations of this approach would be related to the increased lighting requirements (or decreased action) as a result of the smaller lens, the expected poorer quality of each lens (related to cost and it being more a novelty manufacture than embraced by lens giants), and the reduced resolution (as your effective megapixel image would be the original value divided by the number of lenses within the lens). Many stereo photographer setups coordinate two cameras to take their photos in concert, getting around all these issues, which you could also do to solve this problem, though I can imagine nothing more cumbersome.
The Lomo Oktomat as seen on Lomography has eight lenses which it uses to 2.5 seconds of motion across a single analog film frame it has divided into 8 regions. The same multi-lens approach but used simultaneously, with each lens focused slightly differently, could capture motion with Lytro-like aesthetics.
Focus Bracketing leads to Focus Stacking (Hyperfocus)
As I began to look into the practicality of these approaches I was pleased to discover that "focus bracketing" was being done manually, though with an intriguingly different goal. Rather than produce a living picture where you can focus on different elements in a scene, a process called focus stacking is used to take and then (using software) merge photos taken at different focus settings to produce a single image in which everything in the scene is in focus. The software involved analyses each photograph in the stack, each of the identical scene where only the focus is varied, and uses the regions of each photo which are in focus to produce the combined image in which everything is in focus. This approach produces very impressive results. The only limitations to this system is the requirement for a still scene, and the strong recommendation (if not requirement) that you use a tripod when taking your shots so as little varies as possible.
Series of images demonstrating a 6 image focus bracket of a Tachinid fly. First two images illustrate typical DOF of a single image at f/10 while the third image is the composite of 6 images. From Focus Stacking entry on Wikipedia.
The aesthetic of a photo in which most things are in focus is quiet different from one in which only those things you select are in focus, but from a technical standpoint they are quite similar, since both situations require one possess the data pertaining to every element in a scene being in focus. And a viewer could (and likely would) be given the option of viewing such a photo as he/she wished. Do they want to see the photo traditionally (one, non-interactive focus point), as a "living picture" where they can choose the object in focus, or as a photo in which everything is in focus?
Focus Bracketing Available Today on your Canon PowerShot
A little further research led me to find a rather intriguing ability to add automatic focus bracketing to an entire range of camera models, via the Canon Hack Development Kit (CHDK). CHDK allows you to safely, temporarily use a highly configurable and extensible alternative firmware in your Canon PowerShot. And users have used this to add focus bracketing for the purposes of focus stacking, and included detailed instructions on just how you can do it, too.
Coming Soon as an iPhone & Android Camera App
This integration of camera and software is a natural fit for an iPhone and Android app, where the app can control the capturing of the image and intelligent variation of focus and then do the simple post-processing to make the image click-focus-able. While I haven't seen such an app, I'm sure it'll come soon. I'd write it myself if I had the time.
Until the Future Comes
The point is that until Lytro demonstrates just what can be done with a light field camera, beyond merely creating a low-resolution "living picture", there's really no technical justification for placing the technology in people's hands when the same problem could be solved as effectively with traditional digital cameras. If demand existed (and perhaps it will come) for this image experience, no light fields need apply. Hopefully traditional digital camera companies will see the aesthetic value and include support in their firmware (for intelligent focus bracketing) and co-ordinated desktop software, app developers will launch good living picture capturing app cameras, and hopefully Lytro will demonstrate the additional merits of capturing and reproducing images from light fields.
There are few musicians I react to quite like I do Andrew Bird. The notes coming out of his instruments I enjoy quite a lot, but his lyrics I find distractingly infuriating. His lyrics remind me of the comments a teacher's pet might make after being called upon in a high school physics class. His goal is to convince everyone, and probably first and foremost himself, that he's smart. Andrew Bird's lyrics drip with this unnatural self-congratulatory alleged cleverness, weaving supposedly big words with arcane references. He reminds me a lot of the columnist George Will, who seems to feel compelled to include in every column at least 5 - 10 words no ordinary citizen of Earth has heard within their lifetime. We get it, you guys want us to think you are very smart! Congratulations, someone give them a f-cking prize. Now, please get on with the business of being understandable and understood.
For some reason Andrew Bird reminds me of San Francisco. I've only visited a few times, and while I loved it, I couldn't help but feel that the city is a whole is just a bunch of hipster people trying to out-cool each other while everyone else is left to do the real work of running the nation while they smile and take all the credit (see Apple and iEverything, Google and gEverything).
Oh, and a similar-ish musician who I think does it just right, being a musical super genius without trying to beat you over the head with it, see Beirut.
I pre-ordered the Lytro back in October, excited by the stunning live demos on their site. A camera that captures a focus-less light field and allows you to do the focal interpretation later was just too amazing not to buy. The potential and real advantages were immediately obvious: stunning "live" photos, potential for effective single lens 3-D capture, potential for faster picture taking with no need to wait for auto focus, no out of focus pictures, ability to take better pictures in worse light conditions, ability to capture subtler image detail across the objects photographed.
My Lytro was one of the first to be shipped and it arrived just three days ago. Sadly Lytro's absolute requirement that you have a Mac with version 10.6.6 or higher to view your photos, it wasn't until today that I could actually try it out. My initial excitement that had become frustration rebounded at the chance to see just what this camera could do! Sadly upon viewing the photos I'd taken it beat a hasty retreat.
The Lytro is cool, but I cannot imagine myself actually using this thing in my daily life. It can take amazing pictures, as proven by the stunning live demos on the Lytro site. But I now appreciate just how many pictures must have been sifted through to pick out those hypnotically good ones. If you've got the time and the artistic inclination I have no doubt you can and will do amazing things, but the vast majority of my shots look awful.
Here's what I discovered:
- The camera's effective resolution is low! Your pictures are 1024 x 1024.
- The lens requires a lot of light*! Unless conditions are right your images will be extremely grainy.
- Everything must be still*! Motion, both your own and other people's, must be minimized otherwise your photo will likely be blurry.
- Mac and only Mac! Unless you normally use a Mac daily (which I don't) you're just going to be annoyed by the absolute necessity of the Mac software. You cannot view images or export images without using the Mac software.
* Obviously capturing a scene sharply involves a trade-off between light and motion; less light is fine if all is still, and more motion is fine if there is enough light. I'm just saying that in "ordinary" life situations where people move, where light can be low, and where your hand isn't stabilized, this camera can be trouble.
My experience of my Lytro has, therefore, been pretty disappointing. I imagined myself taking this camera with me everywhere, eager to capture "living pictures" to use their lingo, freezing moments in a manipulatable form. But now I imagine carrying this thing around would only breed frustration as I could never rely on images I took coming out right. Some would stun but all too many moments would be unenjoyably grainy and blurry. As it stands I'm better off with the clearer dimensional realities captured by my ever-present Evo 3-D and where appropriate my Sony NEX 5.
And so my Lytro is now up for sale on eBay. If it were more amazing or much cheaper I'd keep it for those special moments where I could afford to experiment, but at $499 I don't want to be a guinea pig.
My bleeding edge Lytro light-field camera arrived today and thus far it's been an awful experience! And I haven't even used the camera yet! So what's gone so wrong?
- The packaging is scary bad! It's designed to be like a watch box or something where you lift off the bulk of the box to reveal the beauty of the Lytro camera. But unlike a watch box the Lytro isn't secured to its base, so if you happen to pull off the top while the box is at an angle the Lytro will come tumbling out, as mine did! By some miracle I happened to be sitting on a soft pile carpeted floor at the time, and my Lytro fell unharmed a mere 2 inches. I have to believe others aren't finding themselves as lucky. I pity those poor folks who've waited for months to get this thing and then see it damaged before they even got a chance to turn it on.
- A huge shock was to discover upon connecting it to my PC that you you cannot even view or export any images without Mac! The official notice merely says that Windows support will be added in 2012. I did not realize what this meant when I ordered the camera, nor can I conceive of how this is even possible. Every camera I've ever owned can be used on any computer I've ever owned. Sure, some cameras include custom OS-specific software for managing photos, uploading firmware, etc. but the software was always optional. You could always just plug in a USB cable and view/copy the photos, whether you were running Windows, Mac OS X or Linux. But not so with Lytro! Unless you have a Mac running OS X 10.6.6 or higher your photos will never leave your camera! There's not even an HDMI out. Surely the entire point of having a camera is to take pictures you can show others. If they have some means to share Lytro photos, which includes the image processing necessary, why on Earth do they not allow you to upload the raw files? I really think they should have done a better explaining this limitation as it defies all logic and historical precedent.
- I happened to have an old Apple Mini from my brief foray into iPhone app development a few years ago. I dug it out, hooked it up, and discovered that the Lytro software requires 10.6.6 (Snow Leopard or Lion), and my Mini was 10.5 (Leopard)... I figured I'd be able to easily upgrade online, but nope! Snow Leopard (10.6) can only be ordered as a physical DVD. And, to make things even more frustrating, Lytro software requires 2 GB memory, whereas my stock Mini has 512 MB. Ah well, I figured I'd just run to Best Buy or the Apple Store buy what I needed and be able to use my Lytro by nightfall. Nope! No shops sell OS X 10.6, not even the Apple store! So now I've got to wait at least two days for my Amazon orders to arrive.
Ah well... My Lytro day one experience was a rotten one!
I've always been a big fan of Amazon, not only have they defined the best of the best in cutting edge, consumer-focused internet commerce, but they've developed marvelously innovative tangential products and services (e.g., mechanical turk, Amazon S3 and Elastic Cloud servers, and their Kindle e-reader. So it is against that legacy of fondness and respect that I discovered my first real beef with Amazon. Last night I discovered that Amazon now sells Kindle Edition books which do not actually work on the Kindle devices they sell. And, as if that weren't infuriating enough, they do almost nothing to disclose this unexpected, monster caveat on their kindle edition product pages. The key phrase to watch for is "Print Replica" which indicates the e-book is merely a page-by-page scan of the original book, which for user experience reasons (not technical reasons) they refuse to let you download to your Amazon Kindle device. The only devices which are compatible with these "Print Replica" Kindle Editions are desktop PCs and an iPad running the Kindle app. It is not that I don't understand the logic behind this decision, I do, but I see it as a dangerously frustrating precident. I can no longer feel all that safe buying a Kindle Edition of any book. If they are willing to sell this incompatible version giving as the reason its incompatible format, what is to stop them from selling another Kindle Edition which is incompatible because of some other feature such as embedded interactivity or video clips? Making matters worse there is no text anywhere which truly discloses this huge issue. The page does indicate the Kindle Edition is compatible with PC, Mac, and iPad but that is a very long way from saying it is NOT compatible with their own Kindle devices, which is our default assumption. Further frustrating the issue, there is no way to get a refund via the "actions" menu of the Manage Your Kindle page, as the help documents states. I contacted support only to have all this confirmed. They have as yet not refunded the item, only telling me to download the PC version of the software. To see an example of an incompatible Kindle Edition, check out Campbell Biology.
If you're like me you're a decent law-abiding citizen who feels that privacy is a fundamental right, not merely something we enjoyed by default because technology had not yet found a way to eliminate it. Fortuntely, technology brings us both problems and solutions. One such solution is JonDo, a popular and somewhat proven anonymous proxy service. This article will show you how to create a secure, anonymous browsing platform to ensure your right to free thought and inquiry preserved.
Create the Virtual Machine
First we need to take the ISO of the JonDo Live CD and turn it into a virtual machine. I'll walk you through those steps. It's important to note that we are not creating a persistent install here, that's beyond the scope of this article and with JonDo still being beta I'm not sure I'd recommend it. The install we are building will let you make changes to the file system but those changes would be lost when the virtual machine is rebooted. We're going to cheat a little and use VMware's snapshot feature to lock in any file system changes we want, and use VMware's host-guest shared folders to let us make some file system changes effectively persistent. But all that is to come after we do the basics!
- Download the latest JonDo Live CD
- Verify the hash of the file you downloaded with the MD5 hash listed on the download page. I recommend Hash Tab for Windows or Mac users.
- Create a new virtual machine in VMware.
- Choose Typical
- Set the "Installer disc image file (iso)" as the JonDo Live ISO file you downloaded. Click Next.
- Choose Linux as the guest operating system and Debian 5 as the version. Click Next.
- Choose the name of your virtual machine (e.g., "JonDo Live")
- Choose the location where you want the files to be. Click Next.
- Choose a small maximum disk size, I choose 1 GB. With my current setup I don't even use it. Click Next.
- Click "Customize Hardware".
- I increased the memory to 1 GB
- I added a second CD ROM drive, defined as an ISO pointing to the VMware Tools (e.g., C:\Program Files (x86)\VMware\VMware Workstation\linux.iso (if you do this you may need to set the drive as initially not connected otherwise VMware might try to boot off this cdrom device instead of the one with the live image, depending on how VMware orders the drives, you will then just need to connect the drive from the VMware lower toolbar once you've booted into the OS)
- I removed the floppy drive
- I set the Network Adapter as Bridged with replicate physical network connection state.
- After leaving the customize hardware screen, uncheck the power on after finishing option.
- (Optional) I now "Edit Virtual Machine Settings" and on the Options tab I go to "Shared Folders" and create a share which is "Always enabled"; I called my share "shared". Reminder, this Live CD VM is not a persistent install, so this is where you can keep files/settings/etc. you don't want to risk losing.
- Power on this Virtual Machine
- When you get to the boot menu choose the "486" option (not failsafe, not 686, and not anything with PAE)
- When you boot it may say you have no network connection, click the network icon in the task bar and choose "Auto Ethernet". You should now have a network connection.
Begin Using JonDo
Your JonDo Live VMware virtual machine is now ready to use!
Before you go and do a lot of anonymous browsing you really should install the VMware Tools, it will greatly enhance your overall experience of this virtual JonDo machine.
Install VMware Tools (optional)
You are perfectly free at this point to use your JonDo Live virtual machine, but the beauty of VMware is its ability to allow you to flit between host and guest operating systems, effortlessly moving your mouse, sharing your clipboard, exchanging files, and resizing the display.
These steps are a little annoying but a few hours of my working through the issues will hopefully make it easy enough for you. The reason we can't just directly install the VMware Tools is because it has dependencies which are not fulfilled by the JonDo Live image as delivered.
- Go to a terminal window (click the terminal icon on the bottom task bar).
- Type "sudo bash" to get a root shell.
- Type "apt-get install make"
- Type "apt-get install gcc-4.1"
- Type "apt-get install linux-headers-`uname -r`". If you get the error "can't find any package" then the linux headers for your kernel version may no longer be in the repository, you'll need to find a repository that has it and add that to the /etc/apt/sources.list. If you got an error related to not finding something needed for the install then run "apt-get update" to update its list of packages and re-run the install of linux headers. (See below for more info if you are having trouble with finding the appropriate kernel header sources.)
- Type "apt-get install psmisc"
- On the Desktop right click the "VMware Tools" CD icon and select "Mount". Its contents will now be located as "/media/VMware Tools"
- Type "cp /media/VMware Tools/VMwareTools-8.4.8-491717.tar.gz /tmp" to copy the tools archive to the /tmp directory (modify the file name as needed to accommodate future versions)
- Type "cd /tmp"
- Type "gunzip VMwareTools-8.4.8-491717.tar.gz"
- Type "tar xvf VMwareTools-8.4.8-491717.tar"
- Type "cd VMwareTools-8.4.8-491717"
- Type "./vmware-install.pl" to begin the installer
- Choose the defaults for everything they ask (just hit enter/return each time)
- When it is finished type "/usr/bin/vmware-user" to start up the VMware Tools
Congratulations! You now have the VMware Tools installed.
Your shared folder is available inside the JonDo VM at "/mnt/hgfs/shared".
Additional Kernel Header Sources
On a recent update of my JonDo Live environment I found that the kernel headers were removed from the default repository and I couldn't seem to find it anywhere... After some hours I figured out how to solve the problem. You can manually find the Debian packages for linux headers and then manually install them. The site which has these archived repositories http://snapshot.debian.org, which you can use to see into the past by specifying a date/time combination to navigate the archive.
The way I located the files I needed probably isn't the best, but here's what I did. First, I navigate to the root of the dated repository. For example, http://snapshot.debian.org/archive/debian/20120806T041225Z/ shows the repository state on August 6th, 2012. This date was soon after the release of the kernel version I had (found with uname -a). There are two Debian packages for Linux headers, the "common" and then the architecture specific one. You will need to manually download both of those files and then manually install them.
First I found the Packages.bz2 file which lists all the various packages. You'll need to download, uncompress, and view this file. My dated one was located here: http://snapshot.debian.org/archive/debian/20120806T041225Z/dists/wheezy/main/binary-i386/Packages.bz2. Manually search that file for a package called linux-headers-3.2.0-3-486 (substitute your `uname -r` entry for the OS version I mention). You will see a path there that corresponds to a location off the root (e.g., http://snapshot.debian.org/archive/debian/20120806T041225Z/). That package has a dependency on the "common" header library, so we now need to find that one. Looking again in Packages.bz2 I found the entry for "linux-headers-3.2.0-3-common" (modify for the version you have) and then download the package from the location indicated. Once you have them downloaded you manually install them. Install each by running the "dpkg -i PACKAGENAME.DEB" command, start with the "common" package.
Once you install both packages you can proceed to step 6 above!
Making your Environment Persistent (Optional)
After you've gotten everything configured, including importing your existing JonDo account info or creating your premium account, you want to save the configuration work you've done so you won't lose it if the virtual machine reboots. All you need to do is use the "VM" menu, click the "Snapshot" menu item, then choose "Take Snapshot". As you likely know, this allows you to return to this exact state of the machine at any future time, complete with the file system, memory, display, etc. exactly as it was at this moment. Instead of booting or rebooting your JonDo VM you can just revert to this snapshot. Any files you wish to be persistent and not see reverted or erased you should put in the shared folder you could have optionally created. For example, I keep things like downloaded files, bookmarks, my JonDo exported credentials, etc. in this shared location (e.g., /mnt/hgfs/shared).
Securing your Data Locally (Optional)
To further ensure your privacy you can (and probably should) make sure your virtual machine files (the files VMware uses to store your VM data) are encrypted, either the files themselves (using Windows built-in encryption option) or, better still, by placing the entire directory inside an encrypted virtual drive, with such products as the free TrueCrypt. Be aware, however, that when you use your virtual machine its RAM will be held in your real, physical RAM and as such it can and will be stored in the host's Windows pagefile.sys, where it could potentially be recovered much later, having been written to disk. The solution in this case is to encrypt your entire system disk with TrueCrypt, such that the swap file is also encrypted or to use an encryption product like Jetico's container encryption which includes swap file encryption as an option.
It is sad that it's come to this, that we honorable, law-abiding citizens must defend ourselves against the unreasonable invasion of our thoughts and study of our activities, but wishing it was not so accomplishes little. Hopefully this little guide will have helped you take back some of your privacy.
I was sad to hear about Steve Jobs death, but not as others have been. Most call him a visionary genius, but to me he was little more than a benevolent dictator leading a technology cult. The awe Apple seems to create is not through revolutionary features but through the stripping out of function in deference to form. Apple reduces every complex problem down to an overly simplified interface, satisfying only the least common denominator crowd, hipster aesthetic purists, and a small few who either break the ties that bind their device or mindfully accept technology on Apple's terms. Apple and Jobs have been adept at making the old new again, at creating the perception that they intended what long had been, albeit inelegantly.
I had more fully featured MP3 players years before there was an iPod. I had smarter phones years before there was an iPhone. I had a more capable tablet years before there was an iPad. I had more powerful multitasking personal computers years before it was possible with a Mac. Apple did not come up with these ideas nor the technology that realized them, all they did was package other people's invention in a form that ensured popularity through the careful crafting of a limiting experience. And in that capacity Apple has excelled; their products have deserved their reputation of being easier for novices to use and better at their limited tasks. Tightly controlling what your users are allowed to do, what your software is allowed to do, and what hardware they are allowed to do it on has a magnificent impact on ease of use and stability, ask any Windows or Linux/FreeBSD user who plays in a less regulated ecosystem. And yet to my perpetual surprise, cultural perception seems to credit Apple with being the father and mother of all these technological wonders: the smart phone, the MP3 player, the tablet. Steve Jobs' legacy seems not about invention or innovation but marketing, selling the people on the idea that less is more, that their way is the way, and ultimately (if unintentionally) that they were there first.
I don't like Apple, and I never liked Steve Jobs, but I, too, mourn his untimely death, for his passing is a horrible reminder that though our understanding and mastery of the universe has grown by leaps and bounds over the last few thousand years, all the money in the world cannot linger us many more days here on this good Earth. Steve Jobs had literal access to billions, literal access to every master of every scientific, technological, and medical arena here on Earth, and yet he was little more protected from the vagaries of fate than the least of us. How so very horrible and frightening that is, that in the end it mattered not the man he had become, but the every man he remained.
Having renewed my interest in airguns (i.e., bb guns) I realized how cool it would be to do away with the costly, static paper targets and have a cheap, dynamic digital target to shoot at. This is the idea I'm currently prototyping, it's a large bb/pellet trap which uses a pico projector to show targets displayed via computer. A large touch pad will register the strikes and be able to instantly provide visual feedback and, with a bit more coding, score keeping/etc. The large paper roll is an optional feature I'm trying out, thinking that rather than require the material deflecting the bb/pellet shot to remain pristine, showing no marks from all the hits, I can instead use disposable paper as the reflective surface for the pico projector, and merely pull up the paper when it's full of holes. The trick will be to have just the right balance of materials in front of the touch screen, to allow the bb/pellet impact to be reduced to a mere touch, instead of a touchpad shattering blow; I'm just waiting for the touch pad to be delivered for this phase of testing to begin.
If you have any thoughts/suggestions, let me know!
Today I spent an hour testing the strength and resiliency of the various materials I gathered by shooting BBs against them with both my Uramax Walther CP99 pistol and my Drozd Blackbird maching gun. The results were surprising, but not shocking.
The materials I had gathered included:
- Fiskers Self-Healing Cutting Board
- Duraplex Extra Strength Acrylic Sheet 0.08 inch ("50x stronger than glass")
- Lexan Polycarbonate 0.093 inch ("250x stronger than glass")
- Thick Rubber-ish Floor Mat
- Not-As-Thick Rubber-ish Floor Mat
- No-Name Kitchen Cutting Sheets
I did all my shooting from about 10 meters.
Impact Survival of Material Combinations
The first thing I discovered was how much faster my Blackbird fires BBs than my CP99. Every material withstood the CP99 shots with no significant damage. The worst anything showed was a slight dent or scratch. This led me to falsely imagine that I'd picked great materials and that I wasn't going to have any trouble. I redid the experiment with my Drozd only to find that it was able to punch a hole through every single material I used except the Lexan sheet, in which it simply left a minor dent. The next step was to try to combine materials, knowing that much of the damage being done was because the material being shot had nothing firm behind it to reduce the distortion of the material.
The goal of the material combinations I was playing with is to come up with something that can withstand single or sustained bb fire (from my pistol or bb gun) allowing the transfer of enough energy to trigger the touch screen without damaging the glass touch screen and without the protective materials sustaining damage themselves. With the touch screen costing almost $200, I can ill afford to include it in the tests until I am fairly certain it will be completely undamaged. I'd rather err on the side of caution initially and struggle to have a "touch" detected than have it register only one touch before it shatters into a thousand pieces.
Because the touch pad is glass I suspect there are three primary things I need to worry about. The most obvious is excess physical distortion, having a BB cause the pane of glass to be deflected beyond its breaking point. I assume there is also a shock force to worry about, that even without being hugely deflected the glass could be shattered by the sudden, brief introduction of a dislocating wave of mechanical energy. And finally I assume that the two previous items could combine in a sense by the latter element introducing small fractures that could grow as a result of the former.
The first step is to find material combinations which stop the bbs without being damaged or worn down. The next step would be to narrow those results down to a combination which appeared to impart just the right amount of "touch" to an object behind them.
The real puzzler is trying to figure out how to ultimately test my best guess material combinations without risking the touch pad. To this end I gathered some scrap window pane glass from a local window installation shop.
I made a mockup in cardboard to check the model in the real world. Most importantly I need to know if the ShowWX+ laser pico projector would be bright enough with the current design and its blocking of ambient light. Sadly the results were not encouraging. Even with a cloudy sky an hour or two away from sunset the projected image is extremely washed out and difficult to see. I added some additional cardboard to further reduce the ambient light, and while that did made a difference I don't think it was enough to justify the use of the ShowWX+. It's inadequate brightness, combined with its horrible green ghosting, made worse by its curious tech support mechanism (fill out a contact form which has no place to indicate the problem you are having and just says you'll hear something in a couple of days), and lack of user community forums, mean it'll be returned in favor of some other, better product; what that is, I'm not yet sure.
[more to come]