Lazarus
Home
Help
TinyPortal
Search
Login
Register
Lazarus
»
Forum
»
Programming
»
General
»
How to handle elevation requirement on linux? Synaser RS232
Free Pascal
Website
Downloads
Wiki
Documentation
Bugtracker
Mailing List
Lazarus
Website
Downloads (Laz+FPC)
Packages (OPM)
FAQ
Wiki
Documentation (RTL/FCL/LCL)
Bugtracker
CCR Bugs
IRC channel
GIT
Mailing List
Other languages
Foundation
Website
Useful Wiki Links
Project Roadmap
Getting the Source
Screenshots
How to use the forum
About donations (wiki)
Bookstore
Computer Math and Games in Pascal
(preview)
Lazarus Handbook
Search
Advanced search
Recent
Database standards OR Am ...
by
paweld
[
Today
at 07:52:10 am]
Big Numbers Math
by
iLya2IK
[
Today
at 07:13:20 am]
Lazarus for Windows on aa...
by
dbannon
[
Today
at 07:02:55 am]
BUG REPORT: Unable to gen...
by
dbannon
[
Today
at 06:29:49 am]
Offical launch of the 1 B...
by
Gustavo 'Gus' Carreno
[
Today
at 12:50:46 am]
what to do if my target M...
by
Laksen
[
Today
at 12:49:12 am]
For-in loop over constant...
by
ASerge
[
Today
at 12:36:09 am]
Converting a string/index...
by
TRon
[April 18, 2024, 11:56:37 pm]
exclude ALL packages from...
by
PascalDragon
[April 18, 2024, 11:33:29 pm]
Demoscene The Champs Crac...
by
KodeZwerg
[April 18, 2024, 11:29:50 pm]
Poll: Watches and Display...
by
440bx
[April 18, 2024, 10:55:14 pm]
How to: create DLL file f...
by
paule32
[April 18, 2024, 10:23:59 pm]
Have anyone develop UEFI ...
by
PascalDragon
[April 18, 2024, 10:14:15 pm]
The weird Rewrite bug
by
PascalDragon
[April 18, 2024, 09:58:53 pm]
Assign (textfile) not com...
by
PascalDragon
[April 18, 2024, 09:51:50 pm]
Question for people who h...
by
PascalDragon
[April 18, 2024, 09:44:32 pm]
Linux Workspaces -- StayO...
by
AmatCoder
[April 18, 2024, 08:34:20 pm]
I just released a commerc...
by
Seenkao
[April 18, 2024, 07:57:21 pm]
Access violation when re-...
by
TRon
[April 18, 2024, 07:37:31 pm]
[SOLVED] assembler name i...
by
TRon
[April 18, 2024, 07:26:33 pm]
A fairly simple sound sol...
by
KodeZwerg
[April 18, 2024, 07:01:52 pm]
Step-into the field sette...
by
Martin_fr
[April 18, 2024, 06:54:19 pm]
[Fun Fact] PNG and Micros...
by
Ten_Mile_Hike
[April 18, 2024, 06:24:19 pm]
HTTP/2+HTTP/1.1+WebSocket...
by
iLya2IK
[April 18, 2024, 06:14:30 pm]
Improvement of TFPTimerTh...
by
AlexTP
[April 18, 2024, 05:56:38 pm]
« previous
next »
Print
Pages: [
1
]
Author
Topic: How to handle elevation requirement on linux? Synaser RS232 (Read 2240 times)
cpicanco
Hero Member
Posts: 618
Behavioral Scientist and Programmer
How to handle elevation requirement on linux? Synaser RS232
«
on:
May 23, 2017, 10:38:52 pm »
Hi, I am using synaser to communicate with a serial port through RS232.
https://github.com/cpicanco/stimulus_control/blob/master/src/units/interface_rs232.pas
On linux it requires full privileges to do its stuff. So how you would solve this?? For debugging, for example, execute lazarus with sudo?? Any other option for asking for privileges during runtime somehow (any suggestions?)
Logged
Be mindful and excellent with each other.
https://github.com/cpicanco/
cpicanco
Hero Member
Posts: 618
Behavioral Scientist and Programmer
Re: How to handle elevation requirement on linux? Synaser RS232
«
Reply #1 on:
May 23, 2017, 10:58:01 pm »
Is there a way to completely avoid elevated privileges with TBlockSerial??
Logged
Be mindful and excellent with each other.
https://github.com/cpicanco/
Leledumbo
Hero Member
Posts: 8757
Programming + Glam Metal + Tae Kwon Do = Me
Re: How to handle elevation requirement on linux? Synaser RS232
«
Reply #2 on:
May 24, 2017, 06:21:16 am »
Quote from: cpicanco on May 23, 2017, 10:58:01 pm
Is there a way to completely avoid elevated privileges with TBlockSerial??
https://unix.stackexchange.com/questions/14354/read-write-to-a-serial-port-without-root
Logged
Follow this if you want me to answer:
http://wiki.lazarus.freepascal.org/Lazarus_Faq#What_is_the_correct_way_to_ask_questions_in_the_forum.3F
http://pascalgeek.blogspot.com
https://bitbucket.org/leledumbo
https://github.com/leledumbo
Code first, think later - Natural programmer B)
cpicanco
Hero Member
Posts: 618
Behavioral Scientist and Programmer
Re: How to handle elevation requirement on linux? Synaser RS232
«
Reply #3 on:
May 25, 2017, 12:44:29 am »
Thanks, this actually pointed me to right direction. I have found this:
https://gist.github.com/cbrake/4337154
Here are my steps:
Code: Bash
[Select]
[+]
[-]
# check your device specific constants
udevadm info
--attribute-walk
-n
/
dev
/
ttyUSB0
# create a new dev rule based on some constants
echo
'SUBSYSTEM=="tty", ATTRS{serial}=="A1004chl", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="0664"'
|
sudo
tee
/
etc
/
udev
/
rules.d
/
50
-usb-serial.rules
>
/
dev
/
null
# reload rules
sudo
udevadm control
--reload-rules
# re-add all devices
sudo
udevadm trigger
# test
ls
-al
/
dev
/
ttyUSB0
# you should reboot your system
sudo
reboot
Also the following answers help me understand the Linux device path logic:
https://unix.stackexchange.com/questions/144029/command-to-determine-ports-of-a-device-like-dev-ttyusb0
«
Last Edit: May 25, 2017, 02:02:01 am by cpicanco
»
Logged
Be mindful and excellent with each other.
https://github.com/cpicanco/
Print
Pages: [
1
]
« previous
next »
Lazarus
»
Forum
»
Programming
»
General
»
How to handle elevation requirement on linux? Synaser RS232
TinyPortal
© 2005-2018