jueves, 6 de febrero de 2020

NUEVO FIRMWARE PARA EL TSDZ2 Y PANTALLAS ORIGINALES, v0.20

Tenemos un nuevo firmware para el motor Tsdz2 y las pantallas compatibles, en esta ocasión stancecoke y mbrusa han adaptado el código de marcoq a la versión que bubba desarrollo para las pantallas LCD3, la version 0.20 del firmware.

Entre sus novedades la posibilidad de ver multiples parámetros en las pantallas de serie, y además la posibilidad de cambiar entre cuatro modos de conducción

  1. Modo Potencia, el que viene de serie en los motores, si doy 100 wattios de potencia pedaleando me lo resta de lo que tenga configurado como maximo en ese nivel.
  2. Modo Cadencia, asistiendo segun la cadencia que llevemos en la pedalada (rotación de los pedales)
  3. Modo par o Torque, asistiendo a la presión ejercida en los pedales
  4. Modo emtb, imitando a las ebikes, un mix del modo torque y potencia

Para los parámetros básicos existe un programa en java de fácil uso, aunque para los parámetros más avanzados en esta ocasión se prescinde del configurador java, y se propone editar los archivos de configuración del sistema. 

aunque no es tan intuitivo como el configurador, eso si hay unos completos manuales explicando todas las opciones.



Para modificar los parámetros usaremos el archivo edit_config.bat y el archivo edit_advanced.bat

Para compilar usaremos el archivo compile_20.bat (previamente tenemos que tener el SDCC_Compiler instalado en nuestra unidad C:)


Para flashear usaremos el archivo program_20.bat   (necesitamos tener instalado el ST_Visual_Programmer, instalado en C:, así como el usb con el programado stlink2)

edit_config.bat

/*
 * config.h
 *
 *  Automatically created by TSDS2 Parameter Configurator
 *  Author: stancecoke
 */

#ifndef CONFIG_H_
#define CONFIG_H_

#define MOTOR_TYPE 1

Elegir el motor TSDZ2 valor 0 = 48V valor 1 36V. 

No introducir otros valores!

#define MOTOR_ASSISTANCE_WITHOUT_PEDAL_ROTATION 0

Permite la asistencia solamente con los pies sobre los pedales sin rotación. Se recomienda utilizar esta función con los sensores de freno instalados y activados. El empuje mínimo necesario para iniciar la ayuda se ajusta con el parámetro siguiente:

#define ASSISTANCE_WITHOUT_PEDAL_ROTATION_THRESHOLD 20
La sensibilidad a la ayuda al arranque sin rotación del pedal. Emplear valores bajos, poco a poco aumentar si es necesario. Se ajusta al 100% simplemente aplicar un par mínimo a los pedales. Los valores recomendados 10-20.


#define ENABLE_VLCD6 0
#define ENABLE_VLCD5 0
#define ENABLE_XH18 1
Elegir el tipo de pantalla utilizado. Habilitar sólo uno


#define PEDAL_TORQUE_PER_10_BIT_ADC_STEP_X100 67
Se utiliza para un cálculo correcto de la potencia aplicada sobre los pedales para dar el valor de torque real. Con valores mayores existe una reactividad mayor. Se recomienda realizar el procedimiento de calibración por hardware indicado en el wiki de TSDZ2 para mejorar la resolución del sensor de par.

#define MOTOR_ACCELERATION  25

Valor por defecto = 0% 
36 voltios motor, 36 voltios batería = 35% 
36 voltios motor,  48 ​​voltios batería = 5% 
36 voltios motor 52 voltios batería = 0% 
48 voltios motor 36 voltios batería = 45% 
48 voltios motor 48 ​​voltios batería  = 35% 
48 voltios motor,  52 voltios batería  = 30%
Aceleración del motor. En una primera configuración, use valores bajos, poco a poco aumentar si es necesario. Tenga en cuenta los valores de la tabla como valores máximos.
Ajuste con cuidado, consciente de que un valor más alto de lo necesario puede causar un mayor estrés en los engranajes de la trasmisión

#define BATTERY_CURRENT_MAX 15
Máxima corriente de la batería en amperios. 
Establecer la corriente máxima que puede suministrar la batería. El valor máximo se limita internamente por software para un máximo de 18 A.

