what is the easiest way to configure serial port on Linux?How to send data to serial port POS printer?reading from serial from linux command linecat corrupts serial port dataConnecting to a serial port with VMWare ESXi and UbuntuOpen serial port multiple times?What is the proper way to listen on serial port using minicom?slow file transfer through serial port with catHook serial port interrupt in FreeBSDCan't write to serial port - LinuxAccess one Serial Port with two Python ScriptsHow to configure Telit LE910-NAG serial ports to use them with cat?

Failed to fetch jessie backports repository

Tiptoe or tiphoof? Adjusting words to better fit fantasy races

Personal Teleportation as a Weapon

Hide Select Output from T-SQL

How will losing mobility of one hand affect my career as a programmer?

What defines a dissertation?

Understanding "audieritis" in Psalm 94

I'm in charge of equipment buying but no one's ever happy with what I choose. How to fix this?

What would be the benefits of having both a state and local currencies?

What are the ramifications of creating a homebrew world without an Astral Plane?

Is the destination of a commercial flight important for the pilot?

Is HostGator storing my password in plaintext?

How can I get through very long and very dry, but also very useful technical documents when learning a new tool?

Your magic is very sketchy

What't the meaning of this extra silence?

Why did Kant, Hegel, and Adorno leave some words and phrases in the Greek alphabet?

Dot above capital letter not centred

What is the intuitive meaning of having a linear relationship between the logs of two variables?

Should my PhD thesis be submitted under my legal name?

How does it work when somebody invests in my business?

How does residential electricity work?

Applicability of Single Responsibility Principle

Confused about a passage in Harry Potter y la piedra filosofal

Everything Bob says is false. How does he get people to trust him?



what is the easiest way to configure serial port on Linux?


How to send data to serial port POS printer?reading from serial from linux command linecat corrupts serial port dataConnecting to a serial port with VMWare ESXi and UbuntuOpen serial port multiple times?What is the proper way to listen on serial port using minicom?slow file transfer through serial port with catHook serial port interrupt in FreeBSDCan't write to serial port - LinuxAccess one Serial Port with two Python ScriptsHow to configure Telit LE910-NAG serial ports to use them with cat?













8















In Windows command prompt to configure a serial port, I can simple use:



mode com1: 9600,n,8,1


or to read the configuration:



mode com1:


Are there similar commands in Linux? What would be the easiest way to find and configure the serial port in Linux?










share|improve this question






















  • Normally you can edit it right in the applications you use for accessing the serial like, e.g. screen /dev/ttyS0 <baud-rate> (the default would be 9600 no matter what system-wide settings, not even sure such exist)

    – phk
    Nov 13 '15 at 10:28












  • I need to configure it to use a POS printer.

    – Hrvoje T
    Nov 13 '15 at 10:38











  • OK, in that case try the stty commands mentioned at: wiki.openwrt.org/doc/recipes/serialbaudratespeed

    – phk
    Nov 13 '15 at 10:40















8















In Windows command prompt to configure a serial port, I can simple use:



mode com1: 9600,n,8,1


or to read the configuration:



mode com1:


Are there similar commands in Linux? What would be the easiest way to find and configure the serial port in Linux?










share|improve this question






















  • Normally you can edit it right in the applications you use for accessing the serial like, e.g. screen /dev/ttyS0 <baud-rate> (the default would be 9600 no matter what system-wide settings, not even sure such exist)

    – phk
    Nov 13 '15 at 10:28












  • I need to configure it to use a POS printer.

    – Hrvoje T
    Nov 13 '15 at 10:38











  • OK, in that case try the stty commands mentioned at: wiki.openwrt.org/doc/recipes/serialbaudratespeed

    – phk
    Nov 13 '15 at 10:40













8












8








8


6






In Windows command prompt to configure a serial port, I can simple use:



mode com1: 9600,n,8,1


or to read the configuration:



mode com1:


Are there similar commands in Linux? What would be the easiest way to find and configure the serial port in Linux?










share|improve this question














In Windows command prompt to configure a serial port, I can simple use:



mode com1: 9600,n,8,1


or to read the configuration:



mode com1:


Are there similar commands in Linux? What would be the easiest way to find and configure the serial port in Linux?







serial-port






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 13 '15 at 9:16









Hrvoje THrvoje T

4171522




4171522












  • Normally you can edit it right in the applications you use for accessing the serial like, e.g. screen /dev/ttyS0 <baud-rate> (the default would be 9600 no matter what system-wide settings, not even sure such exist)

    – phk
    Nov 13 '15 at 10:28












  • I need to configure it to use a POS printer.

    – Hrvoje T
    Nov 13 '15 at 10:38











  • OK, in that case try the stty commands mentioned at: wiki.openwrt.org/doc/recipes/serialbaudratespeed

    – phk
    Nov 13 '15 at 10:40

















  • Normally you can edit it right in the applications you use for accessing the serial like, e.g. screen /dev/ttyS0 <baud-rate> (the default would be 9600 no matter what system-wide settings, not even sure such exist)

    – phk
    Nov 13 '15 at 10:28












  • I need to configure it to use a POS printer.

    – Hrvoje T
    Nov 13 '15 at 10:38











  • OK, in that case try the stty commands mentioned at: wiki.openwrt.org/doc/recipes/serialbaudratespeed

    – phk
    Nov 13 '15 at 10:40
















