An Electric Scooter Community on a Mission to Stamp out Transportation Mediocrity.

Changing mobility one trip at a time.
#19545
Hi guys, I'm toasted and back. Missed me? :lol:
@PTbig I think you burned one of the FET bridges of the motor phases check them first and if yes check the gates driver also before replacing just the FET. The interesting part is that you're dealing with an ES100 because the PCB looks exactly the same like the ES400 ESC PCB, even the flash ROM beside the STM32 is the same size :shock: Could you do me a favour and measure where your UART Signals connect to the controller on your PCB? Because I might got a nice Idea for the ES400 :mrgreen:
#19555
Rick Sanchez wrote:
Wed Feb 05, 2020 12:50 pm
Hi guys, I'm toasted and back. Missed me? :lol:
@PTbig I think you burned one of the FET bridges of the motor phases check them first and if yes check the gates driver also before replacing just the FET. The interesting part is that you're dealing with an ES100 because the PCB looks exactly the same like the ES400 ESC PCB, even the flash ROM beside the STM32 is the same size :shock: Could you do me a favour and measure where your UART Signals connect to the controller on your PCB? Because I might got a nice Idea for the ES400 :mrgreen:
https://youtu.be/lT9bvb6C0Ac
#19558
Has anyone had the chance to look into the patched electisans? It seems bird and other companies have pushed a update to the main controller that makes this current mod fail after about two minutes. The lights on the scooter seem to flash an error code (quick pulse every 2/3 seconds) and it shuts down until the enabler is reset. I tried connecting a old bird board to the scooter and activating it that way and it still fails after two minutes, but flashes an error code that is more intense (lights blinking very fast). Perhaps electisan pushed an update out to bird which targets these specific mods (bird probably updated their GPS board code as well which would explain why the old one failed)? Does anyone think it's possible to circumvent this? My prediction is that it's expecting another form of heartbeat maybe as a security measure, but I don't know if this would be as easy to crack since they likely implemented this with security in mind. If anyone had any idea on what this could be please share, Ive read that alot of us are having this same issue and a solution would really help.
#19560
mayaku wrote:
Mon Dec 30, 2019 8:19 am
Hey Guys!
Hello to everybody and a big THANKS for your work and effort! I was reading every single post of this topic and now I am desperately waiting for my Nano to be delivered so i can finally test :D

But as i was preparing the scooter for the test I got really confused...
The Motorcontroller says it is a ES200G but the sticker ES100D...
I guess the Model number of the Controller is the important one?

Image

Image
Are you from Germany?
This is the Voi Voiager 2 or like the Modelname ES100D the D stands for Deutschland
The name on the controller is not interesting oaki is using different controllers for all different scooters.
#19561
mayaku wrote:
Fri Jan 24, 2020 1:07 am
Hi all ^^

I tried to get the ES200 unlock code from git running but the scooter never powered up.
https://github.com/chappy1978/ES200-Sco ... tree/Final

