ikarso has quit [Quit: Connection closed for inactivity]
Jam55 has quit [Quit: Client closed]
thinkfat_ has quit [Ping timeout: 256 seconds]
thinkfat_ has joined #beagle
starblue has quit [Ping timeout: 256 seconds]
starblue has joined #beagle
xet7 has joined #beagle
xet7 has quit [Quit: Leaving]
xet7 has joined #beagle
xet7 has quit [Remote host closed the connection]
xet7 has joined #beagle
pachenkov has joined #beagle
xet7 has quit [Remote host closed the connection]
xet7 has joined #beagle
<pachenkov>
Hi,
<pachenkov>
I'm trying to use a couple of drv8871 dc motor drivers using the Beaglebone Blue and the robot control library.
<pachenkov>
Each driver needs two PWM signals. I've only been able to pinmux the ehrpwm0A,B to the UART2 (GPS).
<pachenkov>
However, as far as I can tell from the BeagleBone Blue Pin Table, neither EHRPWM1 nor EHRPWM2 can be pinmuxed to
<pachenkov>
any GPIO port on the board.
<pachenkov>
So... my question is... Is there any walk around to pinmux those PWM outputs to any GPIO port?
<pachenkov>
I've identified that I might need to write my own PRU PWM firmware and use the PRU shared memory to generate the additional PWM outputs... any advice/resources on how to begin with PRU programming?
<zmatt>
does the drv8871 have benefits compared to the bbblue's integrated H-bridge drivers?
<zmatt>
(I'm not super familiar with the blue, I've never actually worked with one)
<pachenkov>
Yes, the integrated H-bridge drivers can be fed up to 12v. I'm using 24v dc motors
<zmatt>
ah, yeah that's a good reason
<zmatt>
so, as my pastebin shows you could still get a few more hardware pwm signals from the ecap modules, but yeah to go beyond that using PRU would be the logical choice
<pachenkov>
ok, cool. I'll give it a try to the ecap modules
<pachenkov>
thanks, zmatt
<zmatt>
as for starting pru, there's a bunch of options
<zmatt>
the current "official" way is using the C compiler, remoteproc-pru, and the rpmsg mechanism for interaction, but this all kinda sucks... using C negates many of the advantages of pru (such as its deterministic timing), afaik remoteproc-pru doesn't support shared memory (unless that's been fixed), and rpmsg is awful
<zmatt>
uio-pruss is also still supported, which gives direct access to pru from userspace and in particular therefore does support shared memory. it can be used with the ancient libprussdrv library (which can only load raw binaries as produced by pasm) as well as my py-uio library (which supports both raw binaries as well as ELF executables produced by clpru)
<zmatt>
for writing programs in assembly (which is how PRU was originally designed to be programmed), I'd still prefer pasm over using clpru
<pachenkov>
thanks zmatt :)
<zmatt>
if interested, my py-uio library can be found here: https://github.com/mvduin/py-uio it includes both asm and C examples
<zmatt>
though (currently) only very simple ones
pachenkov has quit [Quit: Client closed]
CrazyEddy has joined #beagle
set_ has quit [Ping timeout: 272 seconds]
ikarso has joined #beagle
Shadyman has quit [Remote host closed the connection]
starblue has quit [Ping timeout: 256 seconds]
starblue has joined #beagle
lucascastro has quit [Ping timeout: 256 seconds]
lucascastro has joined #beagle
Mateen has joined #beagle
xet7 has quit [Remote host closed the connection]
xet7 has joined #beagle
Mateen has quit [Quit: Client closed]
waldo323 has joined #beagle
xet7 has quit [Remote host closed the connection]
Steve__ has quit [Quit: Leaving]
SJFriedl has joined #beagle
vagrantc has joined #beagle
xet7 has joined #beagle
xet7 has quit [Ping timeout: 248 seconds]
ikarso has quit [Quit: Connection closed for inactivity]