Normally you can edit it right in the applications you use for accessing the serial like, e.g. screen /dev/ttyS0 <baud-rate> (the default would be 9600 no matter what system-wide settings, not even sure such exist)

– phk
Nov 13 '15 at 10:28






Normally you can edit it right in the applications you use for accessing the serial like, e.g. screen /dev/ttyS0 <baud-rate> (the default would be 9600 no matter what system-wide settings, not even sure such exist)

– phk
Nov 13 '15 at 10:28














I need to configure it to use a POS printer.

– Hrvoje T
Nov 13 '15 at 10:38





I need to configure it to use a POS printer.

– Hrvoje T
Nov 13 '15 at 10:38













OK, in that case try the stty commands mentioned at: wiki.openwrt.org/doc/recipes/serialbaudratespeed

– phk
Nov 13 '15 at 10:40





OK, in that case try the stty commands mentioned at: wiki.openwrt.org/doc/recipes/serialbaudratespeed

– phk
Nov 13 '15 at 10:40










1 Answer
1






active

oldest

votes


















17














You can use the stty command to set such parameters.



This will show all settings on the first serial port (replace ttyS0 with ttyUSB0 if using an USB serial port):



stty -F /dev/ttyS0 -a


This will set the baud rate to 9600, 8 bits, 1 stop bit, no parity:



stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb


One thing that generally confuses people is that most serial drivers will reset the settings to the defaults once the device is closed (i.e. no process has the device open anymore). So the above stty command will set the settings, then when it's done the driver resets them again. If you first have your POS software open the device and then perform the stty settings, they should stick around until your POS software closes the device again (e.g. upon exiting).



I'd have thought that the POS software should have some way of configuring these settings on its own. If you're writing your own software to drive the printer, make sure you first open the device, and then perform the stty command.



You may also need to play around with other settings, e.g. opost means that output postprocessing will be performed. If opost and onlcr are both set, the onlcr will cause an extra carriage return (0xd) to be added when a newline (0xa) byte is output, typically to prevent staircase printing such as



This is a line
This is the next line


This may or may not be what you want. If you want a raw one-to-one output to the printer turn opost off (add -opost to the stty parameters).



Handshaking (flow control) is also controlled with stty, without knowing more about the printer I can't tell whether you need to set anything.



Check the stty manpage for lots more info.






