Hi all,
Couple of questions on dealing with AS5047 encoder :
1. Why the SPI protocol is implemented in software ? It seems that this MCU has hardware SPI module, what am I missing ?
2. When encoding reading fails (I simulate it by disconnecting P1), the motor current shoots al the way to maximum and stays there until motor overheats. It would probably be safer to brake the motor in this condition. Did anyone tried making this change already ?
Thanks in advance,
I'm now making a modified FW version that will raise a fault when encoder communication is broken. Can make a pull request when ready, if there's interest.
I'm interested in this. I used this series of sensors because they were compatible with the vesc, but ended up using them for external (to the vesc) rpm measurements. I'm glad you're working on this Vadimz! Not sure i can add anything other than cheering from the sidelines as yet.
Hi Vadimz,
I came upon your post wondering about the same thing.
My understanding is that SPI is implemented in software to gain flexibility in the SPI pin configuration : either reuse the Hall sensor pins (with no MCU SPI support) or dedicated MCU SPI pin set.
See the AS5047_USE_HW_SPI_PINS #ifdef.