#define TARGET_MAX_BATTERY_POWER 540
Capacidad total de la batería en vatios hora. AH. Ejemplo: una bateria de 36 Volt y 14,5Ah tiene una capacidad nominal de 36vx14.5Ah= 540 Wh

#define BATTERY_CELLS_NUMBER 10
Número de celdas en serie. Este valor puede ser un número entero de 7 a la 14. 
07 - 24 V 
10 - 36 V 
13 - 48 V 
14 - 52 V

#define BATTERY_LOW_VOLTAGE_CUT_OFF 29
Voltaje de corte con batería baja. Si la tensión cae por debajo de este valor, el controlador reducirá automáticamente la corriente a fin de no caer por debajo del límite de tensión mínimo. 
Establecer este valor mediante la comprobación de las características de las células de la batería. 

#define WHEEL_PERIMETER 2114
Este parámetro se utiliza para calcular la velocidad y kilómetros recorridos. Se introduce el perímetro de la rueda en milímetros. 
Valores indicativos: 
rueda de 26 pulgadas =  2050 mm 
rueda de 27 pulgadas  =  2150 mm 
rueda 27,5 pulgadas  =  2215 mm 
rueda de 28 pulgadas  =  2250 mm 
rueda de 29 pulgadas  =  2300 mm 


#define WHEEL_MAX_SPEED 45
Límite de velocidad máxima. Más allá de este valor, el motor se para. 
Atención, si está activada la función ENABLE_WHEEL_MAX_SPEED_FROM_DISPLAY, este límite se ignora y se sustituye por el establecido en la pantalla. 

#endif /* CONFIG_H_ */



edit_advanced.bat


/*
 * advanced.h
 * parameters configuration file
 * for TongSheng TSDZ2 motor controller firmware
 * by (C)Casainho and EndlessCadence and Leon, 20 beta 1 version
 * adapted to stock displays VLCD5 VLCD6 XH18
 * from an idea of marcoq (Jobike forum)
 * Author: mbrusa
 * Version mb.20beta1.A
 */
#ifndef ADVANCED_H_
#define ACVANCED_H_
#define DEBUG_MODE                                 0
#define DEBUG_DATA                                  1

// experimental high cadence mode (1=ENABLED)
#define EXPERIMENTAL_HIGH_CADENCE_MODE              0
Si está habilitado, permite la asistencia del motor a una cadencia superior. Usarlo bajo vuestro propio riesgo. Parece que sólo es adecuado para motores de 36v

// cadence sensor high percentage (calibration required)
#define CADENCE_SENSOR_PULSE_HIGH_PERCENTAGE_X10    500
Parámetros para el sensor de cadencia en el modo avanzado. Valor por defecto.
El valor real sólo se puede obtener con una calibración correcta (todavía no implementado). Consulte el procedimiento en la página wiki dedicada (20 beta 1). Después de la calibración, introduzca el valor real.

// battery internal resistance (milliohms)
#define BATTERY_PACK_RESISTANCE                     196
Resistencia interna de la batería en miliohmios
Se utiliza para eliminar la oscilación de las muescas que indican el estado de carga de la batería, entre sin carga de tensión y la tensión bajo carga. Cómo calcular la resistencia de la batería:
Medir la diferencia entre la tensión sin carga y bajo carga, con una corriente constante. Ejemplo para 10 A de corriente, R = diferencia de 1,96 voltios / 10 Amp, R = 0,196 = 196 miliohmios.

// battery voltage calibration (95% to 105%)
#define ACTUAL_BATTERY_VOLTAGE_PERCENT              100
Parámetro para corregir el valor de tensión se muestra en la pantalla. 
Ejemplo, con una batería completamente cargada de 36V, la tensión debe estar cerca de 42V, si es inferior aumentar el parámetro de 1 en 1 hasta que de la lectura de 42V, y viceversa, si la tensión es más alta, el parámetro debe ser reducido. 

// battery capacity calibration (max 100%)
#define ACTUAL_BATTERY_CAPACITY_PERCENT 100
Parámetros para ajustar la capacidad real de la batería. Procedimiento de calibración: Con la batería completamente cargada, comprobar el porcentaje en la pantalla, que debe ser del 99,9%. En este punto, deje que la batería se descargue por completo.
Compruebe el porcentaje residual y calcule el valor efectivo porcentaje (100 - valor residual). Ajuste el parámetro con este valor.
Ejemplo, porcentaje final residual 8%, la capacidad efectiva 92% (100 - 8).

