Pushing the Envelope


May 9, 2009: 11:53 am: MatthewEnvironment, Pushing the Envelope, Technical

I haven’t updated my list of solar cell info recently, either…

Plastic solar cell advances

Sun + Water = Fuel (OK, it’s not technically solar cells, but it’s power from solar)
With catalysts created by an MIT chemist, sunlight can turn water into hydrogen. If the process can scale up, it could make solar power a dominant source of energy.
A technology developed by IBM to cool computer chips could be a boon for solar energy.
The silicon shortage that has kept solar electricity expensive is ending.
A new solar cell is 27 percent more efficient without being more
May 8, 2009: 11:53 am: MatthewEnvironment, Pushing the Envelope, Technical
It’s been a while since I updated my list of interesting battery/auto progress links…
The automaker wanted U.S.-based manufacturing and a flexible battery design.
The planned plug-in hybrid car is at the core of the automaker’s attempt to reinvent itself. But will the car be a commercial success?
The new Prius is designed so that its battery pack can be swapped out for a plug-in lithium-ion battery.
Dense films of carbon nanotubes store large amounts of energy.
A new lithium-ion battery from A123 Systems could help electric cars and hybrids come to dominate the roads.
Nanowire electrodes could improve the performance of electric vehicles.
February 27, 2009: 7:24 pm: MatthewFamily, Home Improvement Ideas, Pushing the Envelope, Technical

What an interesting idea… a ‘camera’ that sees through wallboard.  With the troubles we had during our remodel, this tool would have been really great to have….

July 26, 2008: 12:14 pm: MatthewFamily, MythTV, Pushing the Envelope, Technical

First step was getting the MythFrontend to work on my mac… I downloaded the newest version, ran it, gave it the configurations needed, and it would repeatedly silently die. After trying to get a 0.21 build to work, I finally figured out how to run an application from the command line (no error messages! Argh!) and was able to see that there was a version mismatch. Downloaded 0.20-fixes and it worked great, first time. Three hours gone… sigh.

Moving on to the AppleTV…

Used the original appletv install documentation on the mythtv site

It went pretty well, directing me to an engadget article about upgrading appletv hard drives, showing how to dissasemble the appletv and back up the contents of the hd.

 dd if=/dev/disk1 of=/Users/mps/AppleTV.img bs=1024k

to check status, new terminal window and “kill -INFO [8636, PID of the dd process]”

then moving over various files:

cp -p /Users/mps/Downloads/Patchstick/Patchstick/atvloader/AwkwardTV.frappliance/Contents/Resources/sshd /Volumes/OSBoot/usr/sbin/
chmod +x /Volumes/OSBoot/usr/sbin/sshd
cp -p /Users/mps/Downloads/Patchstick/Patchstick/ssh/ssh.plist /Volumes/OSBoot/System/Library/LaunchDaemons/
defaults delete /Volumes/OSBoot/System/Library/LaunchDaemons/ssh Disabled
mkdir /Volumes/OSBoot/System/Library/Frameworks/OSXFrames
cp -pr /System/Library/Frameworks/Kerberos.framework /Volumes/OSBoot/System/Library/Frameworks/OSXFrames/.
cd /Volumes/OSBoot/usr/libexec/
cp /usr/bin/ssh* ../../usr/bin/
cp /usr/libexec/sshd-keygen-wrapper ../../usr/libexec/
cp /usr/libexec/sftp-server ../../usr/libexec/

when I tried to “cp /usr/libexec/ssh* ../../usr/libexec/” I got:
“cp: /usr/libexec/ssh-keysign: Permission denied”

so somehow there was a strange source permission issue… I didn’t sudo it because the docs said it wasn’t really needed.
then fixing perms:

sudo chown 0:0 sshd-keygen-wrapper
chmod 755 sshd-keygen-wrapper
sudo chown 0:0 sftp-server
chmod 755 sftp-server
cd ../../usr/bin/
sudo chown 0:0 ssh*
chmod 755 ssh*

and then it says we’re done and to test ssh. However, I don’t want to be transferring 100mb of MythFrontEnd over wireless if I don’t have to… so:

tar cf ~/MythFE.tar -C /Applications/ MythFrontend.app

