Thank you, that is extremely helpful! Watching your videos now.
Rnet equipped chairs could use the PWM values as you described.
People willing to open up their non-Rnet wheelchair joysticks could add DPDT switches to select between the OEM wheelchair analog joystick module, or ArduPilot output with the low pass filtered PWM lines. Or in some cases, a pair of digital potentiometers.
With real outputs for throttle and steering servos, ANY chair with a physical joystick could use actual servos to move the joystick. As in this video RC Servo Controller for Power Wheelchair - YouTube with less precision of course.
It would be convenient for all these different use cases to share identical scripts, but a variation for specific digital pot is probably necessary.
Donāt confuse the poorly named servo PWM output with the duty cycle based signals that are more accurately described by the PWM moniker.
ArduPilotās throttle PWM outputs cannot simply be run through a low pass filter to approximate an analog voltage. They are servo/RC PWM signals, typically referenced by pulse width values in microseconds.
The video shows a method that could be connected directly to autopilot output.
I should have clarified in my case the line above refers to the Beagle Bone Blue motor outputs (2 pin, not servo) which I think are the kind of PWM which you can low pass filter to approximate an analog voltage. I could be wrong.
Digital pots would require yet a different wired interface depending on the chosen pot. I2C, SPI, UART, GPIO up/down
Then familiar hobby servo outputs with ānot PWM, PWMā. Does anyone call that PDM(Pulse Duration Modulation)?
Iām not clear on how these values are all interrelated inside ArduPilot software or Lua scripts, learning now.
It would be a somewhat trivial arduino project to make a peripheral translator board which converts between the different output formats. Of course, if doing that, I may as well make @ppoirier PWM/CAN translator too. But, with chips hard to get, and all the signal lines available on a FC, such a translator is redundant.
Sub decimeter GPS denied navigation will be useful, or required for negotiating elevators and doorways, so Iāll keep an eye on your work. Is there anything critical to your work which you cannot lay hands on?
It just occurred to me that the path through the code which was created by removing ToshibaCAN support could be reversed programatically and used to create a generic API for adding similar devices.
Not saying that would be useful for ArduPilot, I just never realized in general how prior code commits removing features could be a reverse engineering tool for adding features.
Indeed, as do I. Unfortunately, it becomes confusing to new users, especially those with basic familiarity with hobby microcontrollers, hence my pedantic explanation above.
No offense, this is indded confusing,.
I think that canbus motor controllers offers a great opportunity for enhancing the ArduRover platform and opening the field of commercial robotic application, like AMR for example.
Hi All,
New to this thread and reading up on it now. I learned about it from slomobile on a YouTube discussion. I have been experimenting with a 6wd robot using wheel chair motors, and would like to add functionality to it. It is currently RC controlled and uses 6 Spark Max controllers to drive the dc gear motors. I also have other wheel chair and wheel chair parts, so I could possible help slomobile on this concept.
Scott