// li-ion cell
#define LI_ION_CELL_OVERVOLT                        4.30
A partir de el valor introducido el display muestra el error E08-ERROR_OVERVOLTAGE.
La unidad de medida de este y los parámetros subsiguientes es en voltios (de cada célula individual).
#define LI_ION_CELL_RESET_SOC_PERCENT               4.10
Valor de retorno automático a 99,9% del porcentaje de la capacidad residual, con la batería completamente cargada. Los valores recomendados de 4.10 a 4.15, de lo contrario, con los valores más bajos, después de un corto a su vez, si la tensión no cae por debajo de este valor, cuando se 
conecta de nuevo se restablece a 99,9 de nuevo. Si la batería no está totalmente cargada y la tensión es inferior a este valor, el restablecimiento no se activa automáticamente. Si se desea, se puede hacer manualmente activando el procedimiento previsto.

// full
#define LI_ION_CELL_VOLTS_FULL                      3.95
Valor mínimo de tensión para visualizar el indicador de carga de batería llena (barra llena)

El indicador de batería mostrado varia dependiendo si tenemos las pantallas VLCD6 y XH18  (4 barras) o el  VLCD5 (barras)

// 4 bars
#define LI_ION_CELL_VOLTS_3_OF_4                    3.70
#define LI_ION_CELL_VOLTS_2_OF_4                    3.45
#define LI_ION_CELL_VOLTS_1_OF_4                    3.25
valor de tensión para mostrar estados de carga intermedios. De 1 a 3 muescas, para VLCD6 y XH18 pantallas.

// 6 bars
#define LI_ION_CELL_VOLTS_5_OF_6                    3.85
#define LI_ION_CELL_VOLTS_4_OF_6                    3.70
#define LI_ION_CELL_VOLTS_3_OF_6                    3.55
#define LI_ION_CELL_VOLTS_2_OF_6                    3.40
#define LI_ION_CELL_VOLTS_1_OF_6                    3.25
valor de tensión para mostrar estados de carga intermedios. De 1 a 5 muescas, para la visualización VLCD5.

// empty
#define LI_ION_CELL_VOLTS_EMPTY                     2.90
Valor de tensión para visualizar el estado de la batería completamente descargada, barra roja o vacía. 
Para estos parámetros mejor comprobar las características técnicas de las células utilizadas.

// --------------------------------------------------------------------------
// FUNCTION
// --------------------------------------------------------------------------

// enable functions (1=ENABLED)
#define ENABLE_LIGHTS                               0
Permitir el uso de luces, dentro y fuera, a través del botón de las luces.

#define ENABLE_WALK_ASSIST                          1
Permite el uso de la ayuda al caminar, asistiendo hasta 6 km / h. 

#define ENABLE_BRAKE_SENSOR                         0
Habilita el uso de sensores de freno cuando se instala. También permite las funciones que requieren el uso de sensores: 
- asistencia al caminar con retardo de entrada 
- el modo de crucero sin movimiento del pedal 
- acelerador 
Por razones de seguridad, con los sensores instalados, incluso con la función desactivada, la parada del motor está siempre activa al frenar.

#define ENABLE_THROTTLE                             0
Habilita el acelerador sólo si se ha instalado. Sólo está disponible con sensores de freno instalados y activados. Informarse acerca de las restricciones legislativas de cada país.

#define ENABLE_TEMPERATURE_LIMIT                    1
Habilita el uso del sensor de temperatura se ha instalado.
Atención, la función de uso del acelerador y del sensor de temperatura no pueden estar activadas juntas. (por hardware es imposible también pues comparten entrada)

// FUNCTIONS ENABLED ON STARTUP
// street mode (0=OFFROAD 1=STREET)
#define ENABLE_STREET_MODE_ON_STARTUP               0
Activa el modo de calle al iniciar.  El modo de calle es una función para poner un modo de conducción legal que limita la velocidad y la potencia del motor. Además deshabilita el acelerador y el modo de crucero. Informarse acerca de las restricciones legislativas de cada país.

