Installing RCP MK III into an Open Cockpit Car
Moderators: JeffC, rdoherty, stieg, brentp
Installing RCP MK III into an Open Cockpit Car
Decided to quit pestering Brent directly and start a forum thread.
I'm installing a RCP Mk III into a Palatov D2 with roadster bodywork.
The car is powered by a GM LS3 E-rod crate motor, so it has OBDII. The issue is the original instrumentation package (custom-made for the car) did not work reliably for me. Palatov have since moved on to Aim dashes. I decided to be different and go with RCP. I plan to use this car as a test-bed to get familiar with RCP.
If this goes well, I may migrate my Spec Racer Ford over to RCP. It's part of a larger effort to get on top of data acquisition. I like Aim's hardware, but Race Studio's interface leaves a lot to be desired, not least of which is the requirement to run Windows. RCP appeals as an open platform with a modern software stack.
One wrinkle: my car is open cockpit. Since most of you guys out there have tin tops, let me explain what the two big issues are:
1) The dash is almost always in direct sun, and most phone / tablet LCDs are just too dim to be read in sunlight. On top of this, they are often highly-reflective which makes the problem worse.
2) When we drive in the rain, everything gets wet, and so everything must be at least water resistant, if not outright waterproof.
On the other hand, this car has 430HP, and weighs 1800 lbs, and is currently running slicks. I'm not *planning* on driving in the rain any time soon. I just don't like the idea of having parts on the car that can't get wet. But waterproofing is the lowest priority.
Stage 1: get RCP mounted securely, minimally operational, using existing android tablet. Remove existing under-dash unit. This seemed trivial at first, and I got some things working already. I will cover the remaining issues in a subsequent post.
Stage 2: switch to a linux SBC as a head unit, with a sunlight readable TFT display. I am looking at the following "sunglight readable" "waterproof" display. https://www.xenarcdirect.com/709CNH-7-i ... nitor.html. there are less pricey options, but I decided to stick with something advertised as being for this purpose just to eliminate this one particular factor.
Stage 3: Ruggedize both the RCP and Linux SBC. This will consist mainly of mounting both inside (a) water-proof enclosure(s), with appropriate pass-throughs for the wiring. Not sure if cooling will be an issue. If it is, I will document that.
Stage 4: Custom analog gauges. Because I am a geek, I have been itching to do a custom dashboard with real dials ever since I first saw these https://www.adafruit.com/product/2424. Also, I think this might be a good first project for learning KiCad. I don't know if I will prefer the analog dash to an LCD unit in the end, it just seems like a fun project, and there may be people out there who would find it useful. I have a ShiftX 3 unit, and that might be a reasonable starting point for this project in one way or another.
It's all fairly ambitions, so I dunno how long it's going to take or if I will stick with it. Active interest from the community will certainly help motivate me
I'm installing a RCP Mk III into a Palatov D2 with roadster bodywork.
The car is powered by a GM LS3 E-rod crate motor, so it has OBDII. The issue is the original instrumentation package (custom-made for the car) did not work reliably for me. Palatov have since moved on to Aim dashes. I decided to be different and go with RCP. I plan to use this car as a test-bed to get familiar with RCP.
If this goes well, I may migrate my Spec Racer Ford over to RCP. It's part of a larger effort to get on top of data acquisition. I like Aim's hardware, but Race Studio's interface leaves a lot to be desired, not least of which is the requirement to run Windows. RCP appeals as an open platform with a modern software stack.
One wrinkle: my car is open cockpit. Since most of you guys out there have tin tops, let me explain what the two big issues are:
1) The dash is almost always in direct sun, and most phone / tablet LCDs are just too dim to be read in sunlight. On top of this, they are often highly-reflective which makes the problem worse.
2) When we drive in the rain, everything gets wet, and so everything must be at least water resistant, if not outright waterproof.
On the other hand, this car has 430HP, and weighs 1800 lbs, and is currently running slicks. I'm not *planning* on driving in the rain any time soon. I just don't like the idea of having parts on the car that can't get wet. But waterproofing is the lowest priority.
Stage 1: get RCP mounted securely, minimally operational, using existing android tablet. Remove existing under-dash unit. This seemed trivial at first, and I got some things working already. I will cover the remaining issues in a subsequent post.
Stage 2: switch to a linux SBC as a head unit, with a sunlight readable TFT display. I am looking at the following "sunglight readable" "waterproof" display. https://www.xenarcdirect.com/709CNH-7-i ... nitor.html. there are less pricey options, but I decided to stick with something advertised as being for this purpose just to eliminate this one particular factor.
Stage 3: Ruggedize both the RCP and Linux SBC. This will consist mainly of mounting both inside (a) water-proof enclosure(s), with appropriate pass-throughs for the wiring. Not sure if cooling will be an issue. If it is, I will document that.
Stage 4: Custom analog gauges. Because I am a geek, I have been itching to do a custom dashboard with real dials ever since I first saw these https://www.adafruit.com/product/2424. Also, I think this might be a good first project for learning KiCad. I don't know if I will prefer the analog dash to an LCD unit in the end, it just seems like a fun project, and there may be people out there who would find it useful. I have a ShiftX 3 unit, and that might be a reasonable starting point for this project in one way or another.
It's all fairly ambitions, so I dunno how long it's going to take or if I will stick with it. Active interest from the community will certainly help motivate me
- Attachments
-
- Palatov D2
- d2.jpg (204.55 KiB) Viewed 33686 times
Last edited by emdash on Fri Mar 22, 2019 2:47 am, edited 1 time in total.
First Steps
*Note* I will try to add pictures tomorrow.
The first thing I did was install the RCP app onto the existing tablet, which is an Android of some sort (I think a Nexus 7, but it's hard to tell). I had to do this via [tt]adb[/tt], because I didn't have access to the Play store, but fortunately debugger tools were already enabled on the tablet, and whatever ancient version of the android tools I have seemed to work just fine to install the APK directly.
I puttered around with settings for a while, getting ECT, Oil Temp, RPM, and Battery voltage configured on the RCP unit, and flashed.
Testing the unit in the car, I hit my first problem: the OBDII port is always powered, and this car doesn't have a master battery disconnect (yet). So I decided to hold off on mounting for the time being. But I did start the engine and verify that the data seemed plausible. Also, the Race Capture dash software is nice and responsive.
The only channel that doesn't seem to be reading right is the battery voltage, which is reading values between 0.23 with the engine off, and 0.34 with the engine running. I'm not sure what is ultimately the issue here. Is it because it's pulling power from OBDII? Is it not mapped or scaled correctly?
I will investigate this issue next. Because, unfortunately, this channel is the one I care about most: The charging voltage is a proxy for "is my water pump still turning?", and I have been having issues with belts jumping off. This is the one signal that has to work reliably.
The first thing I did was install the RCP app onto the existing tablet, which is an Android of some sort (I think a Nexus 7, but it's hard to tell). I had to do this via [tt]adb[/tt], because I didn't have access to the Play store, but fortunately debugger tools were already enabled on the tablet, and whatever ancient version of the android tools I have seemed to work just fine to install the APK directly.
I puttered around with settings for a while, getting ECT, Oil Temp, RPM, and Battery voltage configured on the RCP unit, and flashed.
Testing the unit in the car, I hit my first problem: the OBDII port is always powered, and this car doesn't have a master battery disconnect (yet). So I decided to hold off on mounting for the time being. But I did start the engine and verify that the data seemed plausible. Also, the Race Capture dash software is nice and responsive.
The only channel that doesn't seem to be reading right is the battery voltage, which is reading values between 0.23 with the engine off, and 0.34 with the engine running. I'm not sure what is ultimately the issue here. Is it because it's pulling power from OBDII? Is it not mapped or scaled correctly?
I will investigate this issue next. Because, unfortunately, this channel is the one I care about most: The charging voltage is a proxy for "is my water pump still turning?", and I have been having issues with belts jumping off. This is the one signal that has to work reliably.
I ordered the 7" display last night, so now I'm committed to moving forward.
I'm using this guide as a starting point: https://wiki.autosportlabs.com/RaceCapt ... spberry_Pi
These are my requirements for the instrumentation package as a whole, so you can better understand my decision making:
I'm using this guide as a starting point: https://wiki.autosportlabs.com/RaceCapt ... spberry_Pi
These are my requirements for the instrumentation package as a whole, so you can better understand my decision making:
- Has a sunlight-readable, all-weather display.
- Have as few cables running through the car as possible.
- Be easy to remove the system from the vehicle for maintenance.
- Operate reliably in the harsh environment of the race car.
- Should be reparable -- build things you can take apart.
- Should be powered by the car itself -- no extra batteries.
- Should not draw power with the ignition off, and boot quickly when the ignition is switched on.
- Not be too ugly. No rough edges, wiring, or lumpy masses of glue sticking out. Doesn't have to be stylish.
- Not be too large -- ideally would fit under driver or passenger seats.
- Not take too long to put together: I'm giving myself to the end of April.
- Total budget of installed components $1300. I'm only going include up the parts I actually end up using.
- Using off-the-shelf components as much as possible. Keep modifications and fabrication to a minimum.
- We need a single-board computer to drive the display.
- Both RCP Mk III and SBC will be contained in a single enclosure, which should be metal to help eliminate noise.
- I am opting for an internal DC-DC converter, so there an be a single 12V connection for power.
- The enclosure will be water-tight, with some kind of cable gland to seal the HDMI, power, and CAN connections.
- I will consider the effects of mechanical vibration and heat on the components.
- Which single-board computer will I use?
- Which enclosure will I use?
- Will I power the RCP from the RJ45 port, or the molex connector?
- Will I supply CAN from the RJ45 port or the molex connector?
- How will I pass the HDMI signal through the enclosure?
- How will I keep the size down?
- Will I have issues with the internal USB connections? (Here I am thinking mechanical vibration.)
- Attachments
-
- rcp.png (28.65 KiB) Viewed 33666 times
Last edited by emdash on Sat Mar 23, 2019 5:04 am, edited 3 times in total.
Single Board Computers
While I like Raspberry Pi in general, I'm not sure if it's the right choice here.
Let me be clear: it's not a good idea to run an embedded system off an SD card in the harsh environment of a race car. It's an easy way to get started, but it is bad for long-term reliability. I have had SD cards just randomly die on me, all the time. I have also had them temporarily fail after a rough shock.
I am also a bit concerned about the reliability of standard HDMI and USB connections, since they rely entirely on friction to stay in place. Race cars are subject to shocks that could knock cables loose -- or at least temporarily disrupt the signal. That's also, obviously, bad for reliability.
Finally, I want people to be able to replicate this setup if they find it useful.
I started with a budget of $1300. In round terms, I've already spent $460 on the display, and $620 on the RCP MK III and cable. So that only leaves $220 for *everything* else, including the SBC, housing, cables and hardware, which is not much. Can we do it? We're looking for a single board computer that:
It's pretty clear that none of the Official Raspberry Pi models are actually acceptable, because they lack any internal storage at all. I understand why, but I wish they at least offered a variant of, say, the Pi 3 A with internal storage.
So, for now, I've settled on the BeagleBone black -- even though it's a bit of a compromise. I don't have time to look at every option, so I may be overlooking something more suitable. Feel free to make suggestions.
BeagleBone
BeagleBone Black: promising, if not perfect. I'm going to try it and see how it goes.
Let me be clear: it's not a good idea to run an embedded system off an SD card in the harsh environment of a race car. It's an easy way to get started, but it is bad for long-term reliability. I have had SD cards just randomly die on me, all the time. I have also had them temporarily fail after a rough shock.
I am also a bit concerned about the reliability of standard HDMI and USB connections, since they rely entirely on friction to stay in place. Race cars are subject to shocks that could knock cables loose -- or at least temporarily disrupt the signal. That's also, obviously, bad for reliability.
Finally, I want people to be able to replicate this setup if they find it useful.
I started with a budget of $1300. In round terms, I've already spent $460 on the display, and $620 on the RCP MK III and cable. So that only leaves $220 for *everything* else, including the SBC, housing, cables and hardware, which is not much. Can we do it? We're looking for a single board computer that:
- Must be capable of running a dashboard application from internal storage (NOT an SD Card!).
- Must be capable of driving display at native resolution (1024x600), or reasonably close to it.
- Must cost under $100.
- Be readily available for at least a few years in case I need spares, or someone wants to replicate this setup.
- Ideally capable of running the official race capture app.
- Ideally be no larger than the race capture module itself, since I'm trying to keep the size down.
- Ideally Would facilitate mechanical retention of all important connections (power, USB, and display).
It's pretty clear that none of the Official Raspberry Pi models are actually acceptable, because they lack any internal storage at all. I understand why, but I wish they at least offered a variant of, say, the Pi 3 A with internal storage.
So, for now, I've settled on the BeagleBone black -- even though it's a bit of a compromise. I don't have time to look at every option, so I may be overlooking something more suitable. Feel free to make suggestions.
BeagleBone
- At least in theory, itcan drive the display at the native resolution.
- It's small enough. Not as small as I would like, but small enough.
- It has internal storage, so it's capable of running *something* off internal storage.
- It's an open board, so I should be able to tweak the OS to get the boot times down and free up ram and storage.
- It's part of an ecosystem that's been around for a while. Not likely to disappear tomorrow, and there are alternatives in the same form factor.
- It's cheap enough for my budget.
- It has a barrel connection for power, which I feel will be more reliable than micro usb. In a pinch, this will facilitate soldering the power leads directly to the boards, should I decide that's necessary.
- While it has internal storage, it is tiny at 4GB. I anticipate having to heavily customize both the OS and the application software. Or else, write my own dashboard application specifically for this project. If I do that, it'll be quick-and-dirty.
- While smaller and somewhat thinner than the Raspberry Pi B, it's still larger than I would like.
- At $55, some might find it too dear. But it fits comfortably within my budget.
- Will have to improvise some way to mechanically retain the micro HDMI and USB host connections.
BeagleBone Black: promising, if not perfect. I'm going to try it and see how it goes.
I run a race capture pro mk2 with the bluetooth to android cell phone (I just use an old cell phone, it just can't be too old since the app doesn't run on really old phones).
I have a formula car and just mounted the phone over the dash (I tried putting it on the steering wheel, but couldn't see it very well). I do SCCA racing and haven't had any problems with the battery for 30-40 minute race sessions, if you do longer races that might be an issue (but you can probably just hook up a charging cable to the phone).
The rcp is mounted about a foot away from the dash (under the front/nose bodywork), it's a little bit of a pain to get to the SD card slot or USB port, but it's out of the rain.
I have a formula car and just mounted the phone over the dash (I tried putting it on the steering wheel, but couldn't see it very well). I do SCCA racing and haven't had any problems with the battery for 30-40 minute race sessions, if you do longer races that might be an issue (but you can probably just hook up a charging cable to the phone).
The rcp is mounted about a foot away from the dash (under the front/nose bodywork), it's a little bit of a pain to get to the SD card slot or USB port, but it's out of the rain.
Yes, it's certainly possible to do it like this. I have different goals, which I've outlined. The display I've ordered is ~1000 nits. It's much brighter than any cell phone display, and waterproof also. So I have a bit of a challenge in figuring out how to drive the display, but I honestly don't mind doing things like this. And perhaps others can benefit from it.tfriest wrote:I run a race capture pro mk2 with the bluetooth to android cell phone (I just use an old cell phone, it just can't be too old since the app doesn't run on really old phones).
I have a formula car and just mounted the phone over the dash (I tried putting it on the steering wheel, but couldn't see it very well). I do SCCA racing and haven't had any problems with the battery for 30-40 minute race sessions, if you do longer races that might be an issue (but you can probably just hook up a charging cable to the phone).
The rcp is mounted about a foot away from the dash (under the front/nose bodywork), it's a little bit of a pain to get to the SD card slot or USB port, but it's out of the rain.
Other Single Board Computers
Update I've ordered the BeagleBone Black, which hopefully will arrive on Tuesday along with the display.
These are some alternatives to the BeagleBone Black, which have more ram and storage. I will update it periodically.
These are some alternatives to the BeagleBone Black, which have more ram and storage. I will update it periodically.
- https://www.96boards.org/product/hikey960/ HiKey 960. Starting at $240, it exceeds my budget (and is currently sold out). But ticks all the other boxes.
- https://libre.computer/ The Le Potato lineup come with 2GB of ram, and allow you to add eMMC storage (sold separately).
- https://www.xenarcdirect.com/RT71-indus ... blets.html Xenarc, who made the display I've ordered, also make a rugged android tablet. Probably the simplest option for most.
Hi,
We've looked at the beaglebone, but we don't think the processor has the capability to run the app sufficiently well.
The Raspberry Pi runs the app well, but has the drawback of running everything from SD card, which, as you pointed out, is not as robust as EMMC. Still, with the many many customers running the Pi, I can't remember seeing a failure that wasn't attributed to a cheap / dodgy SD card.
So, for a successful Raspberry Pi setup we'd recommend a high quality SD card - perhaps even an industrial grade SD card (yes, this is a thing). If you also keep a spare SD card handy you should be covered in all realistic scenarios.
Still, I understand if you don't want to use SD card for root / boot on principal. You may consider the Asus Tinkerboard; the latest version offers on board EMMC and it seems that the RaceCapture app can be made to run with this guide:
https://groups.google.com/forum/#!topic ... wBnYxe969g
Cheers!
We've looked at the beaglebone, but we don't think the processor has the capability to run the app sufficiently well.
The Raspberry Pi runs the app well, but has the drawback of running everything from SD card, which, as you pointed out, is not as robust as EMMC. Still, with the many many customers running the Pi, I can't remember seeing a failure that wasn't attributed to a cheap / dodgy SD card.
So, for a successful Raspberry Pi setup we'd recommend a high quality SD card - perhaps even an industrial grade SD card (yes, this is a thing). If you also keep a spare SD card handy you should be covered in all realistic scenarios.
Still, I understand if you don't want to use SD card for root / boot on principal. You may consider the Asus Tinkerboard; the latest version offers on board EMMC and it seems that the RaceCapture app can be made to run with this guide:
https://groups.google.com/forum/#!topic ... wBnYxe969g
Cheers!
Board just arrived today. Display should arrive sometime today or tomorrow also.brentp wrote:Hi,
We've looked at the beaglebone, but we don't think the processor has the capability to run the app sufficiently well.
The Raspberry Pi runs the app well, but has the drawback of running everything from SD card, which, as you pointed out, is not as robust as EMMC. Still, with the many many customers running the Pi, I can't remember seeing a failure that wasn't attributed to a cheap / dodgy SD card.
So, for a successful Raspberry Pi setup we'd recommend a high quality SD card - perhaps even an industrial grade SD card (yes, this is a thing). If you also keep a spare SD card handy you should be covered in all realistic scenarios.
Still, I understand if you don't want to use SD card for root / boot on principal. You may consider the Asus Tinkerboard; the latest version offers on board EMMC and it seems that the RaceCapture app can be made to run with this guide:
https://groups.google.com/forum/#!topic ... wBnYxe969g
Cheers!
WRT BBB, I am most concerned about the lack of ram than the processor speed itself.
Raspberry Pi is always a fallback option.
One nice thing the BBB has going for it is an integrated charging circuit that supports "safe shutdown", which I think is going to be key in this application. I know I said "no batteries" somewhere up there, but a small battery to enable safe shutdown seems like a reasonable compromise.
Something that might be interesting to try would be to run the app in Android on the BBB... that would give a rough idea of what kind of performance to expect. I kinda want to try it just cause.
I will add the Asus Tinkerboard to the list above.
P.S. I notice that this post got pinned, I'm kindof thinking that maybe this thread should be split up into one or more threads:
- General resources for open-cockpit cars. (This thread)
- Running RCP on embedded SBCs
- A dedicated thread for my specific D2 install, so regular folks don't have to be subjected to my madness.
Update
So, I started writing an alternative dashboard application, which means I have been focused on that rather than the actual installation.
Basically, I went through the rigamarole of creating a buildroot project to get a raspberry pi to boot straight into the app, and was kinda disappointed with both the startup time (21s, even after optimizing the kernel). I decided I could do better, but this pushes my whole time table out. I needed to get a proof-of-concept up and running, before spending time figuring out how to install hardware I may or may not use.
But I've got that proof-of-concept now, so it's time to return to the question of how to install the hardware.
Since I'm writing my own app, I get to decide which hardware to prioritize. So, I'm going back to the BeagleBoneBlack, for all the reasons I originally settled on it. So the rest of this thread will be focused on the actual installation.
Basically, I went through the rigamarole of creating a buildroot project to get a raspberry pi to boot straight into the app, and was kinda disappointed with both the startup time (21s, even after optimizing the kernel). I decided I could do better, but this pushes my whole time table out. I needed to get a proof-of-concept up and running, before spending time figuring out how to install hardware I may or may not use.
But I've got that proof-of-concept now, so it's time to return to the question of how to install the hardware.
Since I'm writing my own app, I get to decide which hardware to prioritize. So, I'm going back to the BeagleBoneBlack, for all the reasons I originally settled on it. So the rest of this thread will be focused on the actual installation.
High-End Split Chord Grips / Glands / "Entry Plates&quo
For those not familiar, a Chord Grip a.k.a. cable gland, is just a way to run a cable into an enclosure that's fast and easy and water-tight. Normally this means the cable can't have a connector on it, otherwise there's no way to pass it through. But there are split ones. I just can't seem to find any.
The only thing I can find so far are these:
https://trimantec.com/collections/all#/ ... Management
I'm considering just dropping the $50 it'll cost to get one of these, because it really would save time.
The only thing I can find so far are these:
https://trimantec.com/collections/all#/ ... Management
I'm considering just dropping the $50 it'll cost to get one of these, because it really would save time.
- Attachments
-
- Icotek-48204-OPT_4f14e388-e23e-45a6-99a0-06513c1e445b_375x.jpg (8.34 KiB) Viewed 33256 times
I got a bit further, good enough to validate that the overall setup works, not compact enough for the car in question.
The sad story is that I'm selling that car soon, so the immediate need for the project is gone. But I know a lot of people who build racecars, so I may find motivation to finish what I started.
I did make some real progress on the software side, and I'll be continuing to work on that independently. Keep your eye on uDashboard.
The sad story is that I'm selling that car soon, so the immediate need for the project is gone. But I know a lot of people who build racecars, so I may find motivation to finish what I started.
I did make some real progress on the software side, and I'll be continuing to work on that independently. Keep your eye on uDashboard.