RolluS Posted June 26, 2016 Share Posted June 26, 2016 (edited) On 21/06/2016 at 2:46 PM, electric_vehicle_lover said: - the baudrate is 115200 bits/s Pus on the screenshot data bits: 5 Stop: 1 Parity: none Thank you haha Edited June 26, 2016 by RolluS 1 Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 3, 2016 Share Posted July 3, 2016 So, MicroWorks just announced the new 40A board version. I have 5 units of the 30B version, 2 of them I use on my own EUCs. I will use the 30B version for firmware developing but at some time I will jump to the 40A version. Everyday I learn and learn more about the motor control and I have more experiences with the boards - I just finished my MOD to add a RGB LED strip to my EUC with the 30B board: 3 Quote Link to comment Share on other sites More sharing options...
Popular Post lizardmech Posted July 4, 2016 Popular Post Share Posted July 4, 2016 I had to redo much of my PCB due to a gate driver issue. Just ordered the PCBs for the new one. I sort of got a little carried away while fixing things. Now it has 12 mosfets, they come in either 80V 200A 1.6mohm or 150V 100A 6.6mohm. It has an on board 150V linear regulator to power all the IC. It now has 4amp isolated gate drivers and dedicated transistors to turn the mosfet off. The high current areas are exposed so you can fill them with solder or add bus bars. 6 Quote Link to comment Share on other sites More sharing options...
esaj Posted July 5, 2016 Share Posted July 5, 2016 (edited) On 4.7.2016 at 5:58 PM, lizardmech said: It has an on board 150V linear regulator to power all the IC. Which linear regulator is that? I just posted on another topic about the Microworks 60V -> 12V -converter, as it looked like it was linear from the photo (no inductor in sight), but right as I posted that, electric_vehicle_lover posted a link to the product page, which showed the inductor hidden behind a capacitor in the original picture (so it's a switcher) I just ordered a few TL783's (125V linear regulator) about a week ago, just wondering what other options there are. I suspect you can't draw much current from those, if the voltage is high, or at least need a huge heatsink, as the regulator needs to drop a lot of voltage... I was thinking of using the regulators to drop the voltage for a voltage-display I plan on using on my wheel (it can display 0-100V, but needs a separate 4-32V input to work, so I though I'd drop the battery voltage through a small regulator, instead of adding a larger switching buck-converter). No idea how much current it uses though, probably fairly little, so a basic TO-220 heatsink should do..? Edited July 5, 2016 by esaj shower -> showed :P 1 Quote Link to comment Share on other sites More sharing options...
lizardmech Posted July 6, 2016 Share Posted July 6, 2016 10 hours ago, esaj said: I just ordered a few TL783's (125V linear regulator) about a week ago, just wondering what other options there are. I suspect you can't draw much current from those, if the voltage is high, or at least need a huge heatsink, as the regulator needs to drop a lot of voltage.. Same one I used, you can actually go higher than 125, it's 125V + the output voltage. It outputs 700mA but that is quite a bit for powering other IC, large gate drivers only use something like 50mA continuously. The large 4A or 5A outputs are only tiny pulses with power taken from capacitors. You can probably step down in multiple phases and add parallel ones to deal with more voltage and current. 1 Quote Link to comment Share on other sites More sharing options...
RolluS Posted July 15, 2016 Share Posted July 15, 2016 On 16/11/2015 at 0:13 AM, esaj said: Here's a long, (probably) related response about a regenerative braking question which explains what happens in different situations (although it only uses a single half-bridge for 1-phase motor, but I think similar stuff is going on with 3-phase motor): http://electronics.stackexchange.com/a/56187 Very interesting, thanks @esaj. @Everyone please: how would regenerative braking work with a plenty charged battery, say if I live uphill? Where does the energy go (heat in motor, in mosfet, etc..) ? Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 15, 2016 Share Posted July 15, 2016 IMO, in one phase will to to the battery and on another as a short-circuit of motor phases. I think that at low velocity and when the battery is charged, short-circuit. Also when battery is charged the board may warn you and shutoff to protect the battery pack. 1 Quote Link to comment Share on other sites More sharing options...
RolluS Posted July 15, 2016 Share Posted July 15, 2016 Thanks. That mean at high velocity we can fall due to cut-off, but the board would beep before? Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 15, 2016 Share Posted July 15, 2016 Yes IMO. You can look at the VESC firmware to see what it does when the battery voltage is MAX. My Smart electric car disables the electric brakes when the battery is fully charged - I need to ride about 5kms for it to enable the electric brakes - and this information is on the User Manual. 1 Quote Link to comment Share on other sites More sharing options...
RolluS Posted July 15, 2016 Share Posted July 15, 2016 Thanks. Smart is a nice car! We own one, Cabrio 2002, gasoline. I've tried the electric model at "Mondial de l'Automobile", a big car show at Paris, France. I've loved it but damn to much for our budget. Sorry for OT and thanks for the behavior. The fact is that a wheel does not have mechanical brakes. Quote Link to comment Share on other sites More sharing options...
RolluS Posted July 15, 2016 Share Posted July 15, 2016 (edited) OK here we go (https://github.com/vedderb/bldc/tree/cb2a205cb8f99f9dd5a75d7a1606394b6c2cf58f) m_conf.l_max_vin = 57; //volts void mc_interface_mc_timer_isr(void) { ledpwm_update_pwm(); // LED PWM Driver update const float input_voltage = GET_INPUT_VOLTAGE(); // Check for faults that should stop the motor static int wrong_voltage_iterations = 0; if (input_voltage < m_conf.l_min_vin || input_voltage > m_conf.l_max_vin) { wrong_voltage_iterations++; if ((wrong_voltage_iterations >= 8)) { mc_interface_fault_stop(input_voltage < m_conf.l_min_vin ? FAULT_CODE_UNDER_VOLTAGE : FAULT_CODE_OVER_VOLTAGE); } } else { wrong_voltage_iterations = 0; } void mc_interface_fault_stop(mc_fault_code fault) { if (mc_interface_dccal_done() && m_fault_now == FAULT_CODE_NONE) { // Sent to terminal fault logger so that all faults and their conditions // can be printed for debugging. [...] fdata.voltage = GET_INPUT_VOLTAGE(); [...] } m_ignore_iterations = m_conf.m_fault_stop_time_ms; switch (m_conf.motor_type) { case MOTOR_TYPE_BLDC: case MOTOR_TYPE_DC: mcpwm_stop_pwm(); break; case MOTOR_TYPE_FOC: mcpwm_foc_stop_pwm(); break; default: break; } m_fault_now = fault; } Motor simply stop in case of over voltage. Braking set duty cycle to 0.0 and apply current. * @param dutyCycle* The duty cycle in the range [-MCPWM_MAX_DUTY_CYCLE MCPWM_MAX_DUTY_CYCLE]* If the absolute value of the duty cycle is less than MCPWM_MIN_DUTY_CYCLE,* the motor phases will be shorted to brake the motor. I can't find differences in braking according to battery state. so I would guess here we just have a cutoff on over voltage. Edited July 16, 2016 by RolluS 1 Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 15, 2016 Share Posted July 15, 2016 Thanks for the analysis and for sharing. I am being reading the VESC firmware to learn and is great to analyse this part of the brake and over voltage of the battery. Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 18, 2016 Share Posted July 18, 2016 (edited) So riding my EGG EUC yesterday, the ambient temperature were around 35ºC and I were riding slowly maybe for 15 minutes (I were looking for PokeStops and Pokemons - yes, using EUC for this is great!!). The EUC started to beep and tilted back the pedals: https://github.com/EGG-electric-unicycle/documentation/wiki/MicroWorks-30B4---30km-h-controller-board-with-bluetooth#max-temperature-protection Max temperature protection When the temperature achieve 65ºC, the EUC will make 2 quick beeps and tilt back the pedals. Here is a screenshot showing the app and the temperature on that situation: There is no temperature sensor on the board. I believe the system uses the STM32F103 internal temperature sensor. Edited July 18, 2016 by electric_vehicle_lover Quote Link to comment Share on other sites More sharing options...
Hunka Hunka Burning Love Posted July 18, 2016 Share Posted July 18, 2016 Oh so there is tiltback? I thought there wasn't, but it's good to know. So do you think you need to modify your design to incorporate a larger heatsink or add some sort of airflow to help keep temperatures down? Quote Link to comment Share on other sites More sharing options...
RolluS Posted July 18, 2016 Share Posted July 18, 2016 I guess tiltback is not programmed on the skateboard version of 30B controller Quote Link to comment Share on other sites More sharing options...
Hunka Hunka Burning Love Posted July 18, 2016 Share Posted July 18, 2016 So how is your skateboard running? Got any video? What happens if you go too fast on it, does the power cut out making the front hit the pavement? Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 18, 2016 Share Posted July 18, 2016 On 30B4 for EUC, there is no tilt back for MAX speed, just beeps. For MAX temperature, there is tilt back and beeps. VESC firmware, for instance, have 2 thresholds for temperature. 1st will limit the current that should lower the temperature and the 2nd and higher one will shutdown the motor - here is the code: #define MCCONF_L_LIM_TEMP_FET_START 80.0 // MOSFET temperature where current limiting should begin #define MCCONF_L_LIM_TEMP_FET_END 100.0 // MOSFET temperature where everything should be shut off /** * Update the override limits for a configuration based on MOSFET temperature etc. * * @param conf * The configaration to update. */ static void update_override_limits(volatile mc_configuration *conf) { const float temp = NTC_TEMP(ADC_IND_TEMP_MOS2); // Temperature if (temp < conf->l_temp_fet_start) { conf->lo_current_min = conf->l_current_min; conf->lo_current_max = conf->l_current_max; } else if (temp > conf->l_temp_fet_end) { conf->lo_current_min = 0.0; conf->lo_current_max = 0.0; mc_interface_fault_stop(FAULT_CODE_OVER_TEMP_FET); https://github.com/vedderb/bldc/blob/master/mc_interface.c 1 Quote Link to comment Share on other sites More sharing options...
lizardmech Posted July 18, 2016 Share Posted July 18, 2016 I had my controller running on instaspin, tried VESC software and it destroyed the entire thing the first time. I had a 5A current limit but it still allowed a total short to the point the entire board and battery pack was destroyed and on fire. 2 Quote Link to comment Share on other sites More sharing options...
RolluS Posted July 18, 2016 Share Posted July 18, 2016 7 hours ago, HunkaHunkaBurningLove said: So how is your skateboard running? Got any video? What happens if you go too fast on it, does the power cut out making the front hit the pavement? I haven't ran it with the new setup yet (batteries, deck). Here is a clip of myself on the board about a week after receiving it: Here is a channel with all videos I've found about same skateboard as mine: Sorry for OT @electric_vehicle_lover.@electric_vehicle_lover, @HunkaHunkaBurningLove. When I go above max speed with my 30B, 2 things may happen: Battery BMS cut off (now it is cancelled by a jump cable) Nose dive because battery hasn't enough power to help the motor recover. Both case there are beeps before That's a feeling/real life testing, no science here to verify. 1 Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 18, 2016 Share Posted July 18, 2016 (edited) 6 hours ago, lizardmech said: I had my controller running on instaspin, tried VESC software and it destroyed the entire thing the first time. I had a 5A current limit but it still allowed a total short to the point the entire board and battery pack was destroyed and on fire. That doesn't count -- people are using VESC on their electric skate board and catching Pokémons!! Edited July 18, 2016 by electric_vehicle_lover Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 26, 2016 Share Posted July 26, 2016 (edited) I have good news about MicroWorks 30B4 board -- firmware can be programmed by Bluetooth app!!! How I got there? - I were trying to connect to the board using SWD, to start trying a "blink" firmware. I have a testing firmware using ChibiOS RTOS, the same RTOS used by VESC firmware - if I want to port VESC firmware, I want to start using ChibiOS. I verified that SWD wasn't working, even if I tested in some boards I have here. SWD works on gen1 boards but not gen2 (30B4) boards. I verified that the 3 pins connections were correct. Then I searched on google and found someone reporting the same and turns out that SWD can be disable in firmware with this code: /* disable SWJ debug port - comment if you are using JTAG */ GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE); So, I guess original firmware disable SWD. Then I verified that STM32F103 can boot in a few modes: boot to flash firmware, where the SWD is disabled on original firmware or boot to STM bootloader by UART. The boot0 pin = 3.3V enabe booting from STM bootloader and I verified that boot0 pin is on the UART Bluetooth module header, with label "BO". After I just connected a wire from the same header, to make boot0 pin = 3.3V and then the SWD worked!! -- see the picture. Although I didn't tested, I am pretty sure is possible to flash the firmware using the Bluetooth serial port - I guess is a matter to connect the STM app to flash firmware to the PC serial port, after pairing the Bluetooth module to PC. When we have a working firmware, we can include on the EGG Android app a feature to flash the board firmware - so the user don't need nothing connect any wires or buy any programmer to flash EGG firmware :-) And by the way, the EGG app is moving forward. Yesterday for the first time, Patrícia were able to connect to 30B4 board over Bluetooth and read all the information that is sent. The code is on Github. @Jessica Wu @Rein-tech @Lz Lee Edited July 26, 2016 by electric_vehicle_lover 3 Quote Link to comment Share on other sites More sharing options...
OliverH Posted July 26, 2016 Share Posted July 26, 2016 1 hour ago, electric_vehicle_lover said: I have good news about MicroWorks 30B4 board -- firmware can be programmed by Bluetooth app!!! How I got there? - I were trying to connect to the board using SWD, to start trying a "blink" firmware. I have a testing firmware using ChibiOS RTOS, the same RTOS used by VESC firmware - if I want to port VESC firmware, I want to start using ChibiOS. I verified that SWD wasn't working, even if I tested in some boards I have here. SWD works on gen1 boards but not gen2 (30B4) boards. I verified that the 3 pins connections were correct. Then I searched on google and found someone reporting the same and turns out that SWD can be disable in firmware with this code: /* disable SWJ debug port - comment if you are using JTAG */ GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE); So, I guess original firmware disable SWD. Then I verified that STM32F103 can boot in a few modes: boot to flash firmware, where the SWD is disabled on original firmware or boot to STM bootloader by UART. The boot0 pin = 3.3V enabe booting from STM bootloader and I verified that boot0 pin is on the UART Bluetooth module header, with label "BO". After I just connected a wire from the same header, to make boot0 pin = 3.3V and then the SWD worked!! Although I didn't tested, I am pretty sure is possible to flash the firmware using the Bluetooth serial port - I guess is a matter to connect the STM app to flash firmware to the PC serial port, after pairing the Bluetooth module to PC. When we have a working firmware, we can include on the EGG Android app a feature to flash the board firmware - so the user don't need nothing connect any wires or buy any programmer to flash EGG firmware :-) @Lz Lee That's the basic stuff developers need to go ahead. You guys started to play a great Puzzle. What about an iOS App and a BT4/ LE module (e.g. CRS HM-12)? I could get a colleague to write code. Is all the information available to start developing an iOS App? An App can be adopted to any other board/ BT module. Quote Link to comment Share on other sites More sharing options...
Chriull Posted July 26, 2016 Share Posted July 26, 2016 25 minutes ago, OliverH said: What about an iOS App and a BT4/ LE module (e.g. CRS HM-12)? I could get a colleague to write code. Is all the information available to start developing an iOS App? An App can be adopted to any other board/ BT module. One could combine forces with @Paco Gorina- he already has version 2.1 for iOs Bt4/le with the framework to support different wheels. For now "only" ninebot one is supported? - but including KS16 should not be too hard. Unfortionately i did not find time for this till now: 1 Quote Link to comment Share on other sites More sharing options...
RolluS Posted July 26, 2016 Share Posted July 26, 2016 wow @electric_vehicle_lover this is a really great news ! Do you have paybeer? Quote Link to comment Share on other sites More sharing options...
electric_vehicle_lover Posted July 26, 2016 Share Posted July 26, 2016 26 minutes ago, RolluS said: wow @electric_vehicle_lover this is a really great news ! Do you have paybeer? I have now ;-) https://beerpay.io/casainho 4 hours ago, OliverH said: That's the basic stuff developers need to go ahead. You guys started to play a great Puzzle. What about an iOS App and a BT4/ LE module (e.g. CRS HM-12)? I could get a colleague to write code. Is all the information available to start developing an iOS App? An App can be adopted to any other board/ BT module. I am an Android user and people near me are also Android users, I guess because is "more Open" and also we can find cheap up to very expensive devices. We will continue to develop to Android but the information is shared so others can take advantage. We are available to help with the information we have. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.