Then i decided to copy my solution for a Nano V3 with one button (http://www.mathertel.de/Arduino/OneButtonLibrary.aspx) because the output on the serial monitor for the ESP32 never was the same as with my working Nano V3.

The code is very simple but convirmed working for an ES100D from Voi and an ESP32
Code: Select all
/*
   -- New project --
   
   This source code of graphical user interface 
   has been generated automatically by RemoteXY editor.
   To compile this code using RemoteXY library 2.4.3 or later version 
   download by link http://remotexy.com/en/library/
   To connect using RemoteXY mobile app by link http://remotexy.com/en/download/                   
     - for ANDROID 4.3.1 or later version;
     - for iOS 1.3.5 or later version;
    
   This source code is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.    
*/

//////////////////////////////////////////////
//        RemoteXY include library          //
//////////////////////////////////////////////

// RemoteXY select connection mode and include library 
#define REMOTEXY_MODE__ESP32CORE_BLE

#include <RemoteXY.h>

// RemoteXY connection settings 
#define REMOTEXY_BLUETOOTH_NAME "My_Scooter"   // The name you see the Scooter in the RemoteXY app
#define REMOTEXY_ACCESS_PASSWORD "password"  // Put here the password to access the Scooter


// RemoteXY configurate  
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
  { 255,2,0,0,0,49,0,8,8,1,
  2,0,17,20,33,13,4,26,31,31,
  79,78,0,79,70,70,0,129,0,37,
  53,12,6,16,70,97,115,116,0,2,
  0,10,50,22,11,1,26,31,31,79,
  78,0,79,70,70,0 };
  
// this structure defines all the variables of your control interface 
struct {

    // input variable
  uint8_t switch_1; // =1 if switch ON and =0 if OFF 
  uint8_t speed_switch; // =1 if switch ON and =0 if OFF 

    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0 

} RemoteXY;
#pragma pack(pop)

/////////////////////////////////////////////
//           END RemoteXY include          //
/////////////////////////////////////////////

#include <Arduino.h>

////////////////////////////////////////////
//         Scooter Command include        //
///////////////////////////////////////////


byte slow[] = {0xA6, 0x12, 0x02, 0x65, 0x14, 0x86};   // Speed Limit to 20 km/h
byte fast[] = {0xA6, 0x12, 0x02, 0x35, 0xFF, 0x38};   // Maximum Speed
byte off[] = {0xA6, 0x12, 0x02, 0x00, 0xFF, 0xEA};


void setup()
{
  RemoteXY_Init ();

  Serial.begin(9600);


}

void loop()
{
  RemoteXY_Handler ();



   if((RemoteXY.switch_1 == 1) && (RemoteXY.speed_switch == 0))
   {
    Serial.write(slow, sizeof(slow));    
   }

   else if((RemoteXY.switch_1 == 1) && (RemoteXY.speed_switch == 1))
   {
    Serial.write(fast, sizeof(fast));
   }
    
    else
   {
      Serial.write(off, sizeof(off));     
   }
   delay(200);
}

The delay at the end is necessary because otherwise the serial output is written too fast and the scooter won't start ;)
Very important is the baud rate 9600, didn't get it working with an other ^^
Here are the setting for the Arduino IDE:
Image
The wiring is the same as for the Nano V3.
I hope somebody can use this or even better improove it :D
you have an error in the code. The default code is transmitted at all times to shut down.
that is, after the "password" scooter immediately receives a command to shutdown
Please remake. preferably remotex as an empty string for the command of experimental
#19565
MrSpriggs1 wrote:
Thu Jan 30, 2020 7:06 pm
Its the current not really the voltage that is limiting the speed of the motor. And that is limited by the MOSFETS in the ESC and the amount of amps the battery can discharge at any moment. From reading the specs the motor is 150W-300W anything motor than the motor will cook. Now if your wanted to put another motor, ESC, and on the rear wheel bracket. Things might get interesting. But in reality I think the speed is software inhibited so you would need to reprogram the ESC, or spoof the speed signal from the hall sensors on the wheel. All fun options.
bigredrobot wrote:
Fri Jan 24, 2020 12:44 am
Do you think it would be possible to use a step up converter between the motor and controller to boost the voltage a bit from 36v to 48v? Guessing it would have to take a bunch of amps but at face value?

slightly Solder tin tungsten shunt esc and will be happy :lol:
#19567
No, there is no error. The off command is sent when the power switch is in off-position.
You know how an if() statement is working?
vik sinikov wrote:
Thu Feb 06, 2020 10:13 am
mayaku wrote:
Fri Jan 24, 2020 1:07 am
Hi all ^^

I tried to get the ES200 unlock code from git running but the scooter never powered up.
https://github.com/chappy1978/ES200-Sco ... tree/Final

Then i decided to copy my solution for a Nano V3 with one button (http://www.mathertel.de/Arduino/OneButtonLibrary.aspx) because the output on the serial monitor for the ESP32 never was the same as with my working Nano V3.

The code is very simple but convirmed working for an ES100D from Voi and an ESP32
Code: Select all
/*
   -- New project --
   
   This source code of graphical user interface 
   has been generated automatically by RemoteXY editor.
   To compile this code using RemoteXY library 2.4.3 or later version 
   download by link http://remotexy.com/en/library/
   To connect using RemoteXY mobile app by link http://remotexy.com/en/download/                   
     - for ANDROID 4.3.1 or later version;
     - for iOS 1.3.5 or later version;
    
   This source code is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.    
*/

//////////////////////////////////////////////
//        RemoteXY include library          //
//////////////////////////////////////////////

// RemoteXY select connection mode and include library 
#define REMOTEXY_MODE__ESP32CORE_BLE

#include <RemoteXY.h>

// RemoteXY connection settings 
#define REMOTEXY_BLUETOOTH_NAME "My_Scooter"   // The name you see the Scooter in the RemoteXY app
#define REMOTEXY_ACCESS_PASSWORD "password"  // Put here the password to access the Scooter


// RemoteXY configurate  
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
  { 255,2,0,0,0,49,0,8,8,1,
  2,0,17,20,33,13,4,26,31,31,
  79,78,0,79,70,70,0,129,0,37,
  53,12,6,16,70,97,115,116,0,2,
  0,10,50,22,11,1,26,31,31,79,
  78,0,79,70,70,0 };
  
// this structure defines all the variables of your control interface 
struct {

    // input variable
  uint8_t switch_1; // =1 if switch ON and =0 if OFF 
  uint8_t speed_switch; // =1 if switch ON and =0 if OFF 

    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0 

} RemoteXY;
#pragma pack(pop)

/////////////////////////////////////////////
//           END RemoteXY include          //
/////////////////////////////////////////////

#include <Arduino.h>

////////////////////////////////////////////
//         Scooter Command include        //
///////////////////////////////////////////


byte slow[] = {0xA6, 0x12, 0x02, 0x65, 0x14, 0x86};   // Speed Limit to 20 km/h
byte fast[] = {0xA6, 0x12, 0x02, 0x35, 0xFF, 0x38};   // Maximum Speed
byte off[] = {0xA6, 0x12, 0x02, 0x00, 0xFF, 0xEA};


void setup()
{
  RemoteXY_Init ();

  Serial.begin(9600);


}

void loop()
{
  RemoteXY_Handler ();



   if((RemoteXY.switch_1 == 1) && (RemoteXY.speed_switch == 0))
   {
    Serial.write(slow, sizeof(slow));    
   }

   else if((RemoteXY.switch_1 == 1) && (RemoteXY.speed_switch == 1))
   {
    Serial.write(fast, sizeof(fast));
   }
    
    else
   {
      Serial.write(off, sizeof(off));     
   }
   delay(200);
}

The delay at the end is necessary because otherwise the serial output is written too fast and the scooter won't start ;)
Very important is the baud rate 9600, didn't get it working with an other ^^
Here are the setting for the Arduino IDE:
Image
The wiring is the same as for the Nano V3.
I hope somebody can use this or even better improove it :D
you have an error in the code. The default code is transmitted at all times to shut down.
that is, after the "password" scooter immediately receives a command to shutdown
Please remake. preferably remotex as an empty string for the command of experimental
#19568
Yes. I am here in Hamburg :D :D :D
Z3eraser wrote:
Thu Feb 06, 2020 9:58 am
mayaku wrote:
Mon Dec 30, 2019 8:19 am
Hey Guys!
Hello to everybody and a big THANKS for your work and effort! I was reading every single post of this topic and now I am desperately waiting for my Nano to be delivered so i can finally test :D

But as i was preparing the scooter for the test I got really confused...
The Motorcontroller says it is a ES200G but the sticker ES100D...
I guess the Model number of the Controller is the important one?

Image

Image
Are you from Germany?
This is the Voi Voiager 2 or like the Modelname ES100D the D stands for Deutschland
The name on the controller is not interesting oaki is using different controllers for all different scooters.
#19581
mayaku wrote:
Thu Feb 06, 2020 7:07 pm
Yes. I am here in Hamburg :D :D :D
Z3eraser wrote:
Thu Feb 06, 2020 9:58 am
mayaku wrote:
Mon Dec 30, 2019 8:19 am
Hey Guys!
Hello to everybody and a big THANKS for your work and effort! I was reading every single post of this topic and now I am desperately waiting for my Nano to be delivered so i can finally test :D

But as i was preparing the scooter for the test I got really confused...
The Motorcontroller says it is a ES200G but the sticker ES100D...
I guess the Model number of the Controller is the important one?

Image

Image
Are you from Germany?
This is the Voi Voiager 2 or like the Modelname ES100D the D stands for Deutschland
The name on the controller is not interesting oaki is using different controllers for all different scooters.
Na dann Servus aus Bayern :lol: :D
#19582
HAHAHAHA :lol: :lol: :lol:
Ich bin in Memmingen geboren :D

Z3eraser wrote:
Fri Feb 07, 2020 4:27 pm
mayaku wrote:
Thu Feb 06, 2020 7:07 pm
Yes. I am here in Hamburg :D :D :D
Z3eraser wrote:
Thu Feb 06, 2020 9:58 am


Are you from Germany?
This is the Voi Voiager 2 or like the Modelname ES100D the D stands for Deutschland
The name on the controller is not interesting oaki is using different controllers for all different scooters.
Na dann Servus aus Bayern :lol: :D
  • 1
  • 60
  • 61
  • 62
  • 63
  • 64
  • 80
LIME 3.GEN PERSONAL.....

Hi alecxs, the main Version from Emile ist runni[…]

No they's no gps in the big , removable battery yo[…]

As this was a rental version whos overstock was […]

Any one got any info on beryl bikes I seen a few[…]