(yes, there’s a space before the MythFrontend.app, and I don’t know why… I’ll read the tar man page someday) [edited: read the man page, it's to change to that directory before running the tar command. Handy.]

cp MythFE.tar /Volumes/OSBoot/

(might be lost, but then again might save me time later)

So then comes the test… connecting with SSH:

$ ssh -1 frontrow@appletv.local
Protocol major versions differ: 1 vs. 2
$ ssh  frontrow@appletv.local
Unable to negotiate a key exchange method

so, according to another page on the site this is because the ’sed’ that I used on sshd-keygen-wrapper was missing a space. However, the drive is back in the appletv so grrrrr.

Next step: build a patchstick. Gathered everything, ran the Leopard script and it says happy.

No boot. Rats. Since I had to use a USB-SD adapter instead of a regular USB stick, maybe it’s not bootable.

Borrowed a 512mb stick from a friend and re-created the patchstick. It works! OK, so I can now SSH into the appleTV. Next step, being able to do anything :)

Following the instructions, I went to make the disk read-write:

mount -o remount,rw /dev/disk0s3 /
/dev/disk0s3 on /: Operation not permitted

No dice. From the awkwardTV description:

 The user "frontrow" has complete sudo privileges. To be root, do sudo -s and put in the password again

which says to me that the original guide is probably out of date. As if we hadn’t already discovered that. So, I’m going to take the rest of the steps with a grain of salt…

root@appletv# mkdir /etc/mach_init.disabled
root@appletv# mv /etc/mach_init.d/ripstop.plist /etc/mach_init.disabled

Add the following to /etc/rc.local (create this file if it doesn’t already exist):

/sbin/kextunload -b com.apple.driver.AppleTCOWatchdog

Well, the read-write instructions worked OK, but vim and su didn’t — looks like Leopard strikes again. That means the well-intentioned line about adding to rc.local didn’t work easily since there’s no editor, and now I have to find vi somewhere else so it will work. Instead I went with the lazy method described on the watchdog detail page:

echo "/sbin/kextunload -b com.apple.driver.AppleTCOWatchdog" >> /etc/rc.local

which worked. Huzzah for Echo. Timezone time…

echo "/bin/ln -sf /usr/share/zoneinfo/US/Pacific /etc/localtime" >> /etc/rc.local

Erg. Big stopsign as my ATV is now rebooting after a few minutes. Not the 58 seconds described in the Watchdog writeup, maybe ATV2 is different… reverting…

-bash-2.05b$ sudo mv /etc/rc.local .
Password:
-bash-2.05b$ ls
Desktop         Library         Music           Pictures        Sites
Documents       Movies          MythFE.tar      Public          rc.local
-bash-2.05b$ ls /etc/mach_init.disabled/
ripstop.plist
-bash-2.05b$ sudo -s
bash-2.05b# mv /etc/mach_init.disabled/ripstop.plist /etc/mach_init.d/

so the ripstop.plist is back in place and rc.local is hidden. Waiting now to see if that stops the rebooting. It did.
OK, so moving to install nitoTV (after downloading it to my local downloads, and since there’s no unzip on the ATV) since it claims to kill the watchdog in 2.1:

mac$ tar cvf ~/nitoTV.tar -C /Users/mps/Downloads/ nitoTV.frappliance
mac$ scp nitoTV.tar frontrow@appletv.local:~
atv$ sudo -s
atv# tar xvf nitoTV.tar
atv# mv nitoTV.frappliance/ /System/Library/CoreServices/Finder.app/Contents/PlugIns
atv# ps -ax | grep Finder
atv# kill [Finder PID]

Restarting Finder takes a while… interesting. Wow. That was a long time. Then reboot, then to safe mode, then to reboot again, then long startup but it worked. Sorta. No nitoTV visible anywhere. Fail.

Back to searching for a fix. OMFG there’s a different link to the same version of nitoTV that has an installer. Deep cleansing breath. Now deep cleansing code:

ATV$ cd ~
ATV$ rm -rf nitoTV.frappliance/
ATV$ sudo rm -rf /System/Library/CoreServices/Finder.app/Contents/PlugIns/nitoTV.frappliance/

Cleaned. Now to push the new installer version out there (I changed the folder name after unzipping since I dislike dealing with spaces on the command line):

