#include #include int main(){ boost::asio::io_service io_service; boost::asio::serial_port serial(io_service); // silab CP210x: /dev/tty.SLAB... // prolific pl2303: //serial.open("/dev/tty.NoZAP-PL2303-00005014"); //serial.open("/dev/cu.NoZAP-PL2303-00005014"); // pty: socat - PTY,link=$HOME/ttyv,raw,echo=0 serial.open("/Users/cmoore/ttyv"); serial.set_option(boost::asio::serial_port_base::baud_rate{115200}); serial.set_option(boost::asio::serial_port_base::character_size{8}); serial.set_option(boost::asio::serial_port_base::stop_bits{boost::asio::serial_port_base::stop_bits::one}); serial.set_option(boost::asio::serial_port_base::parity{boost::asio::serial_port_base::parity::none}); serial.set_option(boost::asio::serial_port_base::flow_control{boost::asio::serial_port_base::flow_control::none}); const size_t length = 1024; char data[length]; serial.async_read_some(boost::asio::buffer(data, length), [&](const boost::system::error_code& ec, size_t bytes){ if(!ec){ std::cout << std::string(data,bytes) << "\n"; }else{ std::cerr<<"read error: " << ec << "\n"; } }); io_service.run(); }