Index

About the project

  1. about this documentation in HTML
  2. License

Controllers

  1. BMSBattery S06x
    1. LCD control panel
      1. LCD protocol
    2. S06S
      1. PWM signals
        1. very low speed - 6 steps
        2. low speed up to max speed - sineware
    3. S06P
      1. various info
        1. 01
        2. 02
  2. BMSBattery S12S
  3. BMSBattery bottle battery controller
  4. GreenEBikeKit
  5. Kunteng 18 mosfets

Datasheets and application notes

  1. STM8S105C6T6
    1. Interrupts
  2. Alternatives

Development tools

  1. STLinkV2 - Flash/program/debug hardware
  2. Flash and debug connector on S Series controller
  3. Debug OpenOCD and Eclipse
    1. stm8-binutils-gdb
  4. Flash programming
  5. C library
  6. Various resources
    1. Printf example

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

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
  2. How to unlock proteced 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.06.19 - SVM current waveforms


Blue line: hall sensor signal.
Yellow line: phase B current signal.
The next series of screenshots were taken with motor at different speeds, starting at motor low speed up to max speed.

I was expecting to have a sinusoidal current waveform... anyway, as we can see, there is a synchronization between both signals - and they need to be so we can have the motor best efficiency.

images/56-1.png

images/56-2.png

images/56-3.png


I didn't measured yet the lack of phase, but I know it changes with dynamic variables: motor current and motor speed. And fixed variables: motor coils resistance and inductance.

images/56-4.png
(in Shane Colton documentation)

For the screenshots, I think the algorithm can be like looking at current max or min value and will be the time where current vector I is - then I need to adjust the timing of motor voltage I already prepare, to displace the I vector 90 degres over rotor flux (yellow vector on the picture) - phase advance. Let's see if I can do it and have good results....

images/56-5.png
(in Shane Colton documentation)