mac$ tar cvf ~/nitoTV.tar -C /Users/mps/Downloads/ nitoTV_Take_Two
mac$ scp nitoTV.tar frontrow@10.0.0.219:~
ATV$ tar xvf nitoTV.tar
ATV$ cd nitoTV_Take_Two/
ATV$ sudo ./installme
installer: Package name is nitoTV 0.4.8
installer: Installing onto volume mounted at /.
installer: The install was successful.
Restarting Finder...

And Finder did indeed restart – holy MACKEREL there’s a new entry. Reading the notes (wow, what a concept) it says it looks in /Users/frontrow/Applications for the apps… but that’s not where I put MythTV. So:

atv$ cd ~
atv$ mkdir Applications
atv$ mv /Applications/MythFrontend.app/ ./Applications/
mv: rename /Applications/MythFrontend.app/ to ./Applications/MythFrontend.app/: Read-only file system [ed: whoops, the installer tweaked my earlier settings]
atv$ sudo -s
atv# mount -o remount,rw /dev/disk0s3 /
atv# mv /Applications/MythFrontend.app/ ./Applications/

and presto! it appears in the Applications list within Nito. However, it dies fast. That’s OK, I know more about it now… having retrieved 10.4 versions of the files:

mac$ scp /Users/mps/vim frontrow@10.0.0.219:~
mac$ scp /Users/mps/nano frontrow@10.0.0.219:~
mac$ scp /Users/mps/su frontrow@10.0.0.219:~
atv# mv vim /usr/bin/
atv# mv su /usr/bin/
atv# mv nano /usr/bin/
atv# ln -s /usr/bin/vim /usr/bin/vi
atv# vi ~/.mythtv/mysql.txt
bash: /usr/bin/vi: Bad CPU type in executable
atv# nano
bash: /usr/bin/nano: Bad CPU type in executable

Well, curses! And here I thought we were going to work now… cleaning up again.

atv# rm /usr/bin/vi
atv# rm /usr/bin/vim
atv# rm /usr/bin/nano
atv# rm /usr/bin/su

So that means it’s not as easy as I thought… going back to the source disk:

mac$ sudo pax -r -p e -z -f /Volumes/Mac\ OS\ X\ Install\ Disc\ 1/System/Installation/Packages/BSD.pkg/Contents/Archive.pax.gz './usr/bin/vim'
mac$ sudo pax -r -p e -z -f /Volumes/Mac\ OS\ X\ Install\ Disc\ 1/System/Installation/Packages/BSD.pkg/Contents/Archive.pax.gz './usr/bin/nano'
mac$ sudo pax -r -p e -z -f /Volumes/Mac\ OS\ X\ Install\ Disc\ 1/System/Installation/Packages/BSD.pkg/Contents/Archive.pax.gz './usr/bin/su'
mac$ scp /Users/mps/usr/bin/vim frontrow@10.0.0.219:~
mac$ scp /Users/mps/usr/bin/nano frontrow@10.0.0.219:~
mac$ scp /Users/mps/usr/bin/su frontrow@10.0.0.219:~
atv# mv vim /usr/bin/
atv# mv su /usr/bin/
atv# mv nano /usr/bin/
atv# ln -s /usr/bin/vim /usr/bin/vi
atv# vi ~/.mythtv/mysql.txt

Ladies and Gentlemen, we have an editor! Of course, for some odd reason vi isn’t accepting my keyboard arrow mappings, so we shift to nano…

nano ~/.mythtv/mysql.txt

Update the settings. Restart the ATV. Pick the MythFrontend.app – and no joy. Found another page on AwkwardTV that references the fonts issue mentioned on the MythTV HowTo, trying those steps:

