Recent content by daffy99

  1. D

    Stromer ST1X vs Juggernaut Ultra 1000 vs DIY

    If you want to legally ride a fast bike in Switzerland, your only option is to have it registered as an S-Pedelec. The only economically viable option to get an S-Pedelec is buying one. Seriously. It does not have to be a Stromer, but, really, it absolutely has to be an S-Pedelec. There is...
  2. D

    Stromer ST1X vs Juggernaut Ultra 1000 vs DIY

    Seeing as you are located in Switzerland, and shooting for a vehicle that goes up to 45 km/h speed, the Stromer has that one critical advantage: It can be registered ("gelbes Kontrollschild") to be legal on public roads, as a so-called "S-Pedelec". If you shop around, for instance on...
  3. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    Read-out protection is an integral part of the STM chip architecture. This is a hardware-based copy protection scheme that no one seems to have been able to overcome so far, using generally available methods. "Am I able to roll back?" was also the first question I asked, when it came to looking...
  4. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    That's a very interesting idea! Has this ever been used before?
  5. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    The page of contents for this course alludes to the fact, that this is for a MIPS CPU. For the STM8, http://www.st.com/content/ccc/resource/technical/document/programming_manual/43/24/13/9a/89/df/45/ed/CD00161709.pdf/files/CD00161709.pdf/jcr:content/translations/en.CD00161709.pdf would probably...
  6. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    Looking at https://github.com/OpenSource-EBike-firmware/BMSBattery_S_controllers_firmware/commit/9c9de66fe41618ae14f595990d00dcdf9ed948c8#diff-f09135e1598deb289c250d9ed37dd8dbR98 it would seem that the checksum is also in a different location? Cool that you figured this out! This then begs the...
  7. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    dec 2 = bin 0010 dec 9 = bin 1001 Three bits of difference. That's substantial. On the other hand, I cannot tell what the quality of the reverse engineering is. Your collection of tidbits seems to suggest, that xor 2 does not (always) work when an external controller attempts to send data to...
  8. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    Cool, now submit a pull request for all the usability (Java) changes that you made! ;) This way, everything is "upstream" in the same repository, and "master" is the one and only master.
  9. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    Based on https://opensourceebikefirmware.bitbucket.io/EmbeddedFiles/7-LCD3_to_S12SN-1.txt I would expect (not compiled, just typed in here) uint8_t dataXor = B0 ^ B1 ^ B2 ^ B3 ^ B4 ^ B6 ^ B7 ^ B8 ^ B9 ^ B10 ^ B11 ^ B12; bool_t DataIntegrityHolds = ((dataXor ^ 2) == B5); If that is too...
  10. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    The current C source code might not be defined well enough to work _with_ compiler optimizations turned _on_. You committed a change to github where you added volatile to one variable; that may be one step into the right direction. That's quite simple, actually. Checklist: 1.) is there any...
  11. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    Hm. This is consistent with https://sourceforge.net/p/sdcc/code/10108/log/?path=/tags/sdcc-3.6.0/sdcc So cygwin has the "working" version? In this case the best way to proceed is to have a Windows build environment completely derived from cygwin? If you are certain that your mingw environment...
  12. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    Are these the exact same _version_ of the compiler? It would be very helpful to note in the README the _exact_ version of the compiler which is known to work. In case the same version of the compiler shows different behaviour, the tool chain that built that compiler has a problem. In which case...
  13. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    volatile is all about making sure that the "right" content is found in variables whenever they are read. This applies, for instance, whenever data is written in an interrupt routine, while it is being read elsewhere, too. (The inverse is true as well) And that's where registers and optimization...
  14. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    That much is evident from all the push/pop in _your_ assembly output ;)
  15. D

    KT motor controllers -- Flexible OpenSource firmware for BMSBattery S/Kunteng KT motor controllers (0.25kW up to 5kW)

    Your screen shot shows one additional difference: push and pop interaction with the stack (line 112 vs line 138). This is almost certainly a result of debug builds vs optimizing builds, or a difference between compiler versions. In any event, try getting "push fp" on the Windows side, too, by...
Back
Top