No announcement yet.

Motorola XOOM - 2003 Jeep Grand Cherokee 4x4

  • Filter
  • Time
  • Show
Clear All
new posts

  • Motorola XOOM - 2003 Jeep Grand Cherokee 4x4

    (Jeep build thread here...)

    i've ditched my first carputer attempt, (docked HP laptop with remote 8" touchscreen). it took a long time to dial in to be reliable (though it was a good learning process). then after about 6 months of finally working well, the carnetix supply stopped working. i could have easily replaced the power supply, but i decided to take the opportunity to go in a new direction.

    so i'm going to try an Android tablet based system...

    i've ordered a refurbished Motorola XOOM 10.1" 32GB WiFi + 4G LTE Verizon tablet that should arrive this week. i wanted a 3G/4G device instead of just WiFi so that features like Google Maps, weather, and traffic are always available (while in the city at least) without the hassle of sharing WiFi from my phone or the expense of getting a cellular USB modem. i'm already on Verizon and with the shared plans, i can add the XOOM for just $10/month.

    why Android?

    i think that the Android OS has finally matured enough (ever since ICS) to be very capable. it's also much more hackable than iOS from both a hardware and software perspective. the Windows RT tablets just don't have enough app support yet, and the Win8 "Pro" tablets are too expensive. the Android platform seems to be at the right intersection of affordability and capability.

    why the Motorla XOOM?

    - i wanted to stick with Samsung or Motorola as they seem to have quality devices that are popular. the popularity means plenty of ROM's, device-specific apps, aftermarket accessories, and more community support (i.e. more people hacking on them already).

    - the original XOOM is already officially on ICS even though it's an older device. it's easy to root, has plenty of ROM's including a CyanogenMod version with Jelly Bean. Moto's stock kernels seem to be some of the most feature-rich - they were one of the first companies to include support for USB flash drives, keyboard, mice, etc.

    - 32GB of internal storage and more importantly a microSD slot (i've seen posts claiming it supports microSDXC cards up to 64GB).

    - connectivity - it has a charger port separate from the USB port. this is very important for me as it means i'll be able to charge the device while simultaneously using it in USB host mode (via OTG cable). there's also an HDMI port and there are 2 different docking stations that provide a clean physical connection to these ports. with a little hacking they can be integrated into a cradle and look nice.

    - the price was right for a dedicated car device, the refurbished unit was $229


    1/27/2013: tablet arrives
    1/29/2013: custom dock finished
    2/3/2013: support systems chasis & dock mounting complete
    2/6/2013: first test in vehicle - it works overall! electronics 90% complete
    2/8/2013: completely new chasis (required due to noise from EMI)
    2/25/2013: successfully completed first mini expedition with this setup, no problems other than still working on some audio issues
    2/28/2013: all audio issues fixed! main Tasker configuration done and working well, main apps all installed and configured
    3/10/2013: steering wheel button integration complete
    9/16/2013: hardware fix for intermittent steering wheel button issues, upgraded ROMs using some different apps, re-did all the tasker automation
    2/26/2014: integrated rear-screen projection system for movies at camp
    8/11/2014: re-wrote the steering wheel button interface app and changed to Bluetooth OBDII dongles (instead of USB)
    9/21/2014: implemented APRS with the tablet + HAM radio + a Bluetooth TNC
    11/19/2014: removed entire system to simplify some of the wiring, accessories and try to improve audio (noise) - RE-INSTALL IN PROGRESS

    Last edited by theksmith; 11-19-2014, 09:22 AM.

  • #2
    Sounds good.goods connector options

    Sent from my GT-N7000 using Tapatalk 2


    • #3
      i'm all back into the whole carputer thing now even though i don't have my new tablet yet. so yesterday i decided to play around with the Chrysler PCI data bus so that i can one day interface with the steering wheel audio controls. it's not a priority for this project at all, but just a tangent i ended up on.

      the common solution seems to be using the RC JoyCon device and hacking into the remote wires right as they leave the steering column, or for a cleaner install, pairing the JoyCon with a PAC Audio steering wheel control interface.

      i want to learn more about the underlying system and build my own interface using a microcontroller (Arduino or similar). i already knew from the factory service manual that the radio, seats, doors and more all talk over a PCI data bus coordinated by the body control module (BCM). after some googling i was able to find out that the bus uses the SAE J1850 VPW single-wire interface/protocol. i also found out that the OBDII protocol for my rig is the same and that all the data busses are connected, so i could just hook right into the OBDII port to interface with all of the Jeep's networking systems.

      i hooked in and was able to identify some of the messages that i was interested in right away:

      the radio receive address is 11, the following messages are from the steering wheel controls to it (first number is the transmit ID and the second is the data sent when pressed):
      00 02 = right center button (radio mode cycle)
      00 80 = left center button (station memory cycle)
      02 00 = right down button (volume down)
      04 00 = right up button (volume up)
      10 00 = left down button (track back)
      20 00 = left up button (track next)

      A0 appears to be the receive address for the portion of the BCM or some other module that controls door locks and window regulators, i observed the following transmit ID's and data values addressing it:
      01 00 = lock all
      04 00 = unlock all
      20 00 = passenger window down
      10 00 = passenger window up
      (i forgot to jot down the other windows, but if you understand what all this means then you'll understand how to grab the other id/data pairs)

      the setup i was using only successfully read data, i couldn't send anything into the network - need to work more on that.

      i should be able to observe the steering wheel control codes using nearly any microcontroller and some other cheap hardware, and then signal the Android tablet through either a bluetooth or USB connection. i could emulate a keyboard and use something like the Tasker app to intercept the commands and have them do nearly anything, or i could write my own Android app to interface directly with.

      this is all pretty geeky stuff, but might help someone else that's hacking on their car's bus directly.


      • #4
        the XOOM finally came this week.

        - converted the family's existing Verizon plan to a shared one and added the XOOM (ended up at almost exactly the same price as before but with the XOOM added, but i did loose my grandfathered unlimited data phone plan)

        - installed clockworkmod recovery (tiamat version, backed up the factory rom, then installed CyanogenMod 10 (latest stable for the CDMA XOOM)

        - tested the HDMI out feature. found that all sound is directed there whenever it's plugged in and volume is no longer adjustable on the tablet. also the screen gets a black bar on the bottom above the nav area, not sure if that is just a problem with cyanogenmod or not. according to this Motorola help page, it's only supposed to cut off the bottom nav area from the HDMI output - but it doesn't say anything about actually resizing the display on-device. however, due to these limitations, i won't be using the HDMI out as my primary sound output. i think that i will still use the speaker dock still instead of the regular dock so that i have the option to hook an external projector to the tablet for camping.

        - tried the powered Carnetix USB hub with an OTG cable and a few devices to see what worked (flash drive recognized, USB OBDII reader recognized, old 250GB 2.5" external drive did not work - hung entire system till removed)

        i'm using a 32GB microSD that i already had for now, but i did read several reports of people confirming that a 64GB card works, so i'll get one of those eventually. i'd still like to be able to use an external HD with the system instead of just flash drives too (for media storage), i'll have to research more on why my HD didn't work.


        • #5
          i also dissected the standard and speaker docks this past week, here are my observations:

          standard dock:
          - uses a regular charger and just passes through the ~12v to the dock charging pins
          - the micro USB connection uses 200k ohms between the ID pin and ground to signal the tablet that it's in a dock
          - the audio adapter circuitry (which provides the line-out) connects via the micro USB port and is powered completely via that port (not via the external charger connection)

          speaker dock:
          - uses a separate charger that comes with the dock, rated at 19v and 1.58 amps. the extra power was likely needed to drive the amp for the speakers.
          - the internal circuitry steps the voltage down only to ~13.3 volts for the tablet charging pins. interesting that they didn't need to be more precise, i guess the tablets own internal regulators can accept a bit of a range (not just 12v)
          - the micro USB ID pin to ground is at 200k ohms just like in the standard dock
          - the audio adapter is connected via the micro USB just like in the standard dock.
          - the HDMI port is completely a pass-through to the external plug on the dock, it provides no functionality to the dock circuitry

          modding for USB output:

          the factory docks are very useful for getting power into the XOOM and getting sound out. most people will probably want to just leave them intact electrically speaking and do all other interfacing with the tablet through WiFi and bluetooth. however, i want to connect several devices via USB, so i modded the dock's micro USB connector to be a USB OTG (host) cable.

          to do this, i first cut the dock micro USB connector free from the dock's circuit board. then i cut off the female end of a USB extension cable. i attached these 2 items together, matching each color of wire. there will be one extra brown wire from the micro USB side - you hook that to the 2 black wires (grounding the ID pin is what makes it an OTG cable).

          on a side note, i tried to convert the standard dock's audio adapter into a regular USB accessory and hook it up via the OTG cable (to enable me to get USB host AND still use the audio adapter). this didn't work and i'm really not sure why. it just wasn't recognized at all (nothing new in the dmesg output when plugged in or removed).

          so looks like i'll be doing bluetooth for audio output, though i am still investigating a couple of other options.

          the physical mods to the dock will come later, once i've finalized the tablet mounting.


          • #6
            i wanted to document the goals for this project, so here they are in order of importance:

            - every feature must function at least as reliably and intuitively as a dedicated factory or aftermarket device would.
            - does not have to look "factory" but everything should be neat, clean, and not intrusive.

            1 - Mapping & Navigation
            must have: gps, offroad topo maps (offline capable), gps track & waypoint loading/saving, be removable to plan routes at camp, on-road maps (offline)
            nice to have: on-road navigation (offline), traffic, POI search/info/directions (offline at least for gas, more when online)

            2 - Vehicle Support
            must have: display & search factory service manual in PDF, OBDII DTC code reading, DTC code database/lookup
            nice to have: OBDII DTC clear, display misc vehicle attributes like voltage and external temperature

            3 - Entertainment
            must have: mp3 player, large mp3 file storage, factory steering wheel remote control button support, work with factory amp
            nice to have: movie player, enough storage for many movies, A/V output compatible with a projector, act as WiFi hotstop for other people's tablets

            some other ideas, if i get past the basics:

            - multiple camera integration (i may just go with a separate screen for this, not sure yet)
            - integration with external sensors like a temp sensor in the 12v fridge (and an over-temp alarm)
            - ability to track vehicle if stolen, ability to send txt msg to shut it down, ability to record photos/videos during a break-in
            - integration with APRS from HAM radio
            - use of internal and external sensors to record trip info like pitch/roll, g-force, altitude, external temp, etc.
            Last edited by theksmith; 02-04-2013, 07:12 AM.


            • #7
              ram-mount (RAM-HOL-MOTO3) + speaker dock (89445N) + dremel =

              ditching the factory radio and the ram-mount will attach to a plate where the radio was, so imagine the above sitting here:

              not much left of the speaker dock:

              mount and dock as a unit (ignore the aluminum sticking up, that will be trimmed):

              i usually try to keep my mods to the factory trim at a minimum, but i did need to hack into this piece a bit. a replacement is pretty cheap on ebay though, so if i ever do something different i can get a new one.

              the bottom of the screen will sit out form the trim so that the tablet leans back, angling it up towards me a bit. the top will actually sit further back than shown here once i trim some more.

              it's no custom fiberglass, but i think it'll be clean by hiding all the wires and still allow the tablet to come in and out fairly easily.

              i should note that the speaker dock, even when not modified, can be a bit of a PITA to get the tablet into. just too many connectors fighting their way in. so with this setup their is definitely a trick to getting the tablet docked and most people would be better off with the standard dock unless you just need the HDMI out. this will be fine for occasionally removing the tablet though.
              Last edited by theksmith; 02-04-2013, 07:12 AM.


              • #8
                more on OBDII / system bus interfacing...

                $10 Chinese "elm327 compatible" OBDII USB interface from ebay:

                - no problems reading the J1850 VPW bus
                - could not write to the bus (could set custom header, but sending data always returned FB ERROR)

                second try, OBDLink SX from (purchased from MP3Car through Amazon)

                - no problems reading or writing to the bus
                - having it attached to the Jeep without a usb connection made the Jeep go insane! threw codes, dash lights on, relays in the doors clicked, etc. i read on another thread that it does not have an internal 5v regulator, and relies on the USB power, so that's probably why. not sure why it doesn't fail gracefully without power though. returned to amazon without issue.

                third try, ElmScan Compact 5 from (purchased from MP3Car through Amazon)

                - no problems reading or writing to the bus
                - no problems with it attached to the Jeep without having a USB connection

                these devices with Android...

                - all 3 devices would show up in dmesg when connected, i believe they were all using the FTDI serial-to-USB chipset (or a clone of it)

                - i used the free app "Slick USB 2 Serial Terminal" to test the devices with raw commands. it uses the company's own commercial "driver" behind the scenes, which is available to devs for a price. however, i found an open source library that i can use for any custom development that i do later:

                - i have not yet decided on a primary OBDII app, but Torque Pro and TouchScan should both work with this setup. i also like the looks of DashCommand, but i need to email them to find out if they support USB OBDII devices.


                • #9
                  ordered some parts...

                  D-Link 7 Port USB 2.0 Hub (DUB-H7)

                  it's a powered hub, what else can i say. mainly got it because it's very compact for the number of ports, uses standard 5v power, and has hardly any negative reviews.

                  also needed a super short USB A to B cable to hook the XOOM to the hub, which i also found on Amazon:

                  Logitech Wireless Speaker Adapter for Bluetooth (980-000540)

                  after some research on the varied support for USB DAC's, i've decided to just try the typical BlueTooth method of getting sound out of the tablet.

                  this Logitech unit isn't made anymore and is going for a premium. it has excellent reviews regarding sound quality. several people on Amazon specifically said it sounded much better than the similar Belkin unit. there were also numerous reviews saying that it automatically re-pairs with your device. that is one of my biggest concerns with BT, i don't want to have to keep fiddling with connecting to something manually. another plus is that it also takes standard 5v power.

                  PAC LD10 Line Driver

                  i'm keeping the factory Infinity amp for now, and it expects speaker-level inputs. so i need to up the output from the BlueTooth adapter with a line driver. chose this one as it seems fairly compact, has gain adjustment, and has some noise prevention measures (including the ability to tie or float the output grounds to chasis ground).

                  UPDATE: this LD10 may turn out to have been a bad purchase, have a different line-driver on order currently...

                  also needed another shorty cable which i found on Amazon again:

                  M3-ATX Intelligent 125 Watt Automotive Power Supply

                  an intelligent PS is not a strict requirement as i could use a standard vehicle charger for the tablet, and any old USB adapter to power the hub and the BlueTooth adapter. however, after my last car pc project (and some other recent electronics projects), i've really come to appreciate how inconsistent or poorly regulated power can create gremlins that are a PITA to track down.

                  this will give me a single smart supply for both 5v and 12v - i won't even be using the ATX connector, just the drive power leads. it will survive cranking so that i don't have to work in delays on my Tasker actions. it also has an adjustable timed shutdown and voltage monitor shutdown. and a final feature is the anti-thump (slight delay) amp turn on output.

                  besides, it probably actually takes up less room than a XOOM car charger and 2 USB car adapters and outlets to hold them all!
                  Last edited by theksmith; 02-14-2013, 08:09 AM.


                  • #10
                    Great project ! Like the way you integrat your xoom.

                    Xoom support otg ?


                    • #11
                      Originally posted by Hydr0 View Post
                      Great project ! Like the way you integrat your xoom.

                      Xoom support otg ?

                      yes, i modified the USB cable from the dock to be an OTG cable.


                      • #12
                        started the chasis for all the tablet support components. this will bolt in place of the 1.5 din factory radio, behind the tablet.

                        the top holds the power supply, and hopefully can also fit the BlueTooth adapter, line-driver, and OBDII interface:

                        the bottom holds the USB hub and all the power distribution blocks (chasis ground, +batt, +ign, regulated +5v, regulated +12v):

                        i am able to connect everything through a single radio harness - constant and switched power, audio out, amp turn on, and even OBDII (since the radio PCI bus is connected in with the DLC bus).


                        • #13
                          since in OTG mode the tablet provides power over the USB cable, the hub was staying on even when it's power was cut. i didn't want this to happen as it would drain the tablet's battery when the vehicle was off.

                          to fix the situation i cut the +5v power wire (red) in the OTG cable. however, then the DLink hub wouldn't fully come on even when it had external power. seems it waits till it sees the +5v from the uplink port... so to fix that i bridged the external +5v to the uplink power pin. again, this is only safe (or necessary) because i severed the power connection in the OTG cable.


                          • #14
                            the M3-ATX power supply is a little too intelligent for this application. in order to come all the way on, it expects a signal from a motherboard. this is a standard ATX power interface thing, a motherboard usually acknowledges that all is good and it's receiving power by grounding the PS_ON pin.

                            since i have no motherboard in this project, i simply placed a jumper between pins 14 & 15. this did allow the power supply to come on and give me the +12v and +5v power on the drive power cable that i wanted.

                            i set the supply's jumpers for it to shut down in 5 seconds (after ignition off). what i didn't realize was that only sends the motherboard the shutdown signal after 5 secs. however, since i have permanently jumpered the PS_ON signal, the supply actually doesn't shut down till the "hard-off" setting, which is 90 seconds.

                            this all just means the tablet won't be able to start a tasker action to pause music, turn the screen off, etc. until at least a minute and half after the vehicle is off... a little longer than i wanted.


                            • #15
                              still have a lot to do, but i did get the chasis and tablet mounting all worked out...

                              also set the wallpaper to be a picture from the front of my Jeep: