Raspberry Pi carputer update

The only update of the week is that I tested the composite output in a Toyota Highlander’s entertainment system. It booted fine. The fonts are not as crispy as I wanted, but still readable. I didn’t have a chance to test the XBMC however web browsing was acceptable with an open wifi around the campus. 🙂

I’m also waiting some batteries for my old Voltmeter 🙂 Once it’s working I can start some prototyping.

Hopefully more updates in a week.

20130119-231422.jpg

rarcrack with big files

If you are trying to crack a big rar file with rarcrack (Mine was 2.6G) and you’re receiving this error:

$ ./rarcrack --type rar ./file.rar
 RarCrack! 0.2 by David Zoltan Kedves (kedazo@gmail.com)

 ERROR: The specified file (./file.rar) is not exists or
 you don't have a right permissions!

You need to add these lines below in rarcrack.c and recompile. (Put them before #include rarcrack.h )

#define _FILE_OFFSET_BITS 64
#define __USE_LARGEFILE

While you’re there you can fix the error message’s English 😉 I leave it to you to find it. 😉

Raspberry Pi powered carputer.

I got myself a raspberry pi couple of weeks ago. First I tried to make a HTPC out of it using XBMC but the interface was too slow for my taste. So I decided to build a carputer. 🙂 I have very basic electronic knowledge, so this will be a learning process for me too.

So far what I need is this list below:

  • a car (Check)
  • a 12V to 5V converter: I have cheap lighter to USB adapter. I’ll start with that but I’m thinking about this in the future.
  • a 5V power source activated when the car power is shut: For this one I’m going to start with a circuit I had in hand that I was using to charge my wifey’s phone using a small solar panel. It has a 2000mAh Li-Po battery on it. (That battery is most probably flat. I’ll need a new one)
    I will need this power source for only maybe 1 min. Read next bullet point.
  • a relay circuit that will detect that the car power is shut off and will send a GPIO signal to Rpi to shut itself off. Otherwise there will be corruption at some point of time. 😛 I believe I should write a simple script to shutdown to tie it to that GPIO signal.
  • a 7″ touchscreen screen (possibly with an HDMI input. I have couple of candidates.)
  • a software to play music and video. Biggest candidate so far is XBMC.

Nice to have:These will require a USB hub since I only have 2 USB inputs. (I need to look at the power requirements for the USB hub)

  • a wifi/bluetooth solution for phone interaction.
  • a GPS interface.

More update weekly. (hopefully!)

 

Stupid freepbx issue

For a long while I wasn’t able to pinpoint this really stupid issue where my extensions couldn’t call each other however my trunk calls were OK. It first surfaced by not being able to point my BV to my internal extension, but I brushed it out since I had a shitty Comcast router. I first thought that was the culprit.

Then when I was fixing my parents’ extensions in Turkey I realized that I cannot make any extension to extension calls but I still can use outbound routes. After hours of troubleshooting I realized that dialparties.agi script would always return: “Returned from dialparties with no extensions to call and DIALSTATUS:”

I manually ran the script and found out that it was spitting out this error message: “PHP Parse error:  syntax error, unexpected T_GOTO, expecting T_STRING in /var/lib/asterisk/agi-bin/phpagi.php on line 1234”

Then I found this bug in freepbx Trac. I ended up changing the name of the goto function in line 1234 of phpagi.agi to go_to and things started to work fine. 😛

Apparently this started to happen when I upgraded my ubuntu which upgraded the php to version 5.3.2.

ArtsyCat

My buddies just opened their art shop. They have a great water marble (Ebru) art web page where you can purchase them imprinted on iPhone/iPad cases, mugs and greeting cards.

If you want something unique and beautiful for the approaching Valentine’s Day or any other occasion, I recommend you to take a look at their page.

Mac OS X pkg files

PKG FilesSometimes you need to see what’s inside of that pkg file. But you also don’t want to install it. You just want to take a look at the files in it before installing it. Well, here is how to do it:

PKG files usually come in a DMG image. First mount that file by double clicking on it. Then open a Terminal window and go to the folder where it’s mounted. (Look under /Volumes)

Once you are in that folder you will see a file with a .pkg extension. Let’s say it is called Foo.pkg. Copy that file in a folder, I’ll copy it to /tmp.
cp Foo.pkg /tmp
cd /tmp

Mac OS X has a utility called pkgutil. You can do a ton of stuff with it, so check the manual page. (man pkgutil) But for our exercise we will just use it to expand the pkg file.
pkgutil --expand Foo.pkg /tmp/foo_package
cd /tmp/foo_package

This will open the pkg file to a flat structure. You will see some files and folders like Distribution, Resources, Foo.pkg. Go ahead and cd in the directory Foo.pkg:
cd Foo.pkg

In there you will several files. The important ones are Bom, Payload and PackageInfo:

Bom:

This file is called Bill of Materials. It describes what is in this pkg file and where they will be written to. If you will not do file/binary analysis of the contents of the pkg file and you want only to see which files will be written where, this is your file. You can also use this file’s contents to remove the package completely. (I leave this exercise up to you)

Bom is a binary file and there is a tool to list its contents: lsbom. (man lsbom for usage) Basic usage would be:
lsbom Bom

This will print file/directory structure of the contents on the screen.

Payload:

This is the file that contains all the files and directories in this pkg file. It’s a gzipped archive file.
$ file Payload
Payload: gzip compressed data, from Unix
$ mv Payload foo.gz
$ gunzip foo.gz
$ ls
foo

This will give you a file called foo. Now you need to use cpio to extract that archive.
$ cpio -iv < foo
.
./System
./System/Library
./usr
./System/Library/LaunchAgents
./usr/bin
......files files files.......
50002 blocks
$ ls
System foo usr

In my case it unarchived two folders called System and usr.

No you can go and browse these directory to find files you are looking for. Have fun 😉