mac$ scp /Library/Fonts/Trebuchet\ MS* frontrow@10.0.0.219:~
mac$ scp /Library/Fonts/Arial* frontrow@10.0.0.219:~
mac$ scp /System/Library/Fonts/Geneva.dfont frontrow@10.0.0.219:~
atv$ sudo su
su: initgroups failed: Operation not permitted [grrrr, guess this isn't as easy as it should be]
atv$ sudo -s
atv# mv Arial* /Library/
atv# mv Trebuchet\ MS* /Library/
atv# mv Geneva.dfont /System/Library/Fonts/
atv# shutdown -r now

Wait for reboot… go to the app… we have a setup screen! Many notes say it’s easier to set it up from VNC than on the remote, so next step is setting up VNC.

atv# echo 71463E00FFDAAA95FF1C39567390ADCA > /Library/Preferences/com.apple.VNCSettings.txt
atv#  sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -configure -clientopts -setvnclegacy -vnclegacy yes
sudo: /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart: command not found

Oops, broke. OK, looking for VNC instructions for a Take2 version (scroll down on that page):

atv# cd ~
atv# sudo dd if=/dev/disk0s2 of=recovery.dmg bs=1m
atv# sudo hdiutil mount recovery.dmg
atv# sudo hdiutil mount /Volumes/Recovery/OS.dmg
atv# cp -pr /Volumes/OSBoot\ 1/System/Library/CoreServices/RemoteManagement/ /System/Library/CoreServices/RemoteManagement
atv# cp -pr /Volumes/OSBoot\ 1/System/Library/Perl/ /System/Library/Perl/
atv# cp -pr /System/Library/Perl/Extras/5.8.6/ /System/Library/Perl/5.8.6/
(already created the VNCSettings.txt file above, if you skipped that do it now)
atv# /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -configure -clientopts -setvnclegacy -vnclegacy yes
atv# /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -users frontrow -privs -all -restart -agent -menu
atv# /System/Library/CoreServices/RemoteManagement/AppleVNCServer.bundle/Contents/MacOS/AppleVNCServer

… but it keeps running in your SSH session, so that’s not 100% ideal. Well, tradeoffs… I can afford another SSH session :)

So I downloaded Chicken of the VNC to get access. It worked pretty well, but then the screensaver took over and I couldn’t see what I was doing. Rebooted the ATV and went to the screensaver, turned it to “Never”. After all, I turn off my TV, not let it burn energy just for the heck of it.

OK, so I can’t get the remote to work now. Monkeyed around with trying to get a local keyboard working and no luck there either. I’m stymied. Time to ask on the forums.

November 30, 2007: 1:05 am: MatthewPushing the Envelope, Technical

multiple numbers, no roaming… sounds like it just needs some growth, early adopters, and polish.  Slick idea.

August 7, 2007: 3:41 pm: MatthewBusiness, Environment, Pushing the Envelope, Technical

Since the US Automakers aren’t building pure electric cars fast enough, why not skip the system and build a new kind of car company?  And while you’re at it, use some of the newer, high-efficiency (42%!) solar cells to power it…

Technorati Tags: , ,

July 13, 2007: 2:58 pm: MatthewPushing the Envelope, Technical

I’m liking the new plastic-film solar cells progress, enabling two wavelength captures in one composite material, and the new possibilities in battery packs for autos.  The other fun stuff is energy from vibrations and an across-open-space power transfer process… where if the first doesn’t power up your cell phone, you could just toss it on a shelf and it would fill up automatically.  It’s very attractive to not have to plug in cords!

May 22, 2007: 4:12 pm: MatthewDebian, Linux Misc, Pushing the Envelope, Technical

A quick article about the problems of Linux packaging (specifically the cross-distribution incompatibilities and the multiple option confusion), which is really only interesting because of its reference to a writeup of Conary, a package manager with revision control built in. That addresses my major gripe which is that you can’t roll back a package (RPM, DEB, etc) to a previous state and that is ridiculous in this day and age! Even Windows OS patches have uninstalls that revert back to how the system was before… and they even work more often than not!

I wonder how it will tie in with another distro than rPath Linux…

May 9, 2007: 11:05 am: MatthewEnvironment, Political, Pushing the Envelope, Technical

Some drivers in Japan who push the Prius’s efficiency to its limits… a bit overkill for me.

May 1, 2007: 10:27 am: MatthewBusiness, Pushing the Envelope, Technical

I’m really interested in mobile websites because I want to be able to get my data everywhere, but they’re not easy to find. Case in point: a WSJ article on mobile sites references an ESPN mobile site, which would save me enormous pain when I’m checking sports sites… but no link, and ESPN’s home page doesn’t direct you to the mobile site when you have a mobile browser… nor does it even link to it in any place I can find on that tiny screen.

Here’s to hope that mobile sites will actually be more findable.

Next Page »