-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linux version only runs on Ubuntu 16.04 #56
Comments
Hi, |
Hi, The bottom bar of the app says: "Connected, Failsafe (Serial Port Read Timeout), 10 Updates per second / 100 ms between Updates". I am trying with the standart configuration for SBUS on the app (OpenTX and 8E2 100000 baud rate). I have seen on another issue a discussion you made and I tried to get a dump of the port /dev/ttyACM0 and look whether I see the SBUS 25 byte packets that you mentioned, which should start with 0F and end with 00. I used cutecom program for that purpose, and it seems the sbus information is coming to the serial port /dev/ttyACM0 on both versions of Ubuntu. Ubuntu 16.04
Ubuntu 20.04
I am really not experienced on serial communication or SBUS. So that was the only thing I was able to see. Regards, |
Hm, data looks OK. Probably the app can't set the port mode properly. Have you tried executing vjsf as root? |
I'm not sure what this might be let's do an experiment. Install socat
This practically creates virtual |
You may add In this way the virtual port won't need root to be accessed. |
It does not accept the b option I guess. |
I can set the standard values though, like 9600 or 115200. When I run for example:
I get this from hexdump with "sudo hd /dev/ttyACMX":
|
The standard methods can't set custom baud rate. #include <stdio.h>
#include <fcntl.h>
#include <errno.h>
#include <asm/termios.h>
int main()
{
int fd, ret;
struct termios2 config;
fd = open("/dev/ttyUSB0", O_RDWR);
if (fd < 0)
printf("Failed to open /dev/ttyACM0 - fd = %d\n", fd);
// Set custom buad rate
ret = ioctl(fd, TCGETS2, &config);
if (!ret) {
config.c_cflag &= ~CBAUD;
config.c_cflag |= BOTHER;
config.c_ispeed = 100000;
config.c_ospeed = 100000;
ret = ioctl(fd, TCSETS2, &config);
}
close(fd);
return ret;
} Copy-paste the above code and save it into a file, for example |
I get this now:
|
Sorry, my mistake, please edit the |
This time socat worked. I get this from the hexdump when I listen ttyACMX which looks OK to me:
But vjsf refuses to open /dev/ttyACMX, evnethough I started it with root user: And ls shows:
|
Are you sure hexdump is not working while you try to connect in vjsf? Also did you set the port options (in vjsf |
Here are the settings: Here is the ps output. Hexdump is not running during the test.
|
Strange stuff. I'm not sure if this will work. Basically the attempt is to change the port settings while it is running. |
That's quite strange. Actually I set the speed of the port in vjsf, in the exact same way as it is in the |
Thank you very much for all your efforts and fast resolution. And thanks a lot for your time. Maybe I should also mention one more thing. You probably already know this, but I wanted to share my observation anyway. Basically: Have a nice day, and stay safe! |
Thanks for the input. I tried to make a small change: |
This gives an error error unfortunately:
|
Sorry my mistake, I extracted the exe to another place, and exe needs the dll file. Now it works I think :) Thank you so much. |
I can also confirm that this new exe works on Manjaro 21.2.3. Thanks a lot again. |
Great! It seems that in the new Ubuntus opening the port does not fail but simply silently remains set with some wrong bps. Now I made it to use the Thanks, we tracked a bug :) |
I thank you :) Have a very nice day! |
One last comment if I may :) Procedure for Manjaro Linux (or Arch) is a little different from Ubuntu installations. So here are the different steps:
The rest is the same procedure. Kind regards |
Thanks for the info. Yeah it's probably still different on RPM based distros. Anyway, I assume that anyone using Linux will figure out the corresponding packages for their platform like you did ;) |
I agree 😄 |
Force setting baud rate to always use TERMIOS for maximum compatibility
Hi, this fix has been added to the new release. Thanks for the help! |
No problem, it was pleasure for me. I thank you very much for all your time and efforts. |
Hello,
First of all thank you very much for all your efforts. I am using this tool on Windows without a problem. I am using it for connecting my Radiolink AT9S transmitter to simulators using SBUS on the receiver and Arduino UNO (with the sbus_invert sketch).
My problem is, on Linux I was only able to run it on Ubuntu 16.04. Later versions did not work. I first tried Manjaro and assumed it is a problem about Manjaro. Then I made a fresh insatll of Ubuntu 20.04 and it did not work. Looking at the release date, I assumed you tried it on Ubuntu 18.04 or 16.04 and tried to get it running on both with fresh installs and the same procedure/same Arduino. Only 16.04 worked.
I guess something changed after the Ubuntu version 16.04.
Do you have any idea about this?
Thanks and regards
The text was updated successfully, but these errors were encountered: