Wednesday, July 23, 2014

X-15 Crash Site in Mojave Desert

I took a quick detour and visited the X-15 crash site in the Mojave Desert just North of Johanasburg, CA. I have heard about the site, but never actually been there. It was a quick trip down a dirt road to the site. A little rocky but I was able to get there in a small car without any isues.

The original memorial was placed by the Eagle Scout Leadership Service Project on May 8th 2004. Over recent years, the site has improved with a full panel of information, and an American Flag in tribute of the fallen pilot (Maj Michael Adams)

The scouts did a great job on the original memorial, but more has been added over the years. The area is fenced off in traditional BLM style, a BLM Information Panel has been erected with a Flag Pole on the back, and a log book stand is available. There is a lot of information at the site that must have taken quite a bit of work to gather and compile into this wonderful presentation. The original marker is sitting where the nose of the X-15 came to a rest, and it is facing south because that was the direction Maj Adams was flying on impact.



These are the information panels at the memorial. Click to get a bigger veiw.
Full Image Download:
Left Panel-----------Center Panel-----------Right Panel
 
The Last Mission
At 10:30:07 AM PST on 15 Nov. 1967, Adams commanded launch release from the B-52 mothership. Falling away from the pylon, Mike immediately moved the XLR-99 rocket engine throttle out of the idle detent position, smoothly and quickly pushing the X-15 to 100 percent thrust. Four seconds later NASA 1 (X-15 Mission Control) radioed "Rog, we got a good light here Mike." Adams did not respond o further radio calls for nearly two minutes.
     Adams angled upward through the stratosphere, heading to the top of his ballistic arc in the mesosphere. When Mike passed through 140,000 feet, with eighty-two seconds on the mission clock, he delayed the XLR-99 shutdown four seconds longer than planned. The extra seconds imparted an additional velocity of 136 feet per second, causing an overshoot in altitude of 16,000 feet.
     This configuration of X-15 no. 3 had two six-foot-long pods mounted to the tip of each wing. On the left were experiments which opened at high altitude. One was a micrometeorite collection box, while the other was a solar spectrum measurement device. The right tip pod held an extendable probe known as the bow shock standoff measurement experiment. It was later found that the drive motor on this probe had not been properly checked in an altitude chamber, and electrical arcing occurred above 80,000 feet. By the time the are craft was climbing through 100,000 feet, the arcing extended to one inch across the exposed experiment terminals, producing a hot blue coronal discharge. The disturbance caused noise in the wiring of the X-15, affecting operation of several critical systems.
     Another casualty of the interference was the computer, which started to continually dump and reset - a total of sixty-one times before the end of the mission. It did not go out, as the light was refreshed each time a new dump occurred.
     Mike activated the two experiments on the left pod. The nose cap popped down and the micrometeorite collection box extended, while a hatch on the upper side of the pod opened to reveal the solar spectrum instrumentation in a white rectangular box with numerous lenses and mirrors. Telemetry was received on the ground showed Adams was on the planned heading and flight profile, although they could tell his trajectory was slightly higher than planned due to the extra burn time of the XLR-99.

Below is the timeline of the events which followed. All times are Pacific Standard Time:
10:32:24 NASA 1: "Have you coming over the top. you're looking real good. Right on the heading, Mike."
10:32:51 NASA 1: "Over the top at about 261 [thousand feet], Mike."
10:32:54 NASA 1: "Check your attitudes."
10:33:00 [Maximum altitude of 266,000 feet.]
10:33:02 NASA 1: "You're a little but hot [with higher than expected velocity], but your heading in going in the right direction, Mike."
10:33:10 [The nose of the X-15 is now yawing 18 degrees off course to the right. There is no telemetry channel to pass heading data to the control room. X-15 pilot Pete Knight, who was NASA 1 on this mission, and the rest of the team on the ground, have no indication the X-15 is deviating from its intended direction.]
10:33:14 NASA 1: "Okay, let's check your dampers, Mike." [Mike fires the ballistic control jets in the nose and increases his yaw rate to the right.]
10:33:17 Adams: "They're still on."
10:33:20 [X-15 yaw is now 28 degrees to the right of the flight path.]
10:33:24 NASA 1: "A little bit high, Mike, but in real good shape. And, we got you coming downhill now. Are your dampers still on?"
10:33:38 [Yaw is at 90 degrees.]
10:33:39 Adams: "Yeah, and it seems squirrely."
10:33:44 NASA 1: "Okay, have you coming back through 230 [thousand feet].
10:33:49 [Yaw is at 180 degrees, Adams is flying tail first along his flight path.]
10:33:53 [The X-15 enters a high-altitude, hypersonic spin, which lasts for the next forty-three seconds, and three full rotations of the aircraft. Adams tries to correct the soon using the ballistic control system. During this time the aircraft drops 100,000 feet.]
10:33:58 NASA 1: "Let's not keep it as high as normal with this damper problem. Have you at 210 [thousand feet].
10:34:02 Adams: "I'm in a spin, Pete."
10:34:05 NASA 1: "Let's get your experiment in and the camera on."
10:34:10 [Mike switches the ballistic control system back to automatic. Pitch, roll, and yaw jets fire in an attempt to stabilize the X-15.]
10:34:16 Adams: "I'm in a spin."
10:34:18 NASA 1: "Say again." [The X-15 is not spinning with the nose pointed almost straight toward the ground.]
10:34:19 Adams: "I'm in a spin." [Last transmission from Mike.]
10:34:21 NASA 1: "Say again."
10:34:27 NASA 1: "Okay, Mike, you're coming through about 135 [thousand feet] now."
10:34:34 NASA 1: "Let's get it straightened out."
10:34:36 [X-15 hypersonic spin ends. Aircraft yaw is 0 degrees, heading directly into the flight path. Altitude is 120,000 feet. Speed is Mach 4.7.]
10:34:44 NASA 1: "Get some angle of attack up."
10:34:47 [The ballistic control system is turned on and off several times during the emergency. At this moment, it is turned off for the final time.]
10:34:50 NASA 1: "Coming up to 80,000 [feet], Mike."
10:34:52 [The X-15 starts to break up as the airframe is overstressed, pitching up and down at 15 gs. Speed is Mach 3.9, approximately 2,600 mph.]
10:34:55 [Final ballistic control system pulse. Possibly the last act accomplished by Adams as the aircraft is disintegrating around him.]
10:34:58 [All telemetry lost as X-15 no. 3 breaks apart at 62,000 feet.]
10:34:59 NASA 1: "Let's get some g on it."
10:35:14 NASA 1: "Keep pulling it up. Do you read, Mike?"
10:35:20 NASA 1: "Let's keep pulling it up, Mike." [Approximate time when the X-15 impacts the desert in a hilly area to miles north of Johannesburg and four miles south of Ridgecrest and the China Lake Navel Weapons Center. Wreckage is scattered over several miles of terrain.]

Investigation
NASA and the Air Force convened an accident board. Chaired by NASA's Donald R. Bellman, the board took two months to prepare its report. Ground parties scoured the countryside looking for wreckage, specifically the film from the cockpit camera. The weekend after the accident, an unofficial NASA Dryden Flight Research Center search party found the camera, but could not find the film cartridge. FRC engineer Victor W. Horton organized a search and on November 29, during the first pass over the area, Willard E. Dives found the cassette.
     The accident board found that the cockpit instrumentation had been functioning properly, and concluded that Adams had lost control of the X-15 as a result of a combination of distraction, misinterpretation of his instrumentation display, and possible vertigo. The electrical disturbance early in the flight degraded the overall effectiveness of the aircraft's control system and further added to pilot workload.
     The board made two major recommendations: install a telemetered heading indicator in the control room, visible to the flight controller; and medically screen X-15 pilot candidates for labyrinth (vertigo) sensitivity. As a result of the X-15's crash, the FRC added a ground-based "8 ball" attitude indicator (Horton's idea) in the control room to furnish mission controllers with real time pitch, roll, yaw, heading, angle of attack, and sideslip information.


Navigation to the X-15 Crash Site



Getting to the location can be a challenge, if your not paying attention. There is a BLM Marker on Trona Rd that identifies the X-15 Site. The trail that leads to the site is "RM28".
Turnoff from Trona Rd: 35°25'04.5"N 117°35'34.5"W

