Template:PT3 CSHARP LNX MONO: Difference between revisions
From Phidgets Support
No edit summary |
No edit summary |
||
(2 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 69: | Line 92: | ||
</p> | </p> | ||
<p>The easiest way to allow Mono to access the Phidgets .NET library is to place a copy of the Phidget22.NET dll in the same folder as your program.</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> | ||
Line 82: | Line 105: | ||
<p> | <p> | ||
Navigate in the zip file to /lib/dotnet/netXX where 'XX' is your .NET Framework version (for example, net46 for .NET 4.6), and grab the Phidget22.NET.dll from | 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 | ||
that folder. | from that folder. | ||
</p> | </p> | ||
</div> | </div> | ||
Line 90: | Line 113: | ||
<h2>Setting up a New Project</h2> | <h2>Setting up a New Project</h2> | ||
<p>Move the Phidget22.NET.dll you extracted into the same folder as your program.</p> | <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> |