ESP32 and remote display

Hi, I am trying to get live lap time a best time from racechrono.
I am starting using ESP32 and BL, is there here alittle example to pair bluetooth and get a "simple" one information from racechrono such as lap time?

I saw and example using Bluefruit, is it similar?

thx for your support
S.

Comments

  • aolaol
    edited April 10
    No idea, but AFAIK some users are working on ESP32 for their RaceChrono DIY devices. Maybe those people will fill in here.
  • Ok, thx, I hope someone help me... Meanwhile, I saw an example using bluefruit... If I will not able to use esp32, Can I use bluefruit? can you confirm this that work?
  • Probably not, Adafruit uses nRF chips.
  • ok, sorry for my misunderstandig.. I saw the code and I assume that worked well. So there is no a tested hardware to do this... :-(
  • aolaol
    edited April 10
    I might have misunderstood your question. Bluefruit is a Bluetooth library for the Adafruit boards, not hardware. The example below is written for Adafruit CLUE hardware. I might have forgotten to document that. :)

    https://github.com/aollin/racechrono-ble-diy-device/blob/master/examples/remote-display-device/main/main.ino
  • Since the ESP32 bluetooth implementation offers a stream-interface, it can be treated like a serial port.
    This allows a simple code translation from Arduino + HC-05/06 solutions.

    Just be aware, that the bluetooth-stack is incredible huge! Using BT will not allow OTA, at least without reducing the SPIFFS-size or something.
  • Ok, thanks I begin to understand ... now I am studying this page:

    https://racechrono.com/support/equations/identifiers

    my question is how to know the link betweek device and identifiers... ?

    for example:

    lap --> Identifiers? (I understood lap time, current time etc... )
    gps ... ? Ok I can understand some identifiers by name
    data ? ......

    is there a datasheet to match devices and identifiers?

    thx in advance for your support
    Stefano
  • @Gastex75 It depends on what the device outputs for you. If you record a session, you can see in the analysis what devices and what channels your session has.
  • Ok, thx, I am arriving to get in my ESP32 from Racechrono app the current time lap for example. I do this associating in the code;

    {"Curr time", "channel(device(lap), lap_time)*10.0", 0.1}

    Where can i find other associations ?

    channel( ? (?) )

    for example... if i want to get in realtime from racechrono app the difference between previous lap and current lap..or something like these information.... How can I define in my code the association?

    I saw the doc on line, there all "keyword" to get information, but I don't understand how to match device and channel correct words..

    thx :-)
  • @aol , ok i read better... :-) sorry... you mean that I can record session, open file and follow and understand alla channel and identifiers association? Should be perfect for me :-)
  • Yes, you can find what data is available with your devices, when you record one session with that setup, and just look at what you can open in the graphs. These are the same ones you can then use with your remote display live.

    But there are some patterns... like a "device(gps)" will always have speed, bearing etc. "device(lap)" will always have the certain set too, such as current lap time, previous, best etc. But "device(obd)" can have anything the user has selected.
  • Perfect, many many thanks for your precious support... I found all patterns that I need... I am looking for the last :-) ..... the difference between previous and current lap time... I am working on this ...thanks again
  • aolaol
    edited April 15
    Real time between previous and current is not doable, as RaceChrono does not calculate that. What it does is to calculate difference between your comparison lap (= time delta), which defaults to best of the session, unless you change it. Unfortunately there's no option for set it to previous lap.

    If you want the time delta, "channel(device(lap), delta_lap_time)" should do it.

Sign In or Register to comment.