Crash Site: 35°25'11.4"N 117°36'06.5"W

The site is also listed on Geocaching.com


 
Before getting to the site, you will see this sign. Taking a closer look at the tire holding the sign revealed a 24 ply tire, rated for 210 Knots. On closer inspection, the tire was manufactured in 1968. Since the crash occurred in 1967, this could not be the actual tire from the wreckage, but it is still from the same era. This was an interesting find.

Monday, July 14, 2014

First look at iOS 8

I downloaded iOS8 Beta 4 and started to play with it to see what to expect, and here are some screenshots and details of what's new:



Apparently, Apple is trying to standardize "In Case of Emergancy" data for users. The Medical ID App also appears to have the ability to maintain medically related data, like historical blood pressure, weight, and many other data points that you manually enter.


The iMessage screen looks a bit different as well. Emojicons have been enabled by default, and the icon to get to them has changed. They have also added suggested words above the keyboard. If you tap on details, you can send your current location to someone, without going to Find My Friends. They have also added Voice to iMessages.


There appears to be so e work being done to the Camera App as well. A self timer has been added and a new mode for Time Lapse Photography.

Editing Photos will be easier also, they have added a rotation dial and more function for color correction.


Something else I found interesting, Apple appears to have fixed the Facebook based video as viewed through Safari. Yes, this did play through Safari.


Apple has also added a Tips App to help everyone realize the new features available on the new iOS 8







Thursday, July 10, 2014

Installing Windows 7 on a Windows 8 Machine

I had some issues with a system that was purchased with Windows 8 preinstalled on it. The user did not want to be the first person in the office to use Windows 8, and she was not very computer savvy anyways. She wanted Windows 7 installed on this machine. When i first tried to boot this system from the disk, it would not get to the GUI Setup on the disk. I tried many times, and even removed the hard drive, installed Windows 7 while on another machine, and moved the drive back. Even then, the computer would not boot into Windows 7.
It was at this point that I discovered that the serial number for the OS was stored on the motherboard. This is a big change from how Microsoft used to do things. I also discovered this interesting piece. Notice "Secure Boot" and "Secure Rollback Prevention" in the BIOS.
With the default settings on the BIOS, look hat boot options I had available to me. No USB or CDROM drive, only Ethernet.
Once I turned off the OS Optimized Defaults setting in the BIOS, I was able to see all of the bootable devices that i was used to seeing. Then my pre-installed Windows 7 setup could continue. 

Wednesday, July 9, 2014

AirCam to YouTube Time Lapse with Raspberry Pi

I setup a weather station with webcam to feed data to Wunderground. The station setup was an AirBridge with an AirCam. The only issue, was the uploading of a pic to Wunderground was not as reliable as I had hoped, and I couldn't save the time lapse videos offline for use later. So I added a Raspberry Pi to the network to download high quality images from the webcam and create the time lapse videos for uploading to YouTube.

The end result is an automated time lapse (from 4AM to 10 PM - 1 Image Per Minute - 1080 Images - Processed at 24FPS) uploaded to youtube that is 45 seconds long.
What is needed:
A Functional AirCam on the network, with a known IP and Allow Unauthenticated option turned on.
Raspberry Pi with a Raspian image on a least a 4GB card
A thumb drive inserted into the Raspberry Pi with a folder on it called "TimeLapse".
HDMI Cable from the Raspberry to your TV.
An Ethernat connection to the network.
Section 1 - Initial Setup:
Getting started, Update the Pi first:
sudo apt-get update
sudo apt-get upgrade

Install needed apps:
sudo apt-get install ffmpeg mencoder python-gdata python-pycurl python-progressbar

Use "ifconfig" to figure out the IP Address, then use Putty to SSH to the Raspberry Pi.

Section 2 - Building the Scripts
You can download the scripts with these, or paste them in manually.
sudo wget https://www.dropbox.com/s/glrjw1r0c0jp9ip/TimeLapse.sh -P /etc/
sudo wget https://www.dropbox.com/s/65e0hopek114uqc/TimeLapseExport.sh -P /etc/
sudo wget https://www.dropbox.com/s/rbdwkwma5lzrbin/TimeLapseCleanup.sh -P /etc/

