Controlling a DShot600 ESC with an Arduino Micro

So a while ago I built a quadcopter with an arduino micro. They used a standard ESC to control the brushless motors. Using the servo library, I was able to vary a PWM signal from 1000us to 2000us to control throttle.

DShot ESC are the king in town for ESC protocols, but I am having some issues on finding out how to interface with them, and if an Arduino is even fast enough to do it. Thanks for any input.

In general, posting a link to the device you want to control is better than expecting us to google it for you.

DShot 600 isn't a product, its a protocol. If you don't know the answer to the post, please don't reply.

It appears to be a serial interface rather than PWM.

Here is a brief description of the protocol.

Here is a waveform for the protocol.
https://www.rcgroups.com/forums/showthread.php?2756129-Dshot-testing-a-new-digital-parallel-ESC-throttle-signal
You may have problems keeping up with the highest speeds using a basic Arduino. Not only is the transmission speed high, but you must calculate and send a CRC also.

Edit:...and considering that this is probably for a multi-rotor, you will have maybe 4 of these devices to manage. This is not even taking into account the inputs to your Micro.

Please refer to the following Post on details.

I've managed to create a library called DShot-Arduino using bit-banging to implement DShot600 and able to control up to 8 ESCs in once. Only drawback is it cannot work with Servo library since both uses Timer1.