Adafruit PWM hat from C#

I can drive Adafruit PWM hat from C#!

I converted Adafruit python code (Adafruit_PWM_Servo_Driver.py) to C# and it works!

led

Here is my library file:

Library (please rename to .cs)

Here is an example:

Library (please rename to .cs or copy and paste the part you need)

You will also need:

Raspberry Pi (I use the new one)
Adafruit Raspberry Pi PWM Hat (mine has PCA9685PW chip in it)
LEDs (please use resistors so you do not burn pins!)
6V power supply for the hat
Some OS installed on the PI (I use Raspbian)
Mono (mono-complete) and Mono-develop installed on the PI
These instructions look good though I did not install GTK#
RPi.I2C.Net
This library contains native code. If you use Raspbian, you might neet to re-build it. It is C++ code that need to be compiled into .so file, which will be loaded into C# managed environment. Sounds scary. Have no fear! Just ro to that folder and run “make” command – that’s it!
Device. See instructions on RPi.I2C.Net page. It adds a device – for new Raspberry PI it is “/dev/i2c-1″. If you use old raspberry, it could be different, like “/dev/i2c-0″. It is somewhere in my C# code, and if you use old Raspberry, please correct it.

So, please create a new command-line project in MonoDevelop, add RPi.I2C.Net, copy example code to the program cs and run it. make sure you adjust channel numbers. I have 6 LEDs (which are 2 RGB LEDs) on channels 0,1,2,4,5,6
My I2C address is 40 (which is default).

Sorry, my code is not industrial-strength. There is no exception handling. Please improve it if needed.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>