*Skip to Section 3 if you downloaded them directly, after you edit TimeLapseExport.sh and change the username/password fields. Don't forget to update the YouTube Keywords and Description.

Run the following to create the script file,
sudo nano /etc/TimeLapse.sh

then paste the script below:
--------------------------------------------------------
#!/bin/sh
#/etc/TimeLapse.sh
export DATETIME=`date +%Y%m%d%H%M`
export DATE=`date +%Y%m%d`
export MONT=`date +%Y%m`
FILE=/mnt/USB/TimeLapse
CAMIP=192.168.1.20
if [ -d $FILE ]
then
echo "Thumb Drive Available @ $FILE"
mkdir /mnt/USB/TimeLapse/$MONT
mkdir /mnt/USB/TimeLapse/$MONT/$DATE
ffmpeg -i rtsp://$CAMIP/live/ch00_0 -y -f image2 -sameq -t 0.001 /mnt/USB/TimeLapse/$MONT/$DATE/$DATETIME.jpeg
else
echo "Thumb Drive not Mounted @ $FILE"
sudo mount -o uid=pi,gid=pi /dev/sda1 /mnt/USB
sudo mount -o uid=pi,gid=pi /dev/sdb1 /mnt/USB
fi
 
--------------------------------------------------------

Use CTRL+S to save, then CTRL+X to close.

Create another script file and paste the script text below (Edit the username, password and youtube data):
sudo nano /etc/TimeLapseExport.sh

--------------------------------------------------------
#!/bin/sh
#/etc/TimeLapseExport.sh
export DATETIME=`date +%Y%m%d%H%M`
export DATE=`date +%Y%m%d`
export MONT=`date +%Y%m`
export USER="someone@gmail.com"
export PASS="*********"

export YTTITLE="Weather Time Lapse KCASQUIR2-$DATE"
export YTDESC="Time Lapse from Squirrel Valley (Mountain Mesa) CA on $DATE"
export YTKEY="Weather, Time, Lapse, KCASQUIRL2, Lake Isabella, Sierra Nevada, SkyWarn, NWS, Hanford, Mountains, Clouds"
FILE=/mnt/USB/TimeLapse
TMP=/var/TimeLapse

