Saturday, September 29, 2012

Finishing Touches

I believe that I've about wrapped up the iOS programming side of things for what I'm going to use on the initial install. Still have a few minor things to get put into the code like the segment selector to output data along with the volume, temp, and fan speed. Those should come along pretty easily. Have the switches tied in though and thought I'd put up a short video showing the output on some LED's.  Also, got the music part of the app updated to allow for seeking through tracks with a slider... will update this for smoother time seeking is a bit jumpy.

iPad LED control via Serial  Port to PIC16F887

Track Time Update and Seeking

Hope you all enjoy!

Wednesday, September 26, 2012

Phase 2

Well it is getting closer to the time to work on getting all the signals I need in and out of the iPad...
First off I'm going to need to add some wires/resistors to get the iPad to charge when it is connected to the serial cable. Then I need to tap into the audio line out... which isn't to hard... I should know I built myself a cable to plug my phone into my kia out of hacked together broken chargers... worked great for being free... ended up getting a legit cable for christmas shortly after though...

Anyways here are some pictures of inside that little beast of a cable so you can all see where I'll be attaching some wire. Something that I have noticed is the serial cable appears to not be shielded... I might look into changing this out with something that provides shielding and allows me to bundle the extra wires all together nicely and a more manage length... pretty sure I dont really need 1 whole meter of wire hanging out in the dash...  

Tuesday, September 25, 2012

The Little Things

