Avatar for enaon

enaon

Member since Aug 2020 • Last active May 2021
  • 1 conversations
  • 18 comments

Most recent activity

  • in Projects
    Avatar for enaon

    It's funny how things just fall in place with this project, the solution to the bridge puzzle was in front of my eyes. :)

    One of the wheels, the segway/xiaomi/ninebot Z, uses the nordic chipset with the default serial service. So by emulating this wheel, I can now have any program connect, no changes to the app or espruino needed :)

  • in News
    Avatar for enaon

    I also want to thank @Fanoush, we have not finished the inmotionV11 client yet, this is why I haven't already posted about it, but the image is stable with a 59 bytes long mtu.

    Thank you both very much.

  • in Projects
    Avatar for enaon

    Thank you for the nice feedback, I really appreciate it.

    You are one of those persons that never spam, I will ask you for some dsd6's later if you still have some.

  • in Projects
    Avatar for enaon

    yes, your software is super, it is updating a bit slow but that is me. :)

    I will continue with the bridge, it will be useful for adding say a dsd6 inside the helmet only for receiving alarms from its buzzer. Later it will be really nice if I could add those characteristics so that the the phone app can connect without changes.

    this is a small video of the wheels settings menu, garage and all. :D

    https://www.youtube.com/watch?v=XLtAZK4b­FRE

  • in Projects
    Avatar for enaon

    I did it my self on wheelllog since it is open source. But the eucWorld app, which is based on wheelllog is not open source, and it it the only that I care about having because of its logging and online maps features. Also I think darkness bot, the dominant iphone app, has the same checks.

    But in any case, it is more of a "wanting to do" thing, I wanted to make the bridge work, and it drove me mad that I couldn't. Now that I know why it did't work I am feeling much better.

    I will continue working on it and when it is finished with the menus and all, I may ask for some more help.

  • in Projects
    Avatar for enaon

    Thank you @fanoush, it's good to know that it can be done. :)

    Espruino is only missing 0x2A02 0x2A03 and 0x2A05, their value is not used, just their existence.

  • in Projects
    Avatar for enaon

    ofcource, it is here( a lot of variants exist, but this is the first one I think)
    https://github.com/JumpMaster/WheelLog

    The part that does the checks is here:
    https://github.com/JumpMaster/WheelLogAn­droid/blob/44b9b2fbdb522d499bcf932baa0de­cde389f92cf/app/src/main/java/com/cooper­/wheellog/WheelData.java#L1070

    and the expected characteristics are here:
    https://github.com/JumpMaster/WheelLogAn­droid/blob/master/app/src/main/res/value­s/services_kingsong.xml

    But the question is not really about the app, it is about the possibility of adding characteristics on 1800 and 1801

    In any case I have asked the maintainer of eucWorld, the dominant app for EUCs in android, a derivative of wheellog, to remove 2a02, 2a03,2a05 from his list of checks, and he was kind enough to consider it, so I am all good. But it would still be nice if there is a way to add them.

  • in Projects
    Avatar for enaon

    @gordon, I have a question if possible.

    I am trying to make the p8 connect to the wheel, and then replicate the wheel's services and offer them, so that a phone can connect to the watch and then the wheel, like a bridge

    It is working, amazing what one can do with espruino, but I have come to a problem.

    When it comes to the phone app that I want to use, it does some checks on a list of characteristics and services it expects to find, and closes the connection if one is not there. They are not needed, but it does it anyway.

    The code that does the checks is like so:

    detected_wheel = true;
    BluetoothGattCharacteristic characteristic = service.getCharacteristic(c_uuid);
     if (characteristic == null) {
      detected_wheel = false;
      break;
    }
    

    and the services among others are those, that I cannot create.:

    <string-array name="kingsong_services">
        <item>00001800_0000_1000_8000_00805f9b34­fb</item>
        <item>00001801_0000_1000_8000_00805f9b34­fb</item>
        <item>0000180a_0000_1000_8000_00805f9b34­fb</item>
        <item>0000fff0_0000_1000_8000_00805f9b34­fb</item>
        <item>0000ffe0_0000_1000_8000_00805f9b34­fb</item>
    </string-array>
    
    <string-array name="kingsong_00001800_0000_1000_8000_0­0805f9b34fb">
        <item>00002a00_0000_1000_8000_00805f9b34­fb</item>
        <item>00002a01_0000_1000_8000_00805f9b34­fb</item>
        <item>00002a02_0000_1000_8000_00805f9b34­fb</item>
        <item>00002a03_0000_1000_8000_00805f9b34­fb</item>
        <item>00002a04_0000_1000_8000_00805f9b34­fb</item>
    </string-array>
    <string-array name="kingsong_00001801_0000_1000_8000_0­0805f9b34fb">
        <item>00002a05_0000_1000_8000_00805f9b34­fb</item>
    </string-array>
    

    lines starting with a 'greater than' denote quoted text

    because they are on 0x1800 and 0x1801.

    The app is wheellog from github, I removed the check and compiled it and it connects fine, but It would be nice if it worked with all programs.

    Is it a dead end, of could I add the missing characteristics?

Actions