Hi Ivica, 

 

I was working on a small external for MCP3008 using wiring pi, but I'd love to try yours if it is possible. Will it be possible to use it as an external like gpio with vanilla? are you using wiring pi for this?

 

There is nothing in those externals to prevent them from being used in vanilla. They can be found in the <root git>/l2ork_addons/raspberry_pi/disis_gpio and disis_spi folders (latter is the MCP3008 one). Spi one does not rely on wiring pi. AFAIK wiringpi does not offer spi support but I could be wrong.

 

 

Also, how are you getting the multiple pwm streams?

 

I partially rely on wiringpi inside disis_gpio for software pwm on all pins (I say partially because wiringpi can only create a new thread for software pwm but does not offer ability to close the thread other than exiting the program, which is not an option for an environment like pd). So, each opened pin will have a separate high priority thread that gives you a 1000Hz PWM. disis_gpio also supports hardware pwm on pin 18 and that one has some kind of a logarithmic curve and as such behaves distinctly different but I simply did not want to go into anything higher than 1000Hz as that would choke the cpu.

 

HTH

 

best,

 

J

 

 

 

On Mar 20, 2014, at 1:16 PM, Ivica Ico Bukvic <ico@vt.edu> wrote:



On 03/20/2014 12:37 PM, David Medine wrote:

FYI

There is also a RPi GPIO object for Pd by Miller Puckette here:
http://msp.ucsd.edu/syllabi/206.13w/index.htm


and the  same code with a makefile and build for UDOO here:
https://github.com/cmuartfab/Udoo/tree/dem-rev/puredata/gpio


I did see the note from garthz about the architecture collisions. I will attend to this. Anyway, make sure to use the gpio.l_arm version -- just delete the other two to avoid problems.


Indeed, disis_gpio is loosely based on gpio. It however also offers things that gpio (AFAIK) doesn't, like multithreaded pusle-width-modulation (hardware on pin 18 and software on all pins) with an Arduino-like 0-1023 range. disis_spi is a completely new beast that allows interfacing with MCP3008 AD converter and provides up to 8 analog input channels that can provide high-resolution streams with values 0-1023. So, pd-l2ork externals essentially look to provide an Arduino-like environment.

_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list