Index

About the project

  1. about this documentation in HTML
  2. License

Development tools

  1. Linux
    1. Step-by-step tutorial development tools
      1. Hardware tools to flash and debug the firmware
      2. Tools to build the firmware
        1. stm8-binutils-gdb
      3. Tools to flash the firmware
      4. (optional) Tools do flash and debug the firmware
      5. (optional) Tools to debug using serial port
  2. Windows
  3. C library
  4. Various resources
    1. Printf example

Motor controllers

  1. BMSBattery S series
    1. LCD control panel
      1. LCD protocol
    2. BMSBattery S06S
      1. PWM signals
        1. very low speed - 6 steps
        2. low speed up to max speed - sineware
    3. BMSBattery S06P
      1. various info
        1. 01
        2. 02
    4. BMSBattery S12S
    5. BMSBattery bottle battery controller
  2. Other controllers
    1. Kunteng 18 mosfets motor controller
    2. Lishui motor controllers
      1. LSW-675
        1. Datasheets
        2. PWM signals
    3. JinHui motor controllers
  3. GreenEBikeKit

Motors

  1. BMSBattery Q75
  2. BMSBattery Q85
  3. BMSBattery Q100
  4. BMSBattery Q100C

Datasheets and application notes

  1. STM8S105C6T6
    1. Interrupts

Motor control

  1. Motor control scheme of S06S controller
  2. BLDC 6 steps
  3. PWM schemes
    1. So, Which PWM Technique is Best? (Part 1)
    2. So, Which PWM Technique is Best? (Part 2)
    3. So, Which PWM Technique is Best? (Part 3)
    4. So, Which PWM Technique is Best? (Part 4)
    5. So, Which PWM Technique is Best? (Part 5)
    6. So, Which PWM Technique is Best? (Part 6)
    7. So, Which PWM Technique is Best? (Part 7)
  4. PWM control and Dead Time Insertion
  5. Low inductance motors
  6. Throttle Control Modes
  7. Phase angle FOC
  8. PWM frequency VS motor eRPM
    1. Max motor speed using FOC
    2. Kelly controllers ultra high speed
  9. Sinusoidal Control of BLDCM with Hall Sensors Based
  10. Alternatives

Various

  1. Endless-sphere.com forum messages
    1. 2017.04.25 - Initial forum message
    2. 2017.05.08 - First flash and debug on a dev board
    3. 2017.05.18 - First code flashing and running
    4. 2017.05.20 - more new information
    5. 2017.08.23 - SxxP versus SxxS versus LSW-675
    6. 2017.09.01 - Trying to figure out an algorithm to automatically adjust ui8_position_correction_value
    7. 2017.09.02 - How to do FOC on the BMSBattery S06S/Kunteng STM8 motor controllers
    8. 2017.09.03 - more ideas about zero crossing for FOC
    9. 2017.09.05 - measuring IQ current and manually adjusting position_correction_value
    10. 2017.09.19 - measuring motor current
  2. How to unlock protected read memory
  3. STM8S003 board
  4. LOG
    1. 2017.06.19 - SVM current waveforms

Clipping

  1. 2017.05.22 - Hackaday Links: May 21, 2017

Smart BMS with bluetooth

2017.08.23 - SxxP versus SxxS versus LSW-675

SxxP versus SxxS versus LSW-675



Sxx

P


The SxxP version is a sensorless, square wave/6 steps motor controller and has a secondary board that includes another microcontroller (STM8S003F3) as seen on the next picture. The main microcontroller is the 16 MHz, 8 bits, 32kbytes flash program memory, STM8S105C6T6 and don't have processing power to do FOC.

To be sensorless, it may look at BEMF zero crossing and for that 1 phase must not be energized during 1 step - because of this, the motor phases can't be driven with a sinewave/SVM.
I think the secondary board implements the sensorless algorithm.

images/76-1.png

Sxx

S


The SxxS version is sensored, sinewave/SVM motor controller and unlike SxxP, doesn't have a secondary board. The main microcontroller is the 16 MHz, 8 bits, 32kbytes flash program memory, STM8S105C6T6 and don't have processing power to do FOC.

Because it is sensored, it can drive the motor phases with sinewave/SVM.

LSW-675


The LSW-675 is a sensorless, FOC/sinewave/SVM motor controller. The main microcontroller is the 48 MHz, 32 bits, 32kbytes flash program memory, STM32FEBKC6T6 (similar to STM32F103?) and have processing power to implement FOC.

The 32kbytes flash program memory seems to little to implement FOC however, I found that ST have a FOC library that uses only ~16kbytes of flash memory:

Performances of FOC with STM32F103
Configuration: 1 shunt/sensorless at 10 kHz FOC sampling time
• Motor control code size is 16.2 Kbytes
• Motor control RAM usage is <2.5 Kbytes
• FOC total execution time is 26.1 μs (ADC ISR + TIM1 update ISR)
• FOC introduced CPU load is 30%