Template:PT3 CSHARP LNX MONO: Difference between revisions
From Phidgets Support
																
																								| No edit summary | No edit summary | ||
| (3 intermediate revisions by the same user not shown) | |||
| Line 21: | Line 21: | ||
| <p>First, make sure you have the following installed:</p> | <p>First, make sure you have the following installed:</p> | ||
| <p>● Phidgets Drivers for Linux  | <p>● <span>[https://www.phidgets.com/docs/OS_-_Linux Phidgets Drivers for Linux]</span></p> | ||
| <p>● Mono</p> | <p>● Mono</p> | ||
| Line 36: | Line 36: | ||
| <div class="phd-command-line"><code>apt-get install mono-complete</code></div> | <div class="phd-command-line"><code>apt-get install mono-complete</code></div> | ||
| </div> | |||
| <div class="phd-slide"> | |||
| <h2>Setting UDev Rules</h2> | |||
| <p> | |||
| By default, Linux will not allow regular users to access physical hardware, as a security feature. This means that you must grant yourself root privileges via | |||
| sudo to run Phidgets code. | |||
| </p> | |||
| <div class="phd-command-line"><code>sudo mono program.exe</code></div> | |||
| <p> | |||
| To avoid having to use sudo every time, you can set up a rules file to allow it automatically using the vendor code for Phidget USB devices. Create a text file | |||
| called <b>99-libphidget22.rules</b> containing the following line: | |||
| </p> | |||
| <div class="phd-command-line"><code>SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="06c2", ATTRS{idProduct}=="00[3-a][0-f]", MODE="666"</code></div> | |||
| <p> | |||
| Mode 666 means every user has permission to read and write to the specified devices. Next, move this file to <b>/etc/udev/rules.d</b>. Now you can run code that | |||
| uses Phidgets as a regular user without sudo. | |||
| </p> | |||
| </div> | </div> | ||
| Line 68: | Line 91: | ||
| link the Phidget .NET library. | link the Phidget .NET library. | ||
| </p> | </p> | ||
| <p>The easiest way to allow Mono to access the Phidgets .NET library is to place a copy of the <b>Phidget22.NET dll</b> in the same folder as your program.</p> | |||
| <p> | <p> | ||
| First, determine which version of the .NET Framework your version of Mono implements by checking the | |||
| <span>[https://www. | <span>[https://www.mono-project.com/docs/about-mono/releases/ Mono Release Documentation]</span>. | ||
| </p> | </p> | ||
| <p> | |||
| Next, download the <span>[https://www.phidgets.com/downloads/phidget22/libraries/windows/Phidget22-windevel.zip Phidget22 Development Libraries]</span>, which | |||
| contain dlls for each .NET version. | |||
| </p> | |||
| <p> | |||
| Navigate in the zip file to <b>/lib/dotnet/netXX</b> where 'XX' is your .NET Framework version (for example, net46 for .NET 4.6), and grab the Phidget22.NET.dll | |||
| from that folder. | |||
| </p> | |||
| </div> | |||
| <div class="phd-slide"> | |||
| <h2>Setting up a New Project</h2> | |||
| <p>Move the <b>Phidget22.NET.dll</b> you extracted into the same folder as your program.</p> | |||
| <p>Your project directory should now look like this:</p> | <p>Your project directory should now look like this:</p> | ||