// display mode (0=DISPLAY DATA 1=SET PARAMETER)
#define ENABLE_SET_PARAMETER_ON_STARTUP             0
Se elige la forma de utilizar la pantalla. Si está activado, la modificación de parámetros está sólo activa en el inicio de la pedalada. Si se deja a 0, la visualización de datos está activa desde el arranque.


// odometer compensation (1=ENABLED)
#define ENABLE_ODOMETER_COMPENSATION                1
Permite añadir km al odometro. Incluso cuando la moto está parado, todos los datos enviados a la pantalla aumentan el odómetro. Al activar esta función, la distancia se añade y se recupera, durante esta operación la velocidad durante la conducción permanece en cero hasta que los kilómetros se equilibran.


// cadence sensor mode (0=STANDARD 1=ADVANCED)
#define CADENCE_SENSOR_MODE_ON_STARTUP              0
Modo de sensor de cadencia en el arranque. 
= modo estándar,
1 = modo avanzado (el doble de los impulsos).
Elegir el modo avanzado requiere una calibración (todavía no implementado).

// lights configuration (0 to 8)
#define LIGHTS_CONFIGURATION_ON_STARTUP             0
Modo de funcionamiento de las luces en el arranque. Este valor puede ser diferente del 3 seleccionable en el menú de la pantalla.
// lights configuration
#define LIGHTS_CONFIGURATION_1                      1
#define LIGHTS_CONFIGURATION_2                      6
#define LIGHTS_CONFIGURATION_3                      7
/*  NOTE: regarding the various light modes
    (0) lights ON when enabled
    (1) lights FLASHING when enabled
    (2) lights ON when enabled and BRAKE-FLASHING when braking
    (3) lights FLASHING when enabled and ON when braking
    (4) lights FLASHING when enabled and BRAKE-FLASHING when braking
    (5) lights ON when enabled, but ON when braking regardless if lights are enabled
    (6) lights ON when enabled, but BRAKE-FLASHING when braking regardless if lights are enabled
    (7) lights FLASHING when enabled, but ON when braking regardless if lights are enabled
    (8) lights FLASHING when enabled, but BRAKE-FLASHING when braking regardless if lights are enabled
*/
Configuración de los modos de luz seleccionables en el menú en la pantalla. Averiguar sobre el cumplimiento de la normativa vigente. 
Se pueden eliger 3 modos preferidos entre los 9 disponibles. 

// ridind mode (1=POWER 2=TORQUE 3=CADENCE 4=EMTB)
#define RIDING_MODE_ON_STARTUP                      1
Configuración del modo de asistencia al iniciar. Elija el preferido de los modos de asistencia disponibles. 
1 - POWER  asistencia proporcional a la potencia aplicada en los pedales 
2 - PAR  asistencia proporcional al par en los pedales 
3 - CADENCIA asistencia subordinada al movimiento de los pedales 
4 - EMTB asistencia con un porcentaje progresivo del par motor en los pedales 

// STREET MODE FUNCTION
// street mode power limit (1=ENABLED)
#define STREET_MODE_POWER_LIMIT_ENABLED             1
// street mode power limit value (Watt)
#define STREET_MODE_POWER_LIMIT                     500
Habilita el límite de potencia en modo CALLE. (MAX 500)

// street mode speed limit (km/h)
#define STREET_MODE_SPEED_LIMIT                     25
Límite de velocidad en km / h cuando el modo está activado CALLE. Más allá de este valor, el motor se para. Este límite de velocidad puede ser sustituida por el valor introducido en las opciones originales de la pantalla cuando se activa la función ENABLE_WHEEL_MAX_SPEED_FROM_DISPLAY. 

// street mode enable other functions
#define STREET_MODE_THROTTLE_ENABLED                0
Habilita el acelerador, si está instalado, en el modo CALLE. Sólo está disponible con sensores de freno montados y habilitados.

#define STREET_MODE_CRUISE_ENABLED                  0
Activa el modo crucero en el modo CALLE. Disponible en el modo con el movimiento del pedal activa, otro modo solamente con sensores de freno instalados y activados.

// throttle ADC values (optional)
#define ADC_THROTTLE_MIN_VALUE                      47
#define ADC_THROTTLE_MAX_VALUE                      176
Ajustes del acelerador, mínimo relativo y los valores máximos.

