Biobug.org

Projects, notes, etc by Will O’Brien

Entries


My WishList
Resume
Want My Coffee?

Production

Photo Gallery
Articles
Podcasting
News

Amusements

Audio
Brewing
Cigars
Coffee
GPS/GeoCaching
Hacks
Home Theater
Kayak
Machine Shop
Photography
Recipes
SCUBA Diving

Research

CNC
CAD
Scripts
VR Interface
Environment
KarKomp
KarKompV2
MythTV

Reference

OWLNet
Quit Soda
Mac
Linux
Tech Ref
Panasonic Toughbook
Dreamhost hosting

Communication

Blackberry
T-mobile MDA
Danger Sidekick
WRT54G(s)

Transport

Land Rover
4Runner
Beetle
Jeeps
Motorcycles
EV Motorcycle
About
Links
Search

iPhone dev: SMSresponder

28 November, 2011 (10:44) | iPhone, Projects, SMSresponder

I’ve built a perl script to enable SMS remote start of my car. The script checks the SMS database for new messages and if the message meets the criteria, it will send a command out the serial port, log the event and send a reply sms for confirmation.

Everything is done in perl! My script directly reads the SQLite sms database, writes to the serial port via Serial::Device, sends confirmation SMS messages via sendSMS and logs to a log file with a quick and dirty file write routine. I’d like to add a serial port logger for convenient data logging from my hardware interface as well as some feedback info for the reply sms: cabin temperature will be the easiest to add…

First, the phone needed some packages. Here’s my current install list:

