Suzuki SDS and Kawasaki KDS bus (was: Newbie question regarding bike OBD)

2»

Comments

  • Hey @TriB sorry for my late response. I guess I wasn't following this post and missed that. I'll have to look into this! This summer I focused more on actually getting better at the track and less on the data logging since both my gopro's quit on me and I was waiting for some other sensors to come in.

    Did you do that map yourself from the link? Did you figure out all those PIDs by yourself? I believe you're the same TriB on the other forum where we talked a bunch about this in the past as well. I'll have to check there for updates as well.

    I bought mine on AliExpress as well. I can search for it in my purchases if you still need it but since this was a long time ago I won't bother unless you're still curious.
  • Hey @TriB so I've reread your post and taken some more time to reread a bunch on this stuff. It's been to long and I forget since this is only interest for me and not a day job so I have to reteach myself.

    Anyways, I don't have the SDS. I just bought the SDS connector to make a custom adapter. What did you use to take that screenshot?

    Also, how many DTC's have you uncovered? (Do you have a thread on it?) Are they all standard? What in that output relates exactly to the steering damper?? I can't remember if that was an actual output or just one where I changed a value to 96 for the purpose of discussion. In anycase, the location of that byte was just an example. I have a post titled "custom PID Clarifications (for 2013 suzuki gsxr 1000)

    Need to post there again though since for some reason my formula pid references have all changed!
  • Hi Michael,
    it was a combination from all of that in the past. I´ve found some informations on the ECU-Hacking Forum, which is now down :(
    Then I´ve found out many SID´s & PID´s myself. At the end, I borrowed a Healtech SDS and fulfilled my findings.
    I wrote several applications (ECU Emulator, Hex Viewer, etc) to not walk into the garage, all the time. And see what I´ve logged onto a SD card.
    That´s the source of the screenshot. All my findings in a single application ;)

    Now I got a cheap Ali-Diagnostic System, which is quite bad. But it shows how to read also Honda, Yamaha and several other manufacturers. And helped me to analyze my ABS, as well.

    For Kawasaki I was a bit lucky and I have all values an DTC available. But for Suzuki, I only have the DTC´s I found in several documents, free available.

    I will answer the technically and programming questions on the Arduino forum, to keep things clean, here.
  • Hello!
    I have been collecting information about SDS and RaceChrono for about a year, but I only got to the practical work with the bike's OBD interface this season, when I lost my driver's license. (

    Specification:
    -SV650 2008 (32920-27GC0)
    -ELM 327 1.5BT
    -Samsung J6+
    -RaceChrono v8.0.8

    Problem 1.
    When working with a stop-engine bike through the BT-terminal, upon request 0x2108, I receive a data packet of 52 bytes [61 08...FF] - everything is fine!
    https://ibb.co/rvyMNxZ
    4

    When establishing a connection through the BT-terminal on a running engine, I get an error - BUS BUSY(

    When a connection is established via RaceChrono with the engine running, no data is received either (although RH shows connection establishment and some ~0.3kbits speed).
    https://ibb.co/ZYw2K5F
    6

    What could be the problem with communicating with the ECU with the engine running?
    Wrong connection sequence? Or do I need to connect while the Dealer Mode jumper is set?

    Problem 2.
    When a connection is established via RaceChrono with the engine turned off, data is only received for the first few seconds.

    Further, the exchange LEDs on the ELM stop blinking, RaceChrono writes about reconnection - but the connection is not restored again, until the ELM is turned off / on by pulling it out of the connector.
    When working with the Test Connection option, the situation is similar, before the connection breaks, I have time to look at the bytes recalculated in the equations in Fast Channels for a couple of seconds - and it was great!
    https://ibb.co/KxVQ7dj
    1

    Then I started experimenting and created a new RaceChrono profile, in which I left the previous initialization, but did not create Fast Channels - and RaceChrono consistently polls ELM for more than 5 minutes! When adding at least one Fast Channels, I see data from it for only a few seconds, then the connection is lost again until the next reconnection of ELM ...
    Experiments with Expert Setting did not give success. Power saving mode is disabled on the phone, RaceChrono has all the permissions on the phone.

    Anyone have any ideas about running Fast Channels on a muffled bike?

    My RaceChrono profile-export: https://dropmefiles.com/B4mNU
    Thanks!

  • I´m testing this for several years now and reverse engineered SDS about 90%.
    There is no difference with the engine running or just ignition on.
    Dealer Mode is not necessary!

    You set the keepalive and the header. But no initialization of the diagnostic session (Start Communication Request). Maybe that´s missing:
    81 12 F1 81 05
  • Gear should be "...(raw, 20, 1)"

    Can you screenshot your Profile "OBD-II settings"

    Also, I've run into Bus Busy error many times and I always just reset the adapter and start the connection process again. No idea why it happens.
  • edited September 2023
    I decided that the RaceChrono is a black box in terms of reconnecting and entered the "ATZ\..." in "OBD-II settings\Initialisation command" at the beginning so that when reconnecting, the ELM 327 settings were reset.

    I redid the profile in the "OBD-II settings" part and got a stable exchange on the bike without ignition: ~ 4-5 kbps, the test > 5 minutes passed without problems.
    On a bike with ignition - Bus Busy error (((

    @TriB can you elaborate on where to set it? I don't understand at what point I need to enter (Start Communication Request) - 81 12 F1 81 05

    @Michael86 I am attaching a screenshot (this is already redone, with a stable exchange).
    Whats-App-Image-2023-09-07-at-12-33-54
    My new RaceChrono profile-export (improved equations for converting bytes into physical quantities, but not perfect and new Initialisation command line) : https://dropmefiles.com/Nh2SJ

    There is a possibility that an error on a busy bus appears due to problems with the power supply of the adapter or K-line on a running engine - interference from the operation of the ignition system or voltage ripple in the power supply system from the operation of the generator.

    ***BUS BUSY
    The ELM327 attempted to send a command mode or bus initialization but found too much activity to insert a message. This could be because the bus was actually busy, or it could also be a wiring problem that gives a continuously active input. To avoid problems with your ELM327, check the voltage levels at your OBD input - it is very likely that there is a problem with the wiring.***

    This weekend I plan to continue tuning, checking voltages and noise with a DSO150 oscilloscope. I will also try to use another adapter ELM327.
  • everything there looks good to me. I start my init commands with ATWM801..... ATZ won't matter - setting protocol 5 there is not necessary since the dropdown above does that.

    Also don't need to specify a default OBD-II header since you're only using custom PIDs and already set the header in the init commands.

    I'm thinking this might have something to do with your ELM device. Is this a cheap Chinese clone? If you are not already using it I recommend spending the money on the OBDLink MX+. TriB uses an arduino I think which is another option but that's outside my knowledge. The MX+ is a solid adapter and it isn't too expensive. You can use it on your car as well which is a bonus.
  • Yes, Michael is right. I have created my own "ELM327" / "OBDLink" with an Arduino.
    But I made it compliant to those commands and it´s behaviour.
    Except the missing init sequence, which I do automatically.

    My Chinese clones were not able to reconfigure the keepalive message and the header. This only worked for me with the OBD Link.
    So if you already get to that point, this should work!

    Since we have the header set to 81, sender and receiver + checksum is already added, 81 12 F1 81 05 will become "81".
    So just change the line to
    ...\nATFI\n81\nATSH8012F1...

    Kawasaki needs an additional "\n1080" at the end to start the diagnostic session.

    I do not use the "Standard OBD-II Header", but checked the "Not standardized OBD-II" checkbox at the end.
Sign In or Register to comment.