// motor temperature limit (sensor required)
#define MOTOR_TEMPERATURE_MIN_VALUE_LIMIT           65
Permite ajustar la temperatura a partir del cual se iniciará la protección del motor, lo que limita el poder. La potencia disminuye gradualmente hasta el límite de temperatura máximo, entonces el motor se para. Valores en grados Celsius.
#define MOTOR_TEMPERATURE_MAX_VALUE_LIMIT           80
Permite ajustar la temperatura máxima del motor. A esta temperatura, el motor se apagará. Valores en grados Celsius.

// enable temperature error at min limit value
#define ENABLE_TEMPERATURE_ERROR_MIN_LIMIT          1
Si está habilitado, se muestra el código de error E06 - ERROR_OVERTEMPERATURE cuando se supera el límite de temperatura mínima. Si está desactivada cuando se supera el límite máximo.

// --------------------------------------------------------------------------
// DISPLAY
// --------------------------------------------------------------------------

// display parameters
#define ENABLE_DISPLAY_WORKING_FLAG                 1
Permite que la pantalla se apague después de 5 minutos de inactividad.
#define ENABLE_DISPLAY_ALWAYS_ON                    0
Permite que la pantalla nunca se apague.
Se usa o uno u otro valor.


#define ENABLE_WHEEL_MAX_SPEED_FROM_DISPLAY         0
Habilita el límite de velocidad en la pantalla. Se ignora el límite superior del parámetro WHEEL_MAX_SPEED. El límite de velocidad siempre se mantiene activo en el modo CALLE.
Atención, cuando el límite de velocidad en la pantalla es menor que en el modo CALLE, el que está en la pantalla tiene prioridad. Ejemplo:
- límite de visualización 30 km / h, límite Street 25 km / h, límite utiliza 25 kmh 
- límite de presentación 20 km / h, límite Street 25 km / h, límite usaron 20 km / h durante el 
establecimiento del límite, consulte el manual de su pantalla.

// delay menu function (0.1 sec)
#define DELAY_MENU_ON                               50
Retardo máximo entre la primera pulsación del botón de la luz y la segunda confirmación, en el ajuste de parámetros. También es el momento en el que, después de la confirmación y con un código de destello, se puede pasar al siguiente parámetro.

// enable delay return to default display mode
#define ENABLE_RETURN_DEFAULT_DISPLAY_MODE          1
Permite el retorno automático al modo de uso omisión de la pantalla. Si está desactivado, el 
retorno al modo anterior debe hacerse manualmente.

// delay return to default display mode (seconds)
#define DELAY_DISPLAY_MODE_DEFAULT                  30
Retraso después de cambiar el modo de uso de la pantalla para el retorno automático al modo predeterminado. 
- ENABLE_SET_PARAMETER_ON_STARTUP = 0 vuelve a la visualización de los datos. 
- ENABLE_SET_PARAMETER_ON_STARTUP = 1 se vuelve a la modificación de los parámetros.

// displays double data (0=3 VALUES 1=6 VALUES)
Permite la visualización de dos series de datos (3 + 3 valores) 

#define ENABLE_DISPLAY_DOUBLE_DATA                  0
// delay display data (0.1 sec, max 255)
// first series
#define DELAY_DISPLAY_DATA_1                        50
#define DELAY_DISPLAY_DATA_2                        50
#define DELAY_DISPLAY_DATA_3                        250
// second series
#define DELAY_DISPLAY_DATA_4                        250
#define DELAY_DISPLAY_DATA_5                        50
#define DELAY_DISPLAY_DATA_6                        50
Es el tiempo de visualización de los datos seleccionados, Después de la primera pulsación del botón luces y la segunda confirmación se ilumina de nuevo para ir a la siguiente visualización de datos. 
El valor máximo es de 255 = 25,5 segundos y puede ser diferente para cada dato individual. 
Para detener la visualización de los datos antes de que finalice el tiempo, cambiar el nivel.