share|improve this answer






















    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "106"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f242778%2fwhat-is-the-easiest-way-to-configure-serial-port-on-linux%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    17














    You can use the stty command to set such parameters.



    This will show all settings on the first serial port (replace ttyS0 with ttyUSB0 if using an USB serial port):



    stty -F /dev/ttyS0 -a


    This will set the baud rate to 9600, 8 bits, 1 stop bit, no parity:



    stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb


    One thing that generally confuses people is that most serial drivers will reset the settings to the defaults once the device is closed (i.e. no process has the device open anymore). So the above stty command will set the settings, then when it's done the driver resets them again. If you first have your POS software open the device and then perform the stty settings, they should stick around until your POS software closes the device again (e.g. upon exiting).



    I'd have thought that the POS software should have some way of configuring these settings on its own. If you're writing your own software to drive the printer, make sure you first open the device, and then perform the stty command.



    You may also need to play around with other settings, e.g. opost means that output postprocessing will be performed. If opost and onlcr are both set, the onlcr will cause an extra carriage return (0xd) to be added when a newline (0xa) byte is output, typically to prevent staircase printing such as



    This is a line
    This is the next line


    This may or may not be what you want. If you want a raw one-to-one output to the printer turn opost off (add -opost to the stty parameters).



    Handshaking (flow control) is also controlled with stty, without knowing more about the printer I can't tell whether you need to set anything.



    Check the stty manpage for lots more info.






    share|improve this answer



























      17














      You can use the stty command to set such parameters.



      This will show all settings on the first serial port (replace ttyS0 with ttyUSB0 if using an USB serial port):



      stty -F /dev/ttyS0 -a


      This will set the baud rate to 9600, 8 bits, 1 stop bit, no parity:



      stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb


      One thing that generally confuses people is that most serial drivers will reset the settings to the defaults once the device is closed (i.e. no process has the device open anymore). So the above stty command will set the settings, then when it's done the driver resets them again. If you first have your POS software open the device and then perform the stty settings, they should stick around until your POS software closes the device again (e.g. upon exiting).



      I'd have thought that the POS software should have some way of configuring these settings on its own. If you're writing your own software to drive the printer, make sure you first open the device, and then perform the stty command.



      You may also need to play around with other settings, e.g. opost means that output postprocessing will be performed. If opost and onlcr are both set, the onlcr will cause an extra carriage return (0xd) to be added when a newline (0xa) byte is output, typically to prevent staircase printing such as



      This is a line
      This is the next line


      This may or may not be what you want. If you want a raw one-to-one output to the printer turn opost off (add -opost to the stty parameters).



      Handshaking (flow control) is also controlled with stty, without knowing more about the printer I can't tell whether you need to set anything.



      Check the stty manpage for lots more info.






      share|improve this answer

























        17












        17








        17







        You can use the stty command to set such parameters.



        This will show all settings on the first serial port (replace ttyS0 with ttyUSB0 if using an USB serial port):



        stty -F /dev/ttyS0 -a


        This will set the baud rate to 9600, 8 bits, 1 stop bit, no parity:



        stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb


        One thing that generally confuses people is that most serial drivers will reset the settings to the defaults once the device is closed (i.e. no process has the device open anymore). So the above stty command will set the settings, then when it's done the driver resets them again. If you first have your POS software open the device and then perform the stty settings, they should stick around until your POS software closes the device again (e.g. upon exiting).



        I'd have thought that the POS software should have some way of configuring these settings on its own. If you're writing your own software to drive the printer, make sure you first open the device, and then perform the stty command.



        You may also need to play around with other settings, e.g. opost means that output postprocessing will be performed. If opost and onlcr are both set, the onlcr will cause an extra carriage return (0xd) to be added when a newline (0xa) byte is output, typically to prevent staircase printing such as



        This is a line
        This is the next line


        This may or may not be what you want. If you want a raw one-to-one output to the printer turn opost off (add -opost to the stty parameters).



        Handshaking (flow control) is also controlled with stty, without knowing more about the printer I can't tell whether you need to set anything.



        Check the stty manpage for lots more info.






        share|improve this answer













        You can use the stty command to set such parameters.



        This will show all settings on the first serial port (replace ttyS0 with ttyUSB0 if using an USB serial port):



        stty -F /dev/ttyS0 -a


        This will set the baud rate to 9600, 8 bits, 1 stop bit, no parity:



        stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb


        One thing that generally confuses people is that most serial drivers will reset the settings to the defaults once the device is closed (i.e. no process has the device open anymore). So the above stty command will set the settings, then when it's done the driver resets them again. If you first have your POS software open the device and then perform the stty settings, they should stick around until your POS software closes the device again (e.g. upon exiting).



        I'd have thought that the POS software should have some way of configuring these settings on its own. If you're writing your own software to drive the printer, make sure you first open the device, and then perform the stty command.



        You may also need to play around with other settings, e.g. opost means that output postprocessing will be performed. If opost and onlcr are both set, the onlcr will cause an extra carriage return (0xd) to be added when a newline (0xa) byte is output, typically to prevent staircase printing such as



        This is a line
        This is the next line


        This may or may not be what you want. If you want a raw one-to-one output to the printer turn opost off (add -opost to the stty parameters).



        Handshaking (flow control) is also controlled with stty, without knowing more about the printer I can't tell whether you need to set anything.



        Check the stty manpage for lots more info.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 13 '15 at 13:55









        wurtelwurtel

        11k11628




        11k11628



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Unix & Linux Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f242778%2fwhat-is-the-easiest-way-to-configure-serial-port-on-linux%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            -serial-port

            Popular posts from this blog

            Creating 100m^2 grid automatically using QGIS?Creating grid constrained within polygon in QGIS?Createing polygon layer from point data using QGIS?Creating vector grid using QGIS?Creating grid polygons from coordinates using R or PythonCreating grid from spatio temporal point data?Creating fields in attributes table using other layers using QGISCreate .shp vector grid in QGISQGIS Creating 4km point grid within polygonsCreate a vector grid over a raster layerVector Grid Creates just one grid

            Nikolai Prilezhaev Bibliography References External links Navigation menuEarly Russian Organic Chemists and Their Legacy092774english translationRussian Biography

            How to link a C library to an Assembly library on Mac with clangHow do you set, clear, and toggle a single bit?Find (and kill) process locking port 3000 on MacWho is listening on a given TCP port on Mac OS X?How to start PostgreSQL server on Mac OS X?Compile assembler in nasm on mac osHow do I install pip on macOS or OS X?AFNetworking 2.0 “_NSURLSessionTransferSizeUnknown” linking error on Mac OS X 10.8C++ code for testing the Collatz conjecture faster than hand-written assembly - why?How to link a NASM code and GCC in Mac OS X?How to run x86 .asm on macOS Sierra