Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Warning: Updating firmware will often make your saved motor configuration become invalidated. If you care about the settings loaded on the drive, make sure you use 'Save To File' on the configuration tab of the GUI so you can load the settings back onto the drive when done! When you update the firmware, the parameters will only be invalidated and lost if the new firmware has a different parameter definition set. Most major firmware releases change this but if an update has the exact same parameter definition, you will notice your parameters are retained.
Launch the updater EXE and select the .ENC file for the firmware you want to update to. You can downgrade or upgrade from and to any version you want.
Connect the USB cable with the drive powered off, then connect the ESC to a power source (such as a battery or lab supply). The LED on the drive should be solid blue. When it is solid blue, click load (you might need to wait a few seconds for the computer to recognize the drive). The drive will exit this solid-blue bootloader mode after 10-15 seconds so you need to get the timing right.
An alternate way to enter the bootloader to keep it in bootloader until the next power cycle is clicking 'Bootload and Reboot' on the configuration tab of the GUI. After clicking this, the drive will reboot and be in the solid-blue bootloader state. Now it will remain in bootloader forever until the next power cycle so you have all the time you need if you are struggling to use the timed bootloading method.
Windows GUI can be downloaded here.
June 27, 2019 - v1.1.10 April 1, 2019 - v1.1.9 January 10, 2019 - v1.1.8 November 15, 2018 - v1.1.7 (see comment in release notes about PWM scaling if using PWM input!) October 9, 2018 - v1.1.5 October 3, 2018 - v1.1.4 August 23, 2018 - v1.1.2 August 17, 2018 - v1.1.1 July 17, 2018 - v1.1.0 July 12, 2018 - v1.0.100
November 1, 2018 - v1.0.1 increases output power 4dB for increased range.
v1.1.10:
Adds support for erasing the log memory chip
v1.1.9:
Adds a parameter that allows you to disable BTLE so that there are no security risks of people changing parameters while a drive is operating.
v1.1.8:
Re-enable data logging
v1.1.7 (note v1.1.6 was unreleased so this is a change log since 1.1.5):
The scale for PWM commands was changed in 1.1.7 to represent milliseconds rather than previous arbitrary units. This means if you use PWM input, you will need to re-adjust the throttle min/max/neutral points.
Fix math error in DC current estimate where the value would falsely increase when the PWM magnitude is railed.
Fix bug where regen torque is not available when a drive is configured in forward-only torque mode using hall sensors on a relatively slow motor (such as a bicycle hub motor).
Flash data logging has been disabled while an issue with the system is being investigated (in most cases, it didn't work in the previous releases either). We hope to re-enable this in the near future in a new firmware update.
Revise safety system on PWM so that there's no way updating settings can make the drive start up even if entering PWM mode and/or assigning invalid PWM ranges. PWM must pass through neutral before it'll start even after parameter updates.
Correct behavior to take away torque or speed command when PWM-on-encoder-line signal is disconnected from the drive as a safety if throttle is lost.
v1.1.5:
Bug fix which caused CAN re-transmission to fail in 1.1.4.
Direction reversal capability is now available from within the Motor Settings section of configuration.
Bug fix which prevents certain motors from stopping when spinning in jitter-start speed mode with a low slew rate command.
Bug fix where a motor with speed-dependent regen current that falls to zero-current at zero-RPM in hall-sensor mode may get stuck thinking it's spinning very slowly in reverse and not be able to accelerate forward.
v1.1.4 (note v1.1.3 was unreleased so this is a change log since 1.1.2):
Corrected major bugs in the current command offset system which previously prevented reaching full regen when the motor was spinning forwards in torque mode.
Corrected issue with integrator runaway during jitter start modes that created over-current faults and popping noises on certain motors and configurations.
Improved performance of undervoltage and overvoltage foldbacks to avoid tripping a hard fault during normal operation
Make Q-current request be buffered in mtr->q_request_pre_foldback so that logging tasks asynchronous with the fastloop can't sometimes pick up pre-foldback values
Add filtering to the PWM-out magnitude before it is fed into the foldback-regen-current-in-torque-forward-only system to fix an instability
Add filtering to the signed current magnitude used in jitter start current loops to avoid excessive acoustic noise during startup
Tero tuning added (compiled when built using the Tero Keil target)
Fix a divide-by-zero vulnerability if regen or accel current limit is set to 0A (or speed-dependent with a minimum of 0A).
Improvements to under-voltage performance decreasing the odds of false-tripping an under voltage fault.
Add support for CAN networking for command forwarding
Add support for throttle expo
Independent throttle/brake now smoothly transition between throttle and brake. No more step-change in torque request when you tap the brakes.
Change foldback-below-PWM-torque-forward-only default to 5% (previously 2%).
v1.1.2:
Major reliability bug fixes in the absolute encoder calibration algorithm.
Fix flash logging which was broken in v1.1.1.
Add raw brake input to the log
v1.1.1:
Remove current HPF parameter. Confusing and un-utilized.
Improved current command offset which is now just one parameter rather than being a speed-dependent setup requirement.
Bug-fix where the Q-axis integrator was allowed to run away when in torque-mode jitter-start-mode and a zero current command was received with the motor not spinning. This resulted in a large current spike when a command was received as the integrator was railed to a high voltage.
Add ability to set regen current foldback at low PWM widths when in torque forward only mode to avoid motor jerking at very low speeds with high regen commands.
Remove current HPF parameter. Confusing and un-utilized.
Improved current command offset which is now just one parameter rather than being a speed-dependent setup requirement.
Bug-fix where the Q-axis integrator was allowed to run away when in torque-mode jitter-start-mode and a zero current command was received with the motor not spinning. This resulted in a large current spike when a command was received as the integrator was railed to a high voltage.
Add ability to set regen current foldback at low PWM widths when in torque forward only mode to avoid motor jerking at very low speeds with high regen commands.
v1.1.0:
Turn on MCU pull-down on UART RX line for increased safety against noise-induced QX messages.
Update QX protocol to accept '...QQX...' beginning of message to allow for sending many Q's to clear the parser state machine.
Corrected feed-forward KV math on a ramp-start in speed mode to decrease the speed jump when transitioning from ramp to run.
Bug fix where the first time performing resistance might give different (incorrect) results compared to subsequent resistance measurements.
Drive Specs:
Input Voltage: 4S (13.6v) - 12S (50.4v)*
Max peak phase current: 200A
Continuous current with little to no heatsinking (hot-side facing upwards and unobstructed): 60A
Continuous current when bolted to a typical EV aluminum chassis: 100-150A
Continuous current with infinite aluminum heatsink or water cooling, and forced air cooling on phase wires: 200A
Control Inputs: PWM, Analog (1x combined throttle/brake or independent throttle and brake), UART/CAN (for advanced users to interface through the Freefly API's QX protocol)
DC-Input: XT90
Phase-Output: 8mm Female Bullet
Sensor support: Fully sensorless, digital hall sensors, PWM
Operating modes: Torque mode (EV), speed mode (Multirotor, requires advanced user tuning), angle/servo mode (experimental, requires advanced user tuning and high-resolution motor encoder)
23.4kHz switching frequency for zero audible PWM noise
Integrated 5A 5V BEC (Recommended continuous-current draw to be kept less than 3A)
Water resistant and splash proof - integrate into your application to avoid continuous water exposure
* (motor inductance must be above 12uH line-to-neutral when operating over 6S battery voltage or damage may occur and warranty void!)
The Arc200 was conceived as a universal motor drive that allows a variety of use cases. Our priorities in designing the Arc200 were:
Robustness
Performance
Ease of setup
Ease of integration
Arc 200 features sensorless field oriented control which allows for low torque ripple over the full speed range, and most importantly no 10-16khz screeching!
The drive generates heat on the side opposite the logo engraving. If attaching the drive to a heat sink body such as a metal chassis, heatsink, water block, etc. the heatsink should attach to the side opposite the logo. If attaching the drive to a thermal insulator such as a plastic chassis, the drive should be mounted with the heat generating side out so air will flow over the hot side. In this case the logo should mount to the plastic body. The drive mounts using 3mm hardware which is included with the Arc200.
Thermal paste or quality thermal pad should be used for proper thermal transfer into the heatsink.
If you need additional mounting hardware you can find many options here
3D model of Arc200 (STEP file): ARC200_Block.STEP
Hot side (Mount this to a heatsink or metal body through thermal pad or paste - preferred mounting method):
Cold side (Mount this to a plastic enclosure or any thermally insulating material if no heatsinking surface is available and leave the other side exposed to air):
Always connect the motor and any wiring with the DC power disconnected! Never attach or disconnect a motor when the drive is powered up. Damage to the hardware may occur.
See the Sample Configurations for some diagrams showing connections to the drive for a few popular configurations you might find on a typical electric vehicle, RC car, etc.
If you are connecting any drive to a controller that is externally grounded and/or powered (might be typical for a flight controller), make sure to read the section titled "1+ Drives connected to a receiver that is externally grounded or powered:" on the Multiple Drives page to avoid damaging your motor drive!
USB Cable
PWM Cable (accessory purchase, not included with drive): Connect this to the PWM port on the drive and use 'PWM Throttle on Encoder Line' as the input mode
Flying Lead (accessory purchase, not included with drive): Available accessory cable to allow connecting to any pin on the drive for a custom integration into an application
This page covers some common installations of an Arc drive. Before you even worry about hooking these up, it is highly recommended to get your motor spinning successfully through the GUI. Get that done first, then start thinking about setting up control inputs and sensors.
Before you start setting up the throttles, it is recommended to set the Control Mode to 'No Control (Safety State)' until you are happy with the throttle configuration. Otherwise the motor may receive commands mid-way through throttle setup! After you have setup your throttle and motor wiring, go to the Control tab of the general setup helper for more information on setting up your throttle, then launch the throttle wizard.
This is a popular configuration for something like a scooter where you want to have just one hand throttle. This can be a bit awkward for regenerative braking as these hand throttles usually spring-reset all the way one way which would put you in full braking when you take your hand off. It works out alright though if you want to get started with one throttle or really want to keep one hand free!
This is the easiest to control and makes your electric vehicle behave much like a typical car. One hand controls throttle, the other controls braking. If you let off both hands, then it coasts much like when you take your foot off the gas in a car.
For PWM control, you can use the included PWM cable. This connects to the 'PWM' wire on the drive and converts it to the industry-standard hobby servo connector. This can be connected to something like an RC receiver, or really anything that outputs a PWM with high-time controlling the signal (not duty cycle).
If you want to do your own wiring and not use the provided adapter cable follow this diagram. There are two possible ways to hook up a PWM cable, select whichever makes the most sense for your wiring! In a very poor EMI environment, using the 'Encoder PWM Input' option will be somewhat more robust (this is what the provided adapter cable uses).
With any of these configurations, you can always add a sensor to the motor if you want true zero-speed torque. Although you can usually tune sensorless to give you great performance, it's not the same as a real sensored configuration for low speed torque performance.
Most people running an electric vehicle will want to add hall sensors. It is industry standard within the hobby ESC community and many motors can be purchased with sensors already built into the motor.
This sections provides and overview of the components and concepts that you need to understand in order to use the Arc200 successfully.
- Brief introduction into Freefly Robotics and the Arc200
- Mounting the Arc 200
- Wiring process and diagrams for the Arc200
- Tips for 1st power on
- examples of how we have used Arc200
When powering on the drive, if the USB cable is connected to the drive and a computer, the drive will enter bootloader mode indicated by a solid blue LED. This mode will exit within 10-15 seconds if no firmware update command is received and enter normal operating software. If powering with the USB cable disconnected, the drive will immediately bypass the bootloader and enter normal operating software.
After first power up, you will need to connect to the GUI using the supplied USB cable. The drive needs to be configured for your motor and application before it can operate. See the section for information on this software.
The Arc200 handles a disconnected or broken throttle input in the following ways as a safety measure:
PWM: If no PWM edge is detected in the timeout period of 50ms, the drive will command 0A if in torque mode, or 0RPM if in speed mode (keep in mind in speed mode, going to 0RPM may involve high torques and a rapid change in motion!).
Analog: If an analog cable is disconnected, there is an internal pull-down resistor that will make the drive think the throttle is set at 0. Make sure this is a safe state! This could present hazards if the drive would start accelerating in either direction for this throttle command.
GUI/QX API: If no QX packet is received in a 1-second period (any QX packet, does not need to be a command packet), the drive assumes the user has disconnected and commands 0A if in torque mode, or 0RPM if in speed mode.
After configuring your drive, you should test out the throttle disconnect safety! Get the motor spinning then manually unplug the throttle and make sure you are satisfied with what happens from a safety standpoint.
"Slow" flashing = 1hz, "fast" flashing = 4hz
Solid Blue: In bootloader mode, unplug USB cable to bypass (or power cycle if a manual indefinite bootload cycle was initiated). If you drive remains solid-blue after power on without a USB cable connected, the drive's firmware somehow went corrupt. Try loading the latest firmware, if it still fails, contact Freefly support to report the issue.
Slow Flashing Blue: Drive's EEPROM could not be loaded. This usually indicates some corruption. Try using the Erase Flash button in the GUI's Configuration tab to reset the memory chip.
Fast Flashing Blue: Loss of signal, out of range (CAN, PWM), or safety state awaiting neutral throttle position before starting after re-configuration (PWM). If this is reporting a loss-of-expected-signal, then this state persists for 2 seconds minimum for any trigger, or permanently if loss is more than 0.5 second. This indicates an unreliable communication between the drive and whatever is commanding it.
Solid Green: Normal operating mode, no persistence
Slow Flashing Green: under voltage in range of potential foldback or so far under voltage that the drive has completely disconnected phase outputs.
Fast Flashing Green: over voltage in range of potential foldback or so far over voltage that the drive has completely disconnected phase outputs.
Solid Red: Overheat foldback
Slow Flashing Red: Self-test failed at boot time. This usually indicates your drive suffered internal damage. The only other way to make this happen is trying to power the drive from a DC voltage outside the absolute max capabilities called out in the drive specs.
Fast Flashing Red: --unused--
Rapid White Flicker: The internal memory chips are being erased after receiving a wipe command from the user. This state should automatically clear in a few seconds when the erase operation is complete.
If you purchased your drive as an Arc200, you will need to change the firmware on the drive to the Tero variant. If you purchased your drive as a pre-configured drive specifically for Tero use, it should come from the factory with Tero firmware installed. In that case, you only need to update the firmware if you want the latest version.
To update the firmware on the drive, follow the same instructions as for the Arc200, except use the firmware on this page.
v1.1.10 - Initial Release April 1, 2019
The Tero drive is compatible with 4S and 6S Lipo batteries. Do not use this drive on a Tero with more than 6S or damage may occur to the drive! At boot-up, the drive should beep either 4, or 6 times. Make sure this matches up to the expected cell count to ensure that under-voltage thresholds are appropriately established.
Simply remove the Castle ESC taking note of what port it plugs into on the receiver, and connect the Freefly Arc200 ESC's servo connector to the same port. Connect that cable to the 'PWM' port of the Arc200 drive.
On first power-up, have the wheels lifted off the ground. Power up the radio and ensure the throttle-zero (knob on the receiver) is set such that the Tero does not accelerate. The Arc200's throttle is set to a different zero-point than the Castle ESC so you will most likely find the tires accelerating on first power-up until you change the throttle zero point.
Now you're ready to go! No software configuration or drive tuning is required for the Tero version.
Early Arc200 drives shipped with a PWM cable that doesn't work well with the receiver that came with Tero. You can try it, but most likely there will be no throttle control. If it does not work, contact Freefly to receive the correct replacement cable.
Check out the bill of materials below to build your own like ours!
If the battery is fully charged and near the drive's over-voltage limit, there will be a limited amount of regenerative braking current available. If you use the regenerative braking for long, it will charge up the battery all the way to the absolute over-voltage cutoff limit and you will lose all regenerative braking. This is a safety feature to avoid over-charging the battery and potentially damaging or overheating it but presents a safety issue to be aware of. If you went to the top of a huge hill with a fully charged battery, by the bottom there would be little to no braking available (even at the top you may notice significantly decreased braking capability depending on your over-voltage foldback start and cutoff configurations). You should always have mechanical brakes installed on your vehicle in good working condition in case the electrical system is unable to brake due to battery charge, incorrect configuration, or hardware damage.
Always test what happens when your throttle becomes disconnected in case the wire becomes unplugged or the throttle breaks while you are riding your vehicle. For more information on what to expect, see the Powering On and Throttle Safety page.
If multiple drives are connected to the same DC power source, care must be taken to avoid damaging the drives when setting up the control interface.
The one rule that must always be obeyed is that you cannot connect ground or power supply output pins of any of the drives together! Doing so may cause permanent hardware damage to the drives and voids your warranty.
This naturally makes controlling the drives slightly more difficult because the PWM and analog inputs are ground referenced. Two solutions are outlined on this page.
For PWM input, you can connect the PWM controller to each drive in parallel but you must use the correct cables for each drive.
Freefly sells two PWM accessory cables: primary and secondary cables (store links coming soon). The primary cable connects opto-GND and GND together so that you can still get BEC power output to power a receiver, steering servo, etc. The secondary cable leaves the input opto-isolated (opto-GND and GND are not connected), but there is no BEC power available on the connector.
By using either zero or one primary cables and all other drives using secondary cables, you can safely wire the PWM lines in parallel to the receiver, flight controller, etc. as long as that receiver/controller is not grounded anywhere else in the system! Never use more than one PWM primary cable in any network of drives, and never use any PWM primary cables if the receiver/controller is externally grounded, or hardware damage may occur to the drives and your warranty will be void.
2-Drive network with receiver not externally grounded or powered
1+ Drives connected to a receiver that is externally grounded or powered:
If the controller receives external ground connection, then you cannot safely use the master cable as you would create a ground loop that may damage the drive. In this instance, all drives must use the secondary PWM cable.
If each drive will be receiving the same command (for example, a skateboard with one hand controller and two motors) then you can use CAN networking to safely command two or more drives from a single PWM source.
If only two drives are in the network, you can use the Freefly CAN link cable (not yet released for purchase as of 9/21/2018, link coming soon). If connecting three or more drives, you will have to wire up your own CAN network following the directions below.
2-drive using CAN link cable:
3+ drives using your own CAN network wiring:
Do not connect the ground wires between the CAN ports! Only CAN-L and CAN-H.
In either case, setup the drive that connects to the controller (master drive) as you normally would if that were the only drive in the system. In the Drive-Specific Functions section of the Configuration, set "Retransmit Commands via CAN As Primary?" to "Yes". This makes any command received over its standard input mode (PWM, Analog, etc.) get re-transmitted over the CAN network:
For all the other drives that connect only over CAN, this retransmission flag should be left at 'No'. On these drives, just set the "Input Throttle Mode" to "CAN Secondary". On these drives, there is no need to setup the throttle configuration as values are transmitted over CAN in their native unit (amps, RPM, degrees).