// display data configuration
// first series
#define DISPLAY_DATA_1                              1
#define DISPLAY_DATA_2                              0
#define DISPLAY_DATA_3                              2
// second series
#define DISPLAY_DATA_4                              4
#define DISPLAY_DATA_5                              5
#define DISPLAY_DATA_6                              7
/*  display data code configuration
0 - motor temperature (°C)
1 - battery SOC remaining (%)
2 - battery voltage (Volt)
3 - battery current (Amp)
4 - absorbed motor power (Watt/10)
5 - adc torque sensor (8 bit)
6 - adc torque sensor (10 bit)
7 - pedal cadence (rpm)
*/
Permite elegir los datos que se muestran en la pantalla. Hay que elegir los datos a visualizar, en el tipo y en el orden de preferencia entre las disponibles. 

// --------------------------------------------------------------------------
// ASSIST
// --------------------------------------------------------------------------
// CAUTION: all assist values _LEVEL_0 for safety must be set to zero
PRECAUCIÓN. Por razones de seguridad en valor de asistencia a nivel 0 debe ser cero. Hay 4 niveles disponibles para cada modo de asistencia:
1-ECO, 
2-TOUR, 
3-SPORT, 
4-TURBO.

// power assist (% max 500)
#define POWER_ASSIST_LEVEL_0                        0
#define POWER_ASSIST_LEVEL_1                        40
#define POWER_ASSIST_LEVEL_2                        60
#define POWER_ASSIST_LEVEL_3                        90
#define POWER_ASSIST_LEVEL_4                        140
Modo de asistencia proporcional a la potencia de los pedales. Los valores en porcentaje, (máx 500%)
Ejemplo, si damos 100 vatios a los pedales, con la asistencia del 300%, el motor proporciona 300 vatios.

// torque assist (max 254)
#define TORQUE_ASSIST_LEVEL_0                       0
#define TORQUE_ASSIST_LEVEL_1                       70
#define TORQUE_ASSIST_LEVEL_2                       100
#define TORQUE_ASSIST_LEVEL_3                       130
#define TORQUE_ASSIST_LEVEL_4                       160
Modo de asistencia proporcional al par en los pedales.La potencia suministrada por el motor es proporcional al par aplicado y los valores de asistencia conjunto. Valores relativos (máx 254).

// cadence assist (max 254)
#define CADENCE_ASSIST_LEVEL_0                      0
#define CADENCE_ASSIST_LEVEL_1                      70
#define CADENCE_ASSIST_LEVEL_2                      100
#define CADENCE_ASSIST_LEVEL_3                      130
#define CADENCE_ASSIST_LEVEL_4                      160
Modo de asistencia sujeta a movimiento del pedal. La potencia suministrada por el motor depende en parte del conjunto valores de asistencia y en parte de la cadencia de los pedales. Valores relativos (máx 254).

// eMTB assist (sensitivity 0 to 20)
#define EMTB_ASSIST_LEVEL_0                         0
#define EMTB_ASSIST_LEVEL_1                         4
#define EMTB_ASSIST_LEVEL_2                         7
#define EMTB_ASSIST_LEVEL_3                         10
#define EMTB_ASSIST_LEVEL_4                         15
Modo de asistencia con un porcentaje progresivo del par motor en los pedales. La potencia suministrada por el motor es progresivamente proporcional al par aplicado. 20 sensibilidades predefinidos están disponibles.Los valores altos corresponden a una asistencia menos progresiva, es más fácil y rápido llegar a la máxima potencia del motor. Elija los valores de sensibilidad preferidos de entre los disponibles, de 1 a 20.

// walk assist (max 100)
#define WALK_ASSIST_LEVEL_0                         0
#define WALK_ASSIST_LEVEL_1                         30
#define WALK_ASSIST_LEVEL_2                         40
#define WALK_ASSIST_LEVEL_3                         50
#define WALK_ASSIST_LEVEL_4                         60
Modo de asistencia al caminar hasta 6 km / h. Se activa con el botón dedicado, consulte el manual de su pantalla. El valor máximo 100. El uso de valores bajos con marchas largas pueden dañar la transmisión.

// walk assist threshold (speed limit max km/h)
#define WALK_ASSIST_THRESHOLD_SPEED                 6
Límite máximo de velocidad en modo asistencia al caminar, en km / h. Informarse acerca de las restricciones legislativas sobre el límite.

