Nie rozpoznano wirtualnego portu szeregowego Socat

Używam socat do utworzenia kilku wirtualnych portów szeregowych. Jeden, z którym łączę się za pomocą prostego programu C (za pomocą termios), a drugi, z którym chciałbym się połączyć, używając programu o nazwie Ardupilot Mega Planner (dla rzeczy RC). Jednak Planner nie rozpoznaje portu wirtualnego (wymienionego w / dev / pts), tylko urządzenia tty i urządzenia / dev / serial. Czy muszę zrobić jakieś specjalne mocowanie, aby to działało? A może obejść obejście, którego mógłbym spróbować? Próbowałem „połączyć” istniejący port szeregowy (na przykład ttyS0), ale otrzymuję „niewłaściwy ioctl”, jeśli spróbuję czegoś w tym rodzaju (port wirtualny do portu rzeczywistego, port rzeczywisty do portu rzeczywistego). Jakieś pomysły?

edytuj: Po wyświetleniu kodu źródłowego programu (Mission Planner) wydaje się, że tylko „rozpoznaje” (lub dodaje porty) wszystkie urządzenia / dev / ttyS *, / dev / serial / by-id / * urządzenia, / dev / USB0 i / dev / ACM0. Więc albo muszę edytować kod źródłowy, albo znaleźć sposób na „sprawdzenie” portu ttyS *. Nadal wydaje się, że Mission Planner po prostu nie łączy się z żadnymi urządzeniami ttyS * innymi niż S1 lub S0. Jakieś pomysły? Mam wrażenie, że to dlatego, że nie są poprawnie skonfigurowane.

edit 2: W końcu zdobyłem kod źródłowy ArdupilotMega Planner i zmieniłem go tak, aby zawierał urządzenia z / dev / pts /. Jednak wciąż mam ten sam problem. Planner dostaje jakiś problem, gdy otwiera port. Czy jest jakieś ustawienie, które należy sprawdzić / zmienić od razu, aby program mógł się z nim połączyć? Idąc na badania i starając się lepiej zrozumieć komunikację portu szeregowego ...

questionAnswers(3)

yourAnswerToTheQuestion