UP=/etc/youtube-upload-0.7.3/bin
if [ -d $FILE ]
then
echo "Thumb Drive Available @ $FILE"
echo "Images found:"
ls -l $FILE/$MONT/$DATE | wc -l
echo "Generating List"
ls $FILE/$MONT/$DATE/*.jpeg > $FILE/$MONT/$DATE/stills.txt
echo "Begin processing Time Lapse"
mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4:aspect=16/9:vbitrate=8000000 -vf scale=1280:720 -o $TMP/TimeLapse-$DATE.avi -mf type=jpeg:fps=24 mf://@$FILE/$MONT/$DATE/stills.txt
echo "Cleanup image list"
rm $FILE/$MONT/$DATE/stills.txt
echo "Start Upload to YouTube"

$UP/youtube-upload --email=$USER --password=$PASS --title=$YTTITLE --description=$YTDESC --category=Entertainment --keywords=$YTKEY $TMP/TimeLapse-$DATE.avi
echo "Cleanup video file"
rm $TMP/TimeLapse-$DATE.avi
else
echo "Thumb Drive not Mounted @ $FILE"
sudo mount -o uid=pi,gid=pi /dev/sda1 /mnt/USB
sudo mount -o uid=pi,gid=pi /dev/sdb1 /mnt/USB
fi

--------------------------------------------------------

One more script to cleanup images older than 30 days:
sudo nano /etc/TimeLapseCleanup.sh
--------------------------------------------------------
#!/bin/bash

#/etc/TimeLapseCleanup.sh
find /mnt/USB -type f -mtime +30 | xargs rm

--------------------------------------------------------
 
Make your scripts executable by running the following:
sudo chmod u+x /etc/TimeLapse.sh
sudo chmod u+x /etc/TimeLapseExport.sh
sudo chmod u+x /etc/TimeLapseCleanup.sh

Section 3 - Setup Youtube-upload
Now we need to get the scripts to upload to youtube. Run the following commands:

cd /etc/
sudo wget http://youtube-upload.googlecode.com/files/youtube-upload-0.7.3.tgz
sudo tar xvzf youtube-upload-0.7.3.tgz
cd youtube-upload-0.7.3
 sudo python setup.py install

Section 4 - Automation
Setup Crontab to launch your scripts on a regular basis:
sudo crontab -e -u root

add the following:
-----------------------------------------------------------
* 4-21 * * * /etc/TimeLapse.sh
0 22 * * * /etc/TimeLapseExport.sh > /var/log/TimeLapseExport.log 2>&1
0 1 * * * /etc/TimeLapseCleanup.sh
0 0 * * * /sbin/shutdown -r now

-----------------------------------------------------------

Section 5 (Optional) - Setup SMB to access files from remote computer
This will allow you to access the files on the thumb drive from a PC:
sudo apt-get install samba samba-common-bin
sudo nano /etc/samba/smb.conf

Add the following:
-----------------------------------------------------------
[pihome]
   comment= Pi Home
   path=/mnt/USB
   browseable=Yes
   writeable=Yes
   only guest=no
   create mask=0777
   directory mask=0777
   public=no
-----------------------------------------------------------

CTRL+S to save, and CTRL+X to exit
Set a password for SMB Access:
sudo smbpasswd -a pi
*Enter password twice

Section 6 - RAM Drive for Video Output
We don't want to beat up the Thumb Drive, so do the following:
sudo mkdir /var/TimeLapse
sudo nano /etc/fstab
Add the following:
--------------------------------------------------------
tmpfs   /var/TimeLapse    tmpfs    defaults,noatime,nosuid,mode=0755,size=100m    0 0
--------------------------------------------------------

Save the file by pressing CTRL-X and select Y to save the changes.

Section 7 (Optional) - Setting a Static IP
Optional, Set a static IP Address for the Pi by running the following:
sudo nano /etc/network/interfaces

Remove the line that reads
iface eth0 inet dhcp

Add the following:
-----------------------------------------------------------
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.0.255
gateway 192.168.1.1
-----------------------------------------------------------

Save the file by pressing CTRL-X and select Y to save the changes.

If you changed the IP to static, don't forget the DNS servers:
sudo nano /etc/resolv.conf

Replace the text with the following:
-----------------------------------------------------------
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 4.2.2.1
-----------------------------------------------------------

Save the file by pressing CTRL-X and select Y to save the changes.

Section 8 (Optional) - Setup Web Interface to view images

Install Apache:
sudo apt-get install apache2

Edit the Apache Web Config:
sudo nano /etc/apache2/sites-enabled/000-default
Edit the Document:
Root and the Directory fields to the following:
DocumentRoot /mnt/USB
<Directory /mnt/USB/>

Save the file by pressing CTRL-X and select Y to save the changes.
Reboot the web service to accept the changes:
sudo service apache2 restart

Test the web portal from your computer/device by putting the IP of the Raspberry in the browser

Section 9 - Reboot
reboot with the following:
sudo reboot

Section 10 - Aircam Tuneup
The Aircam has a few "wonderful" settings that you may want to change to get more picture clarity. Look at these images that were taken around the same time of day. One looks out of focus, but it wasn't.
 
You can telnet into the camera and use the default "ubnt" as the username and password.

View the current settings:
cat /proc/isp0/ae/info 
cat /proc/isp0/awb/info

Execute the following commands to cleanup the image quality during the day:
echo 1 > /proc/isp0/ae/ev_mode
echo "w denoise 0" > /proc/isp0/command
echo "w crosstalk 30" > /proc/isp0/command
echo "w sharpness 100" > /proc/isp0/command

sed -i 's/max_quant.*/max_quant = 20/' /var/etc/ubnt-streamer.conf
sed -i 's/mjpeg_quality.*/mjpeg_quality = 100/' /var/etc/ubnt-streamer.conf
pkill ubnt-streamer

Ref: http://community.ubnt.com/t5/UniFi-Video/Tune-up-your-aircam/td-p/269226
Ref: https://community.ubnt.com/t5/UniFi-Video/snapshot-cgi-chan-0-how-to-reduce-compression-on-AirCam-FW-1-2/td-p/555637