// walk assist debounce (brake sensor required)
#define WALK_ASSIST_DEBOUNCE_ENABLED                0
Permite usar el modo asistencia al caminar sin mantener pulsado el botón de ayuda. 
Útil en terrenos difíciles, cuando un rebote puede hacer que el botón sea liberado no deseado. Sólo está disponible con sensores de freno instalados y activados.

// walk assist debounce time (0.1 sec, max 255)
#define WALK_ASSIST_DEBOUNCE_TIME                   120
Tiempo que se mantiene la asistencia al caminar sin pulsar el boton.
Se recomienda ajustar este tiempo lo más bajo posible, ligeramente superior a la necesaria para la activación de la caminata ayudar. 
La asistencia permanece activa después de soltar el botón durante el tiempo establecido. Para detener la asistencia durante este tiempo hay que cambiar el nivel de asistencia, xej: con XH18 se detiene sólo cuando se mueve hacia el nivel superior.

// cruise level (target km/h, brake sensor required)
#define CRUISE_TARGET_SPEED_LEVEL_0                 0
#define CRUISE_TARGET_SPEED_LEVEL_1                 15
#define CRUISE_TARGET_SPEED_LEVEL_2                 18
#define CRUISE_TARGET_SPEED_LEVEL_3                 21
#define CRUISE_TARGET_SPEED_LEVEL_4                 24
Modo de asistencia con control de crucero.
El valor establecido en los niveles es la velocidad objetivo para ser mantenido en km / h. La potencia 
suministrada por el propio motor se ajusta para mantener la velocidad elegida. la velocidad no puede ser alcanzado debido a la limitada potencia del motor. Los límites de velocidad visto anteriormente tienen prioridad. 
Lea cuidadosamente la función del parámetro siguiente.

// cruise function with pedal rotation
#define CRUISE_MODE_CADENCE_ENABLED                 1
Habilita el modo de asistencia de crucero subordinado al movimiento de los pedales. La velocidad se mantiene sólo con un mínimo movimiento del pedal. Al parar de pedalear el motor se detiene.
Se puede comparar al modo cadencia, la diferencia es que el cambio del nivel no cambia la potencia suministrada por el motor, pero si la velocidad a alcanzar. Si está desactivado, no se requiere la rotación del pedal para mantener la velocidad.
Se puede comparar a un acelerador que permita variar de velocidad en pasos. El aumento del nivel aumenta la velocidad, disminuyendo disminuye, a 0-OFF las paradas del motor. Este modo sólo está disponible con los sensores de freno instalado y activado.
Informarse acerca de las restricciones legislativas relacionadas con el uso. 
// cruise threshold (speed limit min km/h)
#define CRUISE_THRESHOLD_SPEED                      10
Límite de velocidad mínima para activar el modo de crucero, en km / h. Por debajo de este 
valor, la asistencia en la cadencia ASSIST modo está activo.

#endif // ADVANCED_H_




Me limito a informar acerca del firmware y su desarrollo, los verdaderos autores y a los que se les debe reconocimiento por si labor son, entre otros:
Casainho, Bubba, stancecoke (endless-sphere.com), marcoq, mbrusa (Jobike forum) and others....



Descargas opensource:


5 comentarios:

fanTsdz2 dijo...

Muy buen tutorial detallado, espero poder probar pronto. Seria interesante hacer otro tutorial con las opciones de cambios de parámetros en la pantalla, para evitar tener que flashear cada vez que quieras probar una modificación de un parámetro. En el tutorial original creado por mbrusa creo que queda poco claro como moverse con los botones de la pantalla. Gracias. FanTDSZ2

Alex G. dijo...

cambiar los modos de motor es sencillo con la pantalla encendida se selecciona el nivel 0 de asistencia y se pulsa el botón de luces hasta que E02 parpadea.

Cuando E02 parpadee no toques nada, luego vaya al nivel de asistencia 2 "TOUR" y con E02 se usa la asistencia de potencia, E03 para usar la asistencia de torque.

Para volver a eMtb, si la tienes por defecto, simplemente apaga y vuelve a encender.

Zepp dijo...

Hola.Tengo problema para descargar el prgrama v 2.0 porque ma da un error el link....Tiene usted una copia para enviar me la.Gracias

Unknown dijo...

No puedo descargar el programa v2.0 y no lo encuentro en el foro.... Lo puedes volver a colgar

Unknown dijo...

Ja również poproszę o prawidłowy plik