iPhone:/var/log root# dpkg --get-selections
adv-cmds                    install
apr-lib                        install
apt7                        install
apt7-key                    install
apt7-lib                    install
apt7-ssl                    install
base                        install
bash                        install
berkeleydb                    install
bzip2                        install
ch.ringwald.springboardaccess            install
com.saurik.iphone.ske                install
com.saurik.substrate.safemode            install
coreutils-bin                    install
curl                        install
cy+cpu.arm                    install
cy+kernel.darwin                install
cy+lib.corefoundation                install
cy+model.iphone                    install
cy+os.ios                    install
cydia                        install
cydia-lproj                    install
darwintools                    install
debianutils                    install
diffutils                    install
diskdev-cmds                    install
dpkg                        install
essential                    install
expat                        install
findutils                    install
firmware                    install
firmware-sbin                    install
gcrypt                        install
git                        install
gnupg                        install
grep                        install
gsc.accelerometer                install
gsc.all-features                install
gsc.any-telephony                install
gsc.app-store                    install
gsc.application-installation            install
gsc.armv6                    install
gsc.bluetooth                    install
gsc.cellular-data                install
gsc.contains-cellular-radio            install
gsc.gps                        install
gsc.hw-encode-snapshots                install
gsc.hw-snapshots-need-purplegfx            install
gsc.international-settings            install
gsc.location-services                install
gsc.microphone                    install
gsc.mms                        install
gsc.music-store                    install
gsc.not-green-tea                install
gsc.opengles-1                    install
gsc.peer-peer                    install
gsc.proximity-sensor                install
gsc.ringer-switch                install
gsc.sms                        install
gsc.stand-alone-contacts            install
gsc.still-camera                install
gsc.telephony                    install
gsc.telephony-maximum-generation        install
gsc.unified-ipod                install
gsc.voip                    install
gsc.volume-buttons                install
gsc.wifi                    install
gsc.youtube                    install
gsc.youtube-plugin                install
gzip                        install
jp.ashikase.mousesupport            install
jpeg                        install
libgpg-error                    install
libstatusbar                    install
libvncserver                    install
lzma                        install
minicom                        install
mobilesubstrate                    install
ncurses                        install
openssh                        install
openssl                        install
org.thebigboss.repo.icons            install
p5-archive-extract                install
p5-archive-tar                    install
p5-archive-zip                    install
p5-attribute-handlers                install
p5-autodie                    install
p5-autoloader                    install
p5-b-debug                    install
p5-b-lint                    install
p5-bignum                    install
p5-cgi.pm                    install
p5-class-isa                    install
p5-compress-bzip2                install
p5-compress-raw-bzip2                install
p5-compress-raw-zlib                install
p5-constant                    install
p5-cpan                        install
p5-cpan-checksums                install
p5-cpan-meta-yaml                install
p5-cpanplus                    install
p5-cpanplus-dist-build                install
p5-data-compare                    install
p5-data-dumper                    install
p5-db-file                    install
p5-dbd-sqlite                    install
p5-dbi                        install
p5-devel-ppport                    install
p5-device-serialport                install
p5-digest                    install
p5-digest-md5                    install
p5-digest-sha                    install
p5-encode                    install
p5-encode-locale                install
p5-encoding-warnings                install
p5-exporter                    install
p5-extutils-cbuilder                install
p5-extutils-command                install
p5-extutils-install                install
p5-extutils-makemaker                install
p5-extutils-manifest                install
p5-extutils-parsexs                install
p5-fcgi                        install
p5-file-fetch                    install
p5-file-find-rule                install
p5-file-homedir                    install
p5-file-listing                    install
p5-file-path                    install
p5-file-remove                    install
p5-file-temp                    install
p5-file-which                    install
p5-filter                    install
p5-filter-simple                install
p5-getopt-long                    install
p5-html-parser                    install
p5-html-tagset                    install
p5-http-cookies                    install
p5-http-daemon                    install
p5-http-date                    install
p5-http-message                    install
p5-http-negotiate                install
p5-http-tiny                    install
p5-io                        install
p5-io-compress                    install
p5-io-zlib                    install
p5-ipc-cmd                    install
p5-ipc-run3                    install
p5-ipc-sysv                    install
p5-json                        install
p5-json-pp                    install
p5-lib                        install
p5-libnet                    install
p5-libwww-perl                    install
p5-locale-codes                    install
p5-locale-maketext                install
p5-locale-maketext-simple            install
p5-log-message                    install
p5-log-message-simple                install
p5-lwp-mediatypes                install
p5-math-bigint                    install
p5-math-bigint-fastcalc                install
p5-math-bigrat                    install
p5-math-complex                    install
p5-mime-base64                    install
p5-module-build                    install
p5-module-corelist                install
p5-module-install                install
p5-module-load                    install
p5-module-load-conditional            install
p5-module-loaded                install
p5-module-pluggable                install
p5-module-scandeps                install
p5-module-signature                install
p5-net-http                    install
p5-next                        install
p5-number-compare                install
p5-object-accessor                install
p5-par-dist                    install
p5-params-check                    install
p5-parse-cpan-meta                install
p5-pathtools                    install
p5-pod-escapes                    install
p5-pod-parser                    install
p5-probe-perl                    install
p5-safe                        install
p5-storable                    install
p5-switch                    install
p5-sys-syslog                    install
p5-term-ansicolor                install
p5-term-ui                    install
p5-test-harness                    install
p5-test-script                    install
p5-test-simple                    install
p5-text-balanced                install
p5-text-glob                    install
p5-tie-refhash                    install
p5-time-local                    install
p5-time-piece                    install
p5-unicode-collate                install
p5-unicode-normalize                install
p5-uri                        install
p5-version                    install
p5-www-robotrules                install
p5-xsloader                    install
p5-yaml                        install
p5-yaml-libyaml                    install
p5-yaml-syck                    install
p5-yaml-tiny                    install
pam                        install
pam-modules                    install
pcre                        install
perl                        install
perl-base-modules                install
preferenceloader                install
profile.d                    install
readline                    install
saurik                        install
sed                        install
sendsms                        install
shell-cmds                    install
system-cmds                    install
tar                        install
top                        install
uikittools                    install
ultrasn0w                    install
veency                        install
vim                        install

I highly reccommend installing apt strict – you can install needed packages via apt-get install bleh on the command line.

I’m still tweaking the script, but the first working version loads on phone startup vi starup plist. So far it seems to be somewhat robust. Testing will tell.

«

  »