So I've been working on this a little at a time lately. Thought I'd post up some of the latest progress! Its looking more like something I can total visualize in the dash of my car! For a beginners project I think I've bit off quite a bit but things seem to be shaping up nicely. Still have some minor code to clean up... when I pause and restart it likes to jump back a track for a reason I've not yet figured out... Need to work on converting the seconds into a MM:SS format (also with the initial track time... having seconds with .XXX places is a bit dumb. Also, need to update the code so when the time slider is moved to scrub to a different track time it will update the remaining and elapsed time... haven't had time to set that up yet.

Timers Working... Kinda...


I took out the map portion of the previous app layout I was working on because switching from the main interface app over to the google or apple maps or which ever nav. app a person would want to use is really easy and does not effect the music playback.  Something I might however do is still add a Button to the main app screen to quick launch into maps just for ease of not having to find it in the main list of apps... 

Thursday, September 20, 2012

The Simple Life

So for the first go around while I'm still sharping the iOS programming skills I think I've found something that will be some what nice to look at and provide the essential controls. With the gestures enabled its really easy to switch between apple maps, pandora, and any other app that is open. Seems how I'll mostly listen to iPod music having those controls in this app will be handy along with a volume control that will be tied into the Alpine head unit currently installed in the car. Not to forget the most important part the ac controls! The will also be part of the app.

Screen Shot

That big empty place in the upper left hand side is the UIImage area for the album artwork. Might still add in an area to show the outside temperature which I think I'll get from an externally mounted temperature sensor wired up to the picmicro chip instead of via the web based on gps location like previous gui screen shots show.

Next task is linking up the controls for the music player again and setting up the links for the volume, and ac controls to talk with the microchip! Think things are moving along nicely!

Updated Screen Shot

Changed out some of the button text with symbols... still have some to go as you can see.. Also, opened up a song to show what it looks like with the title, artist, album, and artwork displayed! 

I'll put a video up on youtube either later tonight or sometime tomorrow! Let me know what you all think!

Sample video can be found on youtube @ iPad In Action

Monday, September 17, 2012

Its Alive!

So after some goofing around and finally diving into some assembly programing I've got a simple UI switch sending some data out the serial port of the iPad! when the switch is set to on it sends out a number 1 and a 0 when it is in the off position. The pic micro detects the sent data and saves it over to a memory location then uses that binary data to toggle on and off a set of 8 led's . 0 is represented by 00110000 and 1 by 00110001. This is a big step forward in setting up the communication scheme between the iPad app and micro chip. 

Short Video of the iPad and PIC16F887

I'm still pretty much just a rookie so getting this far has sparked a new excitement level for me!

Wednesday, September 12, 2012

iPad to PIC16F887 and Back

So now that I've removed all the old stuff I had attached to my demo board I finally got around to soldering a few wires. Taking a quick look at the datasheet for this microchip showed me which pins I'd need for wiring it up. For those interested it was pin #1 and pin #44. (RC6-TX and RC7-RX)

PIC16F887 Demo Board

I had some magnet wire laying around from years back that just so happened to fit into the connector on the end of the iOS serial cable. Without actual pins to use this was perfect wire to use! It is somewhat stiff like a pin, does not short out to itself, and goes into the connector nicely.

Connector With Wire

After a bit of searching I found some sample code on the picmicro web page that related to serial communication utilizing the chips built in Enhanced Universal Synchronous Asynchronous Receiver Transmitter  aka (EUSART).  Using redparks demo software supplied with the SDK download I was able to pass data out of the iPad via the serial cable to the picmicro then back again.

 Demo Board Wired Up

Second Try

Sent a 1 and got a 1 back! I'm pretty certain it is working as it should. When the chip is not running the program nothing is returned to the Ipad which leads me to believe that it is receiving and passing the data back as it should.

Video Clip in Action

Some day I'll get a better camera... my phone can only do so much but it is very handy!

Sunday, September 9, 2012

Getting Back In

Things are moving in the general direction of prototype land. I believe I'll scale the project back a bit initially as I've still got far to much to learn to create something that will accomplish everything I'm after all in one app. 

First working version I'm going with will have a few key features to make it worth while of installing. I'm going to have the app communicating with the micro chip to drive some transistor switches/relays for interfacing the iPad with the current controls in the car. Also, relocating the alpine headunit currently installed to the glove compartment. (this will make it so I'm not reinventing the wheel with a completely custom setup up for audio) However, the plan is to be able to keep it out of site and control the volume via micro chip connected to the iPad. 


Macbook Pro
  • Mac OS X 10.7.4
  • QuadCore Intel i7 2.4 GHz CPU
  • 4 GB DDR3
  • Xcode 4.4.1
  • Windows 7 Ultimate
  • QuadCore  AMD 9850 2.51 GHz
  • 4 GB DDR2
  • MPLab IDE Version 8.56
  • Pickit 2 programmer/debugger
  • 44pin demo board (PIC16F887) 
  • 16 GB wifi iPad
  • iOS 5.1.1
  • RedPark iOS serial cable
Need to find a small printer stand to move this printer off my desk to provide a bit more working room! It won't be much longer before I have wires going all over the place. Originally I wanted to run MPLab on the mac but it looks like the Pickit 2 usb device I have is not compatible with the new version on MPLab that will run on mac. 

Time to find a schematic for the Kia so I can layout a scheme for how I intend on wiring up to the controls. This will allow me to get a better idea on the route I'll take for the program for the microchip and the hardware I'll be hooking to it. 

Short PicMicro Debug Video

This is just a sample video of analog to digital conversion to display the value of the potentiometer in binary on the 8 led's that are on the demo board. This was just a test to refresh my memory on how to get around in MPLab as its been almost 3 years now.... will take some refreshing to get back to being proficient at this...

Monday, September 3, 2012

iOS Serial Cable!

Still just reading and taking in all the information I've run across. Going to get back to working on this project now with this new knowledge. Also, found out that I have a iOS TTL Serial Cable on its way to me! This puts me a bit closer to having a working prototype to toy around with! Will probably not be anymore updates to the blog until I get some assembly code written for the picmicro and have the ipad communicating with it. I will def. post up a video after I've completed this task. 


This is the cable that will be the vital link from the iPad to the car. Plans are to slightly modify the cable from its current state to allow for also charging the iPad when its plugged in and for passing audio. After getting some sneak peak photos of the inside of this thing looks like a little solder work and some additional wires and I'll be all set in this department. 

Wednesday, August 29, 2012

Research and Learning

For those of you that check out this blog and have been waiting for something new and exciting to pop up... you'll have to keep waiting. I'm taking some time to actually learn as much as possible about iOS programming. I've started a small library of books and found several other resources that I'm using to develop my skills to produce this app.


iOS5 Programming Pushing the Limits
iOS5 Programming Cookbook
iOS5 App Programming Guide
iOS5 Developers Cookbook
Programming iOS5

Online Lectures

about 40 hours of lectures from Stanford University that I found linked in iTunes... I feel like I'm back in college.

I do believe that after familiarizing myself with the above information I'll have a pretty decent foundation to continue building this app.

Off to the books I go!

Sunday, August 19, 2012

Still A Lot to Learn

So as you might have noticed updates are getting a little further apart. It was pretty easy to through some stuff together and get a good feel for how the GUI was going to look. Making things work like I want them and not having an extensive background in programming is proving to be a bit difficult at times. I spend most of the available project time reading now and the todo list is still pretty much the todo list from the last post with one exception. I was finally able to figure out how to make my app download information from wunderground to give me the current temperature, humidity, and an nice little weather icon. At some point I'll setup my app to do this when its first started and then it will updated periodically afterwords.


Working Weather Addition

Now back to reading so I can get some more things finished up with the GUI before I get into the serial communication between the iPad and PIC16F887!

Wednesday, August 15, 2012

Its been a while...

So the last few days have not been too productive. I'm still a bit new to all the programming and the more complex things get the more I find myself reading! However, I made some small improvements to the navigation part of the app. I can now easily switch between the 3 view types without problems, I've also got it set up for category searches via a toolbar located at the bottom of the screen. Its all functioning about as far as I might take it. although it would make for a pretty sick app if it was all self contained.

Short Video

Still To Do's

Although I like the idea of doing color coordinated background to match the cars interior lighting I believe it will be better to set the UI up with the selection of 2 color schemes (one for day time and one for night) I figure I can make a switch in the setup page of the app to switch between an auto mode that will be time driven or manual. At night a super bright iPad might not be the best thing to have so with a second scheme it can be color matched and not nearly as bright. I think that will make driving with it much easier!

I've also been working on setting up the weather info on the main page of the app. I'm getting close but having some issues with the API call to wunderground and getting my information back and usable in my app. I'm getting close though so maybe late tonight or tomorrow I'll have that finished up.

I've been communicating with someone about the Redparks serial cable for iOS and I believe I'll be able to mod that cable a bit to get everything I'm going to need! Will be a bit of a tight fit though but all and all its the best thing I can find that will allow me to do all this without JailBreaking the iPad.

Probably still have a few weeks of tinkering with the GUI to get to a level of satisfaction before I'll move onto getting it closer for the install. Might have to see what kinda strings I can pull to get a redpark cable for my b-day!

Thats all for tonight!

Sunday, August 12, 2012

Let there be Music!

So all weekend long and I've only seemed to complete one thing. I've got the Ipod page of the app able to link to my music library on the iPad to select songs, load them into a play list and play them... I'm not entirely satisfied with the way this part of the app works. I just wanted to make sure I could get it to work at a barebones level. Well after some brief tutorials, some light reading, more tutorials, more reading, and finally arriving at what I have I do feel partially accomplished...

Short Video of latest updates

Other items that I did this weekend include:

  • locating my pickit 2 programmer 
  • putting MPLabs on the mac.... (only to find out the pickit 2 is not supproted... brief waste of time) 

*although there is a workaround using the terminal window to write the code to the chip... I'm not that up to snuff with my mac to spend the time learning how to make this work...

  • located my old evaluation/debug board with a pic16f887 chip on it... 

Photo of Dev. board

Hopefully soon I'll start working on the iPad to picmicro connection!

Saturday, August 11, 2012

Birthday Gift Early...

So previously I was debating on if I should fork over the money to apple to become an iOS developer... This is no longer a debate! My wonderful wife made the decision very easy. So as you can guess I'm now a iOS developer member and I can start testing the code out on my iPad!!! Perhaps one of the best birthday gifts ever!

Short Clip of iPad interface IN CAR!

To do items

  • Link weather info information back up so it updates and test it out on the Ipad with my actual location
  • Finish Navigation portion of the app. Right now its just a map with my location... pretty boring I know
  • Revamp the ipod music page to something a bit more 21st century and get it all working with my current music library
Then for the fun part... pulling out the old assembly language part of the brain to get the iPad talking to the PicMicro to make things really interesting  (this part might take a while... haven't worked with the assembly code in about 3 years... hoping it all starts coming back though)

Yay for another day of progress and an awesome wife!!!

Friday, August 10, 2012

Audio Features

Think I've located some products to start planing the audio section around. I've added an advanced audio settings page based on the features available on the TDA7718N. Basically this is a nice little DSP chip that has an IC2 interface that I'll be able to use the PicMicro to program the settings of.

Tentative Parts List

TDA7718N  (DSP Chip for sound/volume control)

Si4735 FM/AM Radio Receiver Breakout (am/fm tuner board with RDS support and IC2 interface)

Redpark TTL cable for iOS (cable and development SDK to get the iPad and PicMicro connected)

Sample Video of added audio settings

Its a bit difficult to make out what things are present on the advanced page but they are as follows:

Treble with -15dB to + 15dB range
Center Freq. selection of 10kHz, 12.5kHz, 15kHz, 17.5kHz

Mid with -15dB to + 15dB range
Center Freq. selection of 500Hz, 1kHz, 1.5kHz, 2.5kHz
Q setting of .75, 1.0, 1.25

Bass with -15dB to + 15dB range
Center Freq. selection of 60Hz, 80Hz, 100Hz, 200Hz
Q setting of 1, 1.25, 1.5, 2

Subwoofer cut off frequency 55Hz, 85Hz, 120Hz, 160Hz

Main audio settings page will retain balance, fade, subwoofer level and turning internal amps on/off

Looks like I will be able to get most of the audio features found on your typical headunit including controls for a subwoofer output! For this project I plan to use some of my old audio stuff! 

Items to still workout
  • To go only with pre-outs to run to external amps or build/buy Chip amp solution to retain use of factory audio system. (or possibly both)
  • To Sirius/XM or not... looking like it would require buying an add-on tuner for an aftermarket headunit and hacking it up to talk to the PicMicro to be controlled via the iPad interface...
  • Pre-amp to boost up the audio signal from the TDA DSP chip to something around the 4 volt mark... would like to use some Burr Brown chips I have laying around from a past project... they seem to work nice!
  • To get an apple iOS developer account or not... would like to do this without but the more I read the more imposible apple has made it to program in xCode and get it on an iDevice without... 

If anyone has suggestions for DSP chips well suited for car audio or some decent pre-fab preamp circuits to cut down on development time I'd love to know about them! This project scope is expanding rapidly and I'd like to be able to finish before its time to buy a newer car... lol

Wednesday, August 8, 2012

More Updates

Ok so I've been working a little more with how I want things displayed. Learned how to take screen recordings of the Ipad simulator so they come out looking a bit better than trying to record a computer screen with my phone.... anyways here is what I've gotten put together tonight. 

Short Video

Pretty basic setup. Gives easy access to each of the audio sources with some settings, Main screen has the basic audio controls that will function for each audio source. Going selecting an audio source then pressing the play button will make that source active and it will remain active in the navigation window, setup window and main window. 

Hope you all enjoy this short preview. 

Tuesday, August 7, 2012

Revamping the GUI

When I first started thinking about this I thought I would just create a simple app to control the climate functions and use the Ipad as an Ipad for music and maps.... Well that idea is out now and I'm going to try my best to incorporate everything I want into one app. Basically I'm going to turn the Ipad into a complete stand-alone headunit all powered by one app. I'm working on revamping the GUI to get set it up to have access to the climate control on the main page along with some standard audio controls. Branching off of the main page will be the more advanced controls for each audio input as well as a page dedicated to audio settings such graphical eq, balance, fade, ect... My plan is to keep the standard audio controls available at each page view so it is easily accessible.  Now if I only had 18 hours a day to devote to this... I'm getting excited about this! Also, ditched the landscape setup as my Forte doesn't seem to really have the room to support that without major modifications... so I guess I'll live with a portrait view :(

New Layout

Short Video

Teaser Install Pictures

Just had to get an idea of what this awesomeness will look like in the car! Must say I do like what I see! think I can probably do a bit better color matching of the red for the interior though. Overall I think this will make a nice home for the Ipad.

If you look at this let me know what you think...

Monday, August 6, 2012

General Schematic Overview

Schematic Layout

Items I plan to design and build
Regulated Power Supply
Climate Control Interface
PicMicro Main Control Board

Items I'm undecided on
Audio Amp Board

Possibly HD radio module (just to be fancy)
Possibly Sirus/XM module (I'm kinda cheap so maybe not)

Items I Plan to purchase and incorporate
AM/FM module (for listening to local radio)

I'll create more detailed schematics once things get moving along.

Priority on work will be the following:

  • Getting the IPad interface put together
  • Climate Control wiring
  • IPad to Pic Micro main board communication

Saturday, August 4, 2012

GUI Updates

So things are a bit slow in making the updates I want to get incorporated into the GUI. Tonight I got the locations services up and going so it pulls the GPS data location in so I can update the Weather! Big step forward for me... as this is all pretty new! Anyways just wanted to show a short Clip of where things are standing from the user interface side. 

Things to still add:

Nav App
*some way to do a sweet back up camera feed*

Thursday, August 2, 2012

IPad Mount Rough Model

So many things to consider with this project... tonight worked out some modeling for the IPad Mount that will be contained in the dash. These are a bit rough and far from finished.

Back View

This shows a rough idea of the back where the main control panel will be that supports the audio/ climate control features. (all the factory wire harness will plug into this box.

Front View

A servo controled IPad dock/holder will allow for easy removal so its not left in the car.

Basic Exploded View

Just a random shot with the few pieces modeled up.

Wednesday, August 1, 2012

Brains of the Operation

Initial thoughts are the Ipad is going to communicate with a pic micro chip that will interface with the current car controls.

Chip Selection

2 x  40 pin 
PIC16F887 8 Bit Chip

Most likely to be used for this project as it has many input/output pins. 
Not sure exactly how many will be needed yet but will be putting together a wiring diagram in the coming days as time becomes available.  

3 x 28 pin
PIC16F767 8 Bit Chip

The electronics box for controlling the climate system will ideally leave all the factory wiring intact. The current plan to make this happen is to obtain a center control panel from a junkyard to harvest the plugs to allow for a simple plug in solution. 

Stay tuned for the progress…. this is not your typical weekend project…

Tuesday, July 31, 2012

Getting to Know XCode

After a fair amount of reading and tinkering around I've come out with a basic view that will establish the basis of the climate control system. This however is a work in progress and I have a few plans I still want to include here before moving on.

Home Screen of IPad simulator

 Example GUI for Climate Control

This basic layout provides most of the necessary settings that one would need to control the climate system in any car. 
  • Temperature setting replaces old knob with something a bit more 21st century (left hand side)
  • Fan Speed initial setup to provide 10 speed settings over the 4 original (right hand side)
  • Mode selector is pretty much the same story of whats already there... just digital
  • Fun features that my car currently does not have! Outside temperature reading, Cabin Temperature reading, Auto Climate setting.
  • Auto Climate is just as it sounds... set the temperature and it will regulate the fan speed temperature at the vents to maintain the desired set point. 
Currently I'm working on ideas of things to jazz this up a bit so its not so boring to look at. Current thoughts are:
  • animation for fan speed (spinning fan)
  • weather forecast (current condition - sunny, cloudy, rainy, snowy, ect... ) displayed as an image under outside temperature
  • appealing background instead of the plain white... 
Plenty of work left to go in this department! 

A Novel Idea

Out of curiosity I'm setting out to jazz up and old dash with some modern technology. My goal is to transform an ordinary IPad 2 into a climate controlling, weather showing, media playing head unit. Basically a single 9.7" touch screen that interfaces with the cars existing climate controls and audio system while integrating weather, navigation, video, and audio. Can't think of a better way to learn XCode and enjoy car audio!

The Ipad
 16GB Ipad 2

The Future Home

General Idea of Placement