Sounds good.goods connector options
Sent from my GT-N7000 using Tapatalk 2
(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.
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
PROJECT STATUS UPDATES
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
current: only item still todo (from my phase 1 goals) is the steering wheel remote buttons
Last edited by theksmith; 02-28-2013 at 05:16 AM.
Sounds good.goods connector options
Sent from my GT-N7000 using Tapatalk 2
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.
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.
i also dissected the standard and speaker docks this past week, here are my observations:
- 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)
- 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.
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 at 06:12 AM.
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 at 06:12 AM.
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 ScanTool.net (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 ScanTool.net (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: http://code.google.com/p/android-ftd...river-package/
- 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.
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: http://www.amazon.com/gp/product/B0058KDWKC/
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: http://www.amazon.com/gp/product/B000I963XQ/
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 at 07:09 AM.
Great project ! Like the way you integrat your xoom.
Xoom support otg ?