Is there a free way to monitor a serial port on Windows 7 x64?












13














I've looked around quite a bit, but I have yet to find a free way to monitor a serial port (without opening or blocking it from other applications), that works on Windows 7 64-bit.



Even Microsoft's own Portmon does not work. A few posts have talked about running it in compatibility mode, but it doesn't work for me. I've tried compatibility mode for Windows XP service pack 2 and 3 (the only ones available on the drop-down list), and neither allow it to function.



So yeah, is there any way of monitoring a serial port for Windows 7 64-bit?










share|improve this question




















  • 2




    PortMon from MS/Sysinternals would not work because the driver depends on the bitness of the OS. Unlike with usermode programs which can use WOW64 to run a 32bit app on a x64 system.
    – 0xC0000022L
    Jun 2 '12 at 0:00
















13














I've looked around quite a bit, but I have yet to find a free way to monitor a serial port (without opening or blocking it from other applications), that works on Windows 7 64-bit.



Even Microsoft's own Portmon does not work. A few posts have talked about running it in compatibility mode, but it doesn't work for me. I've tried compatibility mode for Windows XP service pack 2 and 3 (the only ones available on the drop-down list), and neither allow it to function.



So yeah, is there any way of monitoring a serial port for Windows 7 64-bit?










share|improve this question




















  • 2




    PortMon from MS/Sysinternals would not work because the driver depends on the bitness of the OS. Unlike with usermode programs which can use WOW64 to run a 32bit app on a x64 system.
    – 0xC0000022L
    Jun 2 '12 at 0:00














13












13








13


1





I've looked around quite a bit, but I have yet to find a free way to monitor a serial port (without opening or blocking it from other applications), that works on Windows 7 64-bit.



Even Microsoft's own Portmon does not work. A few posts have talked about running it in compatibility mode, but it doesn't work for me. I've tried compatibility mode for Windows XP service pack 2 and 3 (the only ones available on the drop-down list), and neither allow it to function.



So yeah, is there any way of monitoring a serial port for Windows 7 64-bit?










share|improve this question















I've looked around quite a bit, but I have yet to find a free way to monitor a serial port (without opening or blocking it from other applications), that works on Windows 7 64-bit.



Even Microsoft's own Portmon does not work. A few posts have talked about running it in compatibility mode, but it doesn't work for me. I've tried compatibility mode for Windows XP service pack 2 and 3 (the only ones available on the drop-down list), and neither allow it to function.



So yeah, is there any way of monitoring a serial port for Windows 7 64-bit?







windows-7 64-bit serial-port






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 6 at 17:52









bertieb

5,547112342




5,547112342










asked Jun 1 '12 at 23:57









Xantham

171115




171115








  • 2




    PortMon from MS/Sysinternals would not work because the driver depends on the bitness of the OS. Unlike with usermode programs which can use WOW64 to run a 32bit app on a x64 system.
    – 0xC0000022L
    Jun 2 '12 at 0:00














  • 2




    PortMon from MS/Sysinternals would not work because the driver depends on the bitness of the OS. Unlike with usermode programs which can use WOW64 to run a 32bit app on a x64 system.
    – 0xC0000022L
    Jun 2 '12 at 0:00








2




2




PortMon from MS/Sysinternals would not work because the driver depends on the bitness of the OS. Unlike with usermode programs which can use WOW64 to run a 32bit app on a x64 system.
– 0xC0000022L
Jun 2 '12 at 0:00




PortMon from MS/Sysinternals would not work because the driver depends on the bitness of the OS. Unlike with usermode programs which can use WOW64 to run a 32bit app on a x64 system.
– 0xC0000022L
Jun 2 '12 at 0:00










3 Answers
3






active

oldest

votes


















1














I just tried Advanced Serial Port Monitor. "Spy" mode does just what you want.



It's only free to try. However, you have to pay for a permanent solution.






share|improve this answer































    1














    A workaround I have used in the past when I was in the exact same situation as you was to use a 32-bit VM.



    It's not the greatest solution, but it does work and has no cost (other than any costs associated in setting up your VM Environment).






    share|improve this answer























    • What would be an example of a VM?
      – Peter Mortensen
      Apr 6 at 16:22










    • So you’re saying that (a process on) a VM can monitor a port on the host without blocking it from applications on the host?  I thought that host devices could be accessible by the host or the guest, but not both.
      – Scott
      Apr 7 at 5:57








    • 1




      @Scott He's suggesting that PortMon running in a 32 bit VM could monitor the VM's serial connection.
      – jpaugh
      Dec 6 at 14:36



















    1














    If you have another computer, I recommend running a POSIX OS and using socat to "pipe" the data from one port to another while logging the traffic. This is basically like a hardware-based solution, but it's using general purpose hardware instead of something special. e.g. something like this:



    sudo socat -x -v -d /dev/ttyUSB0,b115200,rawer,cr /dev/ttyUSB1,b115200,rawer,cr



    What's really neat about this program is that it's super flexible as far as what you can connect to what. You can use TCP/IP sockets, files/streams, etc. transform baud rates, change line endings, etc. Introductory article (dated 2009 but still useful) is available here.



    Edit: Just to clarify, instead of having a hardware configuration like this:



    Main computer serial port <--> Device serial port



    It'd be like this:



    Main computer serial port <--> sniffer computer serial port 1
    Device serial port <--> sniffer computer serial port 2






    share|improve this answer























    • True, but it will allow one to observe all data that is sent or received on the physical port. Since the OP did not specify whether the "port" was abstract/software or physical/hardware I think this is still a fair answer.
      – iX3
      Dec 12 at 15:08










    • @jpaugh I don't understand what you mean. What "isn't running"? This solution allows use of any software or hardware as long as the data flows through a physical port. Just attach an additional computer / device inline with the connection and run socat to forward the data while logging it. I'll add a simple diagram to the answer in the hope of clearing this up.
      – iX3
      Dec 14 at 18:38










    • Okay. Yeah, I misunderstood. Now that I understand it, I don't think you said anything wrong. Originally, I came here trying to deal with a virtual serial device a la USB, so of course this would not make sense for that case. Sorry about taht.
      – jpaugh
      Dec 14 at 21:27








    • 1




      For USB connection debugging I highly recommend these: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
      – iX3
      Dec 14 at 22:16













    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "3"
    };
    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: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    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%2fsuperuser.com%2fquestions%2f431660%2fis-there-a-free-way-to-monitor-a-serial-port-on-windows-7-x64%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    3 Answers
    3






    active

    oldest

    votes








    3 Answers
    3






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    I just tried Advanced Serial Port Monitor. "Spy" mode does just what you want.



    It's only free to try. However, you have to pay for a permanent solution.






    share|improve this answer




























      1














      I just tried Advanced Serial Port Monitor. "Spy" mode does just what you want.



      It's only free to try. However, you have to pay for a permanent solution.






      share|improve this answer


























        1












        1








        1






        I just tried Advanced Serial Port Monitor. "Spy" mode does just what you want.



        It's only free to try. However, you have to pay for a permanent solution.






        share|improve this answer














        I just tried Advanced Serial Port Monitor. "Spy" mode does just what you want.



        It's only free to try. However, you have to pay for a permanent solution.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Apr 6 at 16:21









        Peter Mortensen

        8,331166184




        8,331166184










        answered Jun 7 '12 at 18:29









        MARK C

        111




        111

























            1














            A workaround I have used in the past when I was in the exact same situation as you was to use a 32-bit VM.



            It's not the greatest solution, but it does work and has no cost (other than any costs associated in setting up your VM Environment).






            share|improve this answer























            • What would be an example of a VM?
              – Peter Mortensen
              Apr 6 at 16:22










            • So you’re saying that (a process on) a VM can monitor a port on the host without blocking it from applications on the host?  I thought that host devices could be accessible by the host or the guest, but not both.
              – Scott
              Apr 7 at 5:57








            • 1




              @Scott He's suggesting that PortMon running in a 32 bit VM could monitor the VM's serial connection.
              – jpaugh
              Dec 6 at 14:36
















            1














            A workaround I have used in the past when I was in the exact same situation as you was to use a 32-bit VM.



            It's not the greatest solution, but it does work and has no cost (other than any costs associated in setting up your VM Environment).






            share|improve this answer























            • What would be an example of a VM?
              – Peter Mortensen
              Apr 6 at 16:22










            • So you’re saying that (a process on) a VM can monitor a port on the host without blocking it from applications on the host?  I thought that host devices could be accessible by the host or the guest, but not both.
              – Scott
              Apr 7 at 5:57








            • 1




              @Scott He's suggesting that PortMon running in a 32 bit VM could monitor the VM's serial connection.
              – jpaugh
              Dec 6 at 14:36














            1












            1








            1






            A workaround I have used in the past when I was in the exact same situation as you was to use a 32-bit VM.



            It's not the greatest solution, but it does work and has no cost (other than any costs associated in setting up your VM Environment).






            share|improve this answer














            A workaround I have used in the past when I was in the exact same situation as you was to use a 32-bit VM.



            It's not the greatest solution, but it does work and has no cost (other than any costs associated in setting up your VM Environment).







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Apr 6 at 16:21









            Peter Mortensen

            8,331166184




            8,331166184










            answered Feb 16 '13 at 17:33









            Scott Chamberlain

            27.8k580100




            27.8k580100












            • What would be an example of a VM?
              – Peter Mortensen
              Apr 6 at 16:22










            • So you’re saying that (a process on) a VM can monitor a port on the host without blocking it from applications on the host?  I thought that host devices could be accessible by the host or the guest, but not both.
              – Scott
              Apr 7 at 5:57








            • 1




              @Scott He's suggesting that PortMon running in a 32 bit VM could monitor the VM's serial connection.
              – jpaugh
              Dec 6 at 14:36


















            • What would be an example of a VM?
              – Peter Mortensen
              Apr 6 at 16:22










            • So you’re saying that (a process on) a VM can monitor a port on the host without blocking it from applications on the host?  I thought that host devices could be accessible by the host or the guest, but not both.
              – Scott
              Apr 7 at 5:57








            • 1




              @Scott He's suggesting that PortMon running in a 32 bit VM could monitor the VM's serial connection.
              – jpaugh
              Dec 6 at 14:36
















            What would be an example of a VM?
            – Peter Mortensen
            Apr 6 at 16:22




            What would be an example of a VM?
            – Peter Mortensen
            Apr 6 at 16:22












            So you’re saying that (a process on) a VM can monitor a port on the host without blocking it from applications on the host?  I thought that host devices could be accessible by the host or the guest, but not both.
            – Scott
            Apr 7 at 5:57






            So you’re saying that (a process on) a VM can monitor a port on the host without blocking it from applications on the host?  I thought that host devices could be accessible by the host or the guest, but not both.
            – Scott
            Apr 7 at 5:57






            1




            1




            @Scott He's suggesting that PortMon running in a 32 bit VM could monitor the VM's serial connection.
            – jpaugh
            Dec 6 at 14:36




            @Scott He's suggesting that PortMon running in a 32 bit VM could monitor the VM's serial connection.
            – jpaugh
            Dec 6 at 14:36











            1














            If you have another computer, I recommend running a POSIX OS and using socat to "pipe" the data from one port to another while logging the traffic. This is basically like a hardware-based solution, but it's using general purpose hardware instead of something special. e.g. something like this:



            sudo socat -x -v -d /dev/ttyUSB0,b115200,rawer,cr /dev/ttyUSB1,b115200,rawer,cr



            What's really neat about this program is that it's super flexible as far as what you can connect to what. You can use TCP/IP sockets, files/streams, etc. transform baud rates, change line endings, etc. Introductory article (dated 2009 but still useful) is available here.



            Edit: Just to clarify, instead of having a hardware configuration like this:



            Main computer serial port <--> Device serial port



            It'd be like this:



            Main computer serial port <--> sniffer computer serial port 1
            Device serial port <--> sniffer computer serial port 2






            share|improve this answer























            • True, but it will allow one to observe all data that is sent or received on the physical port. Since the OP did not specify whether the "port" was abstract/software or physical/hardware I think this is still a fair answer.
              – iX3
              Dec 12 at 15:08










            • @jpaugh I don't understand what you mean. What "isn't running"? This solution allows use of any software or hardware as long as the data flows through a physical port. Just attach an additional computer / device inline with the connection and run socat to forward the data while logging it. I'll add a simple diagram to the answer in the hope of clearing this up.
              – iX3
              Dec 14 at 18:38










            • Okay. Yeah, I misunderstood. Now that I understand it, I don't think you said anything wrong. Originally, I came here trying to deal with a virtual serial device a la USB, so of course this would not make sense for that case. Sorry about taht.
              – jpaugh
              Dec 14 at 21:27








            • 1




              For USB connection debugging I highly recommend these: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
              – iX3
              Dec 14 at 22:16


















            1














            If you have another computer, I recommend running a POSIX OS and using socat to "pipe" the data from one port to another while logging the traffic. This is basically like a hardware-based solution, but it's using general purpose hardware instead of something special. e.g. something like this:



            sudo socat -x -v -d /dev/ttyUSB0,b115200,rawer,cr /dev/ttyUSB1,b115200,rawer,cr



            What's really neat about this program is that it's super flexible as far as what you can connect to what. You can use TCP/IP sockets, files/streams, etc. transform baud rates, change line endings, etc. Introductory article (dated 2009 but still useful) is available here.



            Edit: Just to clarify, instead of having a hardware configuration like this:



            Main computer serial port <--> Device serial port



            It'd be like this:



            Main computer serial port <--> sniffer computer serial port 1
            Device serial port <--> sniffer computer serial port 2






            share|improve this answer























            • True, but it will allow one to observe all data that is sent or received on the physical port. Since the OP did not specify whether the "port" was abstract/software or physical/hardware I think this is still a fair answer.
              – iX3
              Dec 12 at 15:08










            • @jpaugh I don't understand what you mean. What "isn't running"? This solution allows use of any software or hardware as long as the data flows through a physical port. Just attach an additional computer / device inline with the connection and run socat to forward the data while logging it. I'll add a simple diagram to the answer in the hope of clearing this up.
              – iX3
              Dec 14 at 18:38










            • Okay. Yeah, I misunderstood. Now that I understand it, I don't think you said anything wrong. Originally, I came here trying to deal with a virtual serial device a la USB, so of course this would not make sense for that case. Sorry about taht.
              – jpaugh
              Dec 14 at 21:27








            • 1




              For USB connection debugging I highly recommend these: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
              – iX3
              Dec 14 at 22:16
















            1












            1








            1






            If you have another computer, I recommend running a POSIX OS and using socat to "pipe" the data from one port to another while logging the traffic. This is basically like a hardware-based solution, but it's using general purpose hardware instead of something special. e.g. something like this:



            sudo socat -x -v -d /dev/ttyUSB0,b115200,rawer,cr /dev/ttyUSB1,b115200,rawer,cr



            What's really neat about this program is that it's super flexible as far as what you can connect to what. You can use TCP/IP sockets, files/streams, etc. transform baud rates, change line endings, etc. Introductory article (dated 2009 but still useful) is available here.



            Edit: Just to clarify, instead of having a hardware configuration like this:



            Main computer serial port <--> Device serial port



            It'd be like this:



            Main computer serial port <--> sniffer computer serial port 1
            Device serial port <--> sniffer computer serial port 2






            share|improve this answer














            If you have another computer, I recommend running a POSIX OS and using socat to "pipe" the data from one port to another while logging the traffic. This is basically like a hardware-based solution, but it's using general purpose hardware instead of something special. e.g. something like this:



            sudo socat -x -v -d /dev/ttyUSB0,b115200,rawer,cr /dev/ttyUSB1,b115200,rawer,cr



            What's really neat about this program is that it's super flexible as far as what you can connect to what. You can use TCP/IP sockets, files/streams, etc. transform baud rates, change line endings, etc. Introductory article (dated 2009 but still useful) is available here.



            Edit: Just to clarify, instead of having a hardware configuration like this:



            Main computer serial port <--> Device serial port



            It'd be like this:



            Main computer serial port <--> sniffer computer serial port 1
            Device serial port <--> sniffer computer serial port 2







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Dec 14 at 22:15

























            answered Oct 26 at 22:09









            iX3

            13818




            13818












            • True, but it will allow one to observe all data that is sent or received on the physical port. Since the OP did not specify whether the "port" was abstract/software or physical/hardware I think this is still a fair answer.
              – iX3
              Dec 12 at 15:08










            • @jpaugh I don't understand what you mean. What "isn't running"? This solution allows use of any software or hardware as long as the data flows through a physical port. Just attach an additional computer / device inline with the connection and run socat to forward the data while logging it. I'll add a simple diagram to the answer in the hope of clearing this up.
              – iX3
              Dec 14 at 18:38










            • Okay. Yeah, I misunderstood. Now that I understand it, I don't think you said anything wrong. Originally, I came here trying to deal with a virtual serial device a la USB, so of course this would not make sense for that case. Sorry about taht.
              – jpaugh
              Dec 14 at 21:27








            • 1




              For USB connection debugging I highly recommend these: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
              – iX3
              Dec 14 at 22:16




















            • True, but it will allow one to observe all data that is sent or received on the physical port. Since the OP did not specify whether the "port" was abstract/software or physical/hardware I think this is still a fair answer.
              – iX3
              Dec 12 at 15:08










            • @jpaugh I don't understand what you mean. What "isn't running"? This solution allows use of any software or hardware as long as the data flows through a physical port. Just attach an additional computer / device inline with the connection and run socat to forward the data while logging it. I'll add a simple diagram to the answer in the hope of clearing this up.
              – iX3
              Dec 14 at 18:38










            • Okay. Yeah, I misunderstood. Now that I understand it, I don't think you said anything wrong. Originally, I came here trying to deal with a virtual serial device a la USB, so of course this would not make sense for that case. Sorry about taht.
              – jpaugh
              Dec 14 at 21:27








            • 1




              For USB connection debugging I highly recommend these: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
              – iX3
              Dec 14 at 22:16


















            True, but it will allow one to observe all data that is sent or received on the physical port. Since the OP did not specify whether the "port" was abstract/software or physical/hardware I think this is still a fair answer.
            – iX3
            Dec 12 at 15:08




            True, but it will allow one to observe all data that is sent or received on the physical port. Since the OP did not specify whether the "port" was abstract/software or physical/hardware I think this is still a fair answer.
            – iX3
            Dec 12 at 15:08












            @jpaugh I don't understand what you mean. What "isn't running"? This solution allows use of any software or hardware as long as the data flows through a physical port. Just attach an additional computer / device inline with the connection and run socat to forward the data while logging it. I'll add a simple diagram to the answer in the hope of clearing this up.
            – iX3
            Dec 14 at 18:38




            @jpaugh I don't understand what you mean. What "isn't running"? This solution allows use of any software or hardware as long as the data flows through a physical port. Just attach an additional computer / device inline with the connection and run socat to forward the data while logging it. I'll add a simple diagram to the answer in the hope of clearing this up.
            – iX3
            Dec 14 at 18:38












            Okay. Yeah, I misunderstood. Now that I understand it, I don't think you said anything wrong. Originally, I came here trying to deal with a virtual serial device a la USB, so of course this would not make sense for that case. Sorry about taht.
            – jpaugh
            Dec 14 at 21:27






            Okay. Yeah, I misunderstood. Now that I understand it, I don't think you said anything wrong. Originally, I came here trying to deal with a virtual serial device a la USB, so of course this would not make sense for that case. Sorry about taht.
            – jpaugh
            Dec 14 at 21:27






            1




            1




            For USB connection debugging I highly recommend these: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
            – iX3
            Dec 14 at 22:16






            For USB connection debugging I highly recommend these: desowin.org/usbpcap wiki.wireshark.org/CaptureSetup/USB
            – iX3
            Dec 14 at 22:16




















            draft saved

            draft discarded




















































            Thanks for contributing an answer to Super User!


            • 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.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • 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%2fsuperuser.com%2fquestions%2f431660%2fis-there-a-free-way-to-monitor-a-serial-port-on-windows-7-x64%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







            Popular posts from this blog

            flock() on closed filehandle LOCK_FILE at /usr/bin/apt-mirror

            Mangá

            Eduardo VII do Reino Unido