BMW R1200GS 2010 Motorcycle dashboard design questions from newbie

Hello everyone,
I managed to get a lot of information from my motorcycle’s CanBus. In particular, all of the following:

  • Speed (km/h)
  • Engine RPM
  • Gear
  • Odometer (Kilometers)
  • Ambient Temperature
  • Throttle Valve Position (%)
  • Fuel Level to reserve (%)
  • Engine Temperature (Celcius)
  • Air Intake Temperature (Celcius)
  • Turn signals
  • High Beam
  • Heated Grips ( - / HG_Low / HG_High )
  • ESA Preload ( 1:Rider / 1+:Rider+Luggage / 2:Rider & Passenger / - )
  • ESA Damping ( Comf / Norm / Sport / - )
  • ABS Warning (1 before riding / 0 when abs is initialized)
  • ABS OFF (When abs is forced to OFF by driver)
  • Side Stand up/down ( 0 / 1 )
  • Clutch Lever ( 0 / 1 )
  • Brake Lever ( 0 / 1 )
  • Brake Pedal ( 0 / 1 )
  • Kill Switch ( 0 / 1 )
  • ABS Button ( 0 / 1 )
  • Info Button ( - / Short_Press / Long_Press )

As you can see, there’s a lot of specific information and I decided to try and make a specific dashboard for myself.
(Sorry for my English, but I’m translating with an automatic translator. Thanks for your understanding)

I started from the C8.1 dashboard and cleaned up everything I didn’t need (maybe even a bit too much :D).

The current situation is as follows:

My first question (simple :))
How can I make the gear indicator change color to green (for example) when it’s on N(eutral) ?

Thanks in advance for your time :slight_smile:

Good evening,

a second question/problem :slight_smile:

I have the ambient air temperature in steps of 0.5 degrees and with this it works perfectly :

<value targetId=“173” offset=“1” length=“1” unit=“C” conversion=“V*0.5-40”></value> <!-- Ambient temperature -->

My problem is that the ECU doesn’t always return a value.
In this case the value received is 0xFF. In this case, I’d like to display a simple dash (-) instead of 87.5.

I tried this:

<value targetId=“173” offset=“1” length=“1” unit=“C” conversion=“V*0.5-40” enum=“255:-”></value> <!-- Ambient temperature -->

This works for the dash, but the temperature appears without decimal information.

Can you think of a solution for me?

Thanks

good day. how did you manage to connect RealDash to your BMW? I just can’t figure out how to make the program work, I have a BMW C650GT android device connected via a Bluetooth adapter.

Hi mejnkun,
I use an OBDLink LX connected via Bluetooth to an Android smartphone. However, you have to use the information coming from the CAN and not the OBD2 information (much too slow).
Unfortunately, the original diagnostic socket does not contain the 2 CAN wires. So I analyzed the bike’s electrical circuit and recovered the 2 CAN wires from the alarm control unit.
As each motorcycle model is quite specific, I can’t help you any further, but I’ve given you the way :wink:

nb: perhaps this question should have gone in my post on the CAN level and not in the one on the Dashboard. Please keep this post for the dashboard design ) thank you

1 Like

I also have a third question :slight_smile:

The suspension settings are information that will only appear when I press a button (ESA).
The information remains for 3 seconds (approximately) and then disappears.
I would like to keep the last information on my dashboard.

Here’s the source line:

<value name="ESA Preload"  offset="4" length="1" startbit="4" bitcount="4" enum="1:1,2:1,3:1,4:1+,5:1+,6:1+,7:2,8:2,9:2,10:-,12: " ></value> 
  <!-- ESA Preload ( 1:Rider / 1+:Rider+Luggage / 2:Rider & Passenger / - ) -->
<value name="ESA Damping"  offset="4" length="1" startbit="4" bitcount="4" enum="1:Comf,2:Norm,3:Sport,4:Comf,5:Norm,6:Sport,7:Comf,8:Norm,9:Sport,10:-,12: " ></value> <!-- ESA Damping -->

When the information disappears, value 12 is returned.

In other words, I’d like to keep the last value and ignore value 12.

Any suggestions?

Thanks in advance :slight_smile:

Hello. I also have the X L SFT output. I used this connection for the Motoscan program. Now I want an electronic panel for myself. I installed RealDash and connected a Bluetooth adapter Viecar, but I can’t figure out how to make the data change… via the OBD2 monitor with commands (10C 130 2A8 294) the data stream starts, but I can’t figure out how to make everything display visually. I probably need to register the correct file for initialization, but I don’t understand what is what.As I understand it, you need to import the correct .pdsx and .xml files into the connection settings fields?with my file generated by GPT nothing worked









Neutral corresponds to value 0, so you can use the normal/warning/critical levels of your text gauge to achieve this:

  1. Select your text gauge
  2. Go to Units & Values
  3. Set range to 0 ↔ MAX GEAR
  4. Set warning and critical levels to 0 ↔ 1

Now your gauge operates on normal level when 0 and on critical level when above. Next adjust the colors:

  1. Gauge selected go to Look’n Feel->Colors->Text Color
  2. Change editing level to Normal (bottom left gear icon)
  3. Change the text color to green.

This seems to be a bug in RealDash, decimals are dropped when enum is processed with no hit. Fix will be in next release.

This would be possible with some complicated conversion math, but maybe we should implement simpler solution?

Suggestion; enum with value _ (underscore) means discard that value. Example:

<value name="ESA Damping"  offset="4" length="1" startbit="4" bitcount="4" enum="1:Comf,2:Norm,3:Sport,4:Comf,5:Norm,6:Sport,7:Comf,8:Norm,9:Sport,10:-,12:_" ></value> <!-- ESA Damping -->

That would skip setting the value completely in case value is 12.

Do you think this would be a good/generic solution?

Thank you

That was the route I had taken.

When my “enum” contains “1:1,2:N,4:2,7:3,8:4,11:5,13:6” the color doesn’t change on the “N”.
When my “enum” contains “1:1,2:0,4:2,7:3,8:4,11:5,13:6” (only numbers). Then the color does change, but the text gauge shows 0 instead of N…

Thank you

In this case, I’ve found a solution that suits me.
I removed the “enum” and used the critical level to make the temperature “disappear” if it’s above 85 C°.
That’s fine with me, but if you make a correction I’ll try the original method again.

Thank

I’ve tried using underscore but the result is the same.
It doesn’t keep the last value, it brings back a empty value and so the previous information disappears…

The underscore was a suggestion, its not implemented yet.

I need to test this, the ID200 (Body->Gear) should convert value 0 automatically to ‘N’.

Video sample of the result

Great thank to you

I wait for your next version :slight_smile:

1 Like

Video screen recording

1 Like

RealDash-v248-prerel1.apk in testing Dropbox. Changes:

New:

  • New inputs: Body->Rear Defrost Active, Windshield Defrost Active & Instrument Light Dimmer.
  • Custom Intro images have an option to adjust display time.
  • XML enum attribute value ‘_’ (underscore) can be used to discard the value completely.

Fixes:

  • Simulation mode has been restored to simulate input values.
  • Intro now plays mp4 video correctly when an image was on shown previously.
  • Android: x86 32bit build removed from the APK. x86 64bit still remains.

I tested it and it works like a charm ! :ok_hand:

Many thanks for your responsiveness

I develop on Windows and the simulation shows N for the value 0.
On Android, using my .xml file, the value 0 is displayed as 0.
I’m wondering if when I pass through enum it doesn’t automatically consider it to be text data, even if enum contains only numerical data.
What do you think?