Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. [PLEASE HELP] how to make a barcode receiver?
Forum Updated to NodeBB v4.3 + New Features

[PLEASE HELP] how to make a barcode receiver?

Scheduled Pinned Locked Moved Solved General and Desktop
57 Posts 9 Posters 13.4k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ? A Former User

    the only payment method is cash only (for now), so we can skip 3

    It's not very require to make focus when the barcode input something but i thought that it will be a good extra feature in the application

    raven-worxR Offline
    raven-worxR Offline
    raven-worx
    Moderators
    wrote on last edited by raven-worx
    #27

    @davidlabib
    just a note:
    Some barcode scanners have different modes. One mode is "keyboard" mode (like you are using it now) and another can be via the serial interface. The later would let you use QtSerialPort module to receive the scanned code in plain text.
    Those modes can be switched by scanning a special barcode. Take a look at the scanners manual.

    --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
    If you have a question please use the forum so others can benefit from the solution in the future

    ? 1 Reply Last reply
    4
    • raven-worxR raven-worx

      @davidlabib
      just a note:
      Some barcode scanners have different modes. One mode is "keyboard" mode (like you are using it now) and another can be via the serial interface. The later would let you use QtSerialPort module to receive the scanned code in plain text.
      Those modes can be switched by scanning a special barcode. Take a look at the scanners manual.

      ? Offline
      ? Offline
      A Former User
      wrote on last edited by
      #28

      @raven-worx
      0_1534682994843_f52d64be-c499-4ed8-8c2d-61bd38a1de84-image.png
      0_1534683017626_314576f9-6b75-42fd-b9a7-8124961e7757-image.png
      0_1534683048600_4b9a11df-1307-42af-9058-f90b71a6a88b-image.png
      0_1534683072140_89cd40a7-8a36-49d8-92ab-78edd63f4b99-image.png
      0_1534683090490_c9b50133-170b-49a0-8fea-138ae9c73956-image.png
      0_1534683117128_9f977db8-5b6e-40e8-8f77-80814053f964-image.png
      can you help me on setting the right mod and use QtSerialPort

      JKSHJ raven-worxR 2 Replies Last reply
      0
      • ? A Former User

        @raven-worx
        0_1534682994843_f52d64be-c499-4ed8-8c2d-61bd38a1de84-image.png
        0_1534683017626_314576f9-6b75-42fd-b9a7-8124961e7757-image.png
        0_1534683048600_4b9a11df-1307-42af-9058-f90b71a6a88b-image.png
        0_1534683072140_89cd40a7-8a36-49d8-92ab-78edd63f4b99-image.png
        0_1534683090490_c9b50133-170b-49a0-8fea-138ae9c73956-image.png
        0_1534683117128_9f977db8-5b6e-40e8-8f77-80814053f964-image.png
        can you help me on setting the right mod and use QtSerialPort

        JKSHJ Offline
        JKSHJ Offline
        JKSH
        Moderators
        wrote on last edited by
        #29

        @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

        can you help me on setting the right mod and use QtSerialPort

        If you want to use Qt Serial Port, choose the RS-232 option. You will also need to connect the barcode scanner to a serial port on your computer.

        Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

        ? 1 Reply Last reply
        2
        • ? A Former User

          @raven-worx
          0_1534682994843_f52d64be-c499-4ed8-8c2d-61bd38a1de84-image.png
          0_1534683017626_314576f9-6b75-42fd-b9a7-8124961e7757-image.png
          0_1534683048600_4b9a11df-1307-42af-9058-f90b71a6a88b-image.png
          0_1534683072140_89cd40a7-8a36-49d8-92ab-78edd63f4b99-image.png
          0_1534683090490_c9b50133-170b-49a0-8fea-138ae9c73956-image.png
          0_1534683117128_9f977db8-5b6e-40e8-8f77-80814053f964-image.png
          can you help me on setting the right mod and use QtSerialPort

          raven-worxR Offline
          raven-worxR Offline
          raven-worx
          Moderators
          wrote on last edited by raven-worx
          #30

          @davidlabib
          use the very first code (RS232).
          Then check the COM port of the scanner it is connected to (e.g. on Windows in the Device Manager).

          in your .pro file add QT += serialport

          QSerialPort example usage:

          QSerialPort* port = new QSerialPort( this );
          port->setBaudRate( QSerialPort::Baud115200 ); // possible something else, also check the manual
          port->setPort( QPortInfo("COM4") ); // COM port - check Device Manager for connected port
          if( port->open(QSerialPort::ReadOnly) )
          {
                  connect(port, &QSerialPort::readyRead, this, [port]() {
                        if( !port->bytesAvailable() )
                             return;
                        const QByteArray scannedData = port->readAll();
                        // ...
                  });
          }
          else
          {
              // check port->error()
          }
          

          --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
          If you have a question please use the forum so others can benefit from the solution in the future

          ? 1 Reply Last reply
          5
          • JKSHJ JKSH

            @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

            can you help me on setting the right mod and use QtSerialPort

            If you want to use Qt Serial Port, choose the RS-232 option. You will also need to connect the barcode scanner to a serial port on your computer.

            ? Offline
            ? Offline
            A Former User
            wrote on last edited by
            #31

            @JKSH is it must came from serial port not usb?

            JKSHJ 1 Reply Last reply
            0
            • ? A Former User

              @JKSH is it must came from serial port not usb?

              JKSHJ Offline
              JKSHJ Offline
              JKSH
              Moderators
              wrote on last edited by
              #32

              @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

              is it must came from serial port not usb?

              Qt Serial Port works with serial ports. A USB port is not a serial port.

              If your computer doesn't have a serial port, you can use a USB-to-serial converter.

              Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

              mrjjM raven-worxR 2 Replies Last reply
              4
              • JKSHJ JKSH

                @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

                is it must came from serial port not usb?

                Qt Serial Port works with serial ports. A USB port is not a serial port.

                If your computer doesn't have a serial port, you can use a USB-to-serial converter.

                mrjjM Offline
                mrjjM Offline
                mrjj
                Lifetime Qt Champion
                wrote on last edited by
                #33

                @JKSH
                Hi
                this mode, i wonder if
                alt text

                does not install a virtual comport and allows to use usb connection much like
                serial over USB converter. just without the converter.

                What do you think ? ( purely guessing here)

                1 Reply Last reply
                3
                • JKSHJ JKSH

                  @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

                  is it must came from serial port not usb?

                  Qt Serial Port works with serial ports. A USB port is not a serial port.

                  If your computer doesn't have a serial port, you can use a USB-to-serial converter.

                  raven-worxR Offline
                  raven-worxR Offline
                  raven-worx
                  Moderators
                  wrote on last edited by
                  #34

                  @JKSH said in [PLEASE HELP] how to make a barcode receiver?:

                  Qt Serial Port works with serial ports. A USB port is not a serial port.

                  thats not true. Of course QtSerialPort works with USB.
                  USB = Universal Serial Bus

                  The code above i've posted definitively works with a USB Barcode scanner and i used it myself already.

                  --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                  If you have a question please use the forum so others can benefit from the solution in the future

                  K 1 Reply Last reply
                  1
                  • raven-worxR raven-worx

                    @davidlabib
                    use the very first code (RS232).
                    Then check the COM port of the scanner it is connected to (e.g. on Windows in the Device Manager).

                    in your .pro file add QT += serialport

                    QSerialPort example usage:

                    QSerialPort* port = new QSerialPort( this );
                    port->setBaudRate( QSerialPort::Baud115200 ); // possible something else, also check the manual
                    port->setPort( QPortInfo("COM4") ); // COM port - check Device Manager for connected port
                    if( port->open(QSerialPort::ReadOnly) )
                    {
                            connect(port, &QSerialPort::readyRead, this, [port]() {
                                  if( !port->bytesAvailable() )
                                       return;
                                  const QByteArray scannedData = port->readAll();
                                  // ...
                            });
                    }
                    else
                    {
                        // check port->error()
                    }
                    
                    ? Offline
                    ? Offline
                    A Former User
                    wrote on last edited by
                    #35

                    @raven-worx
                    0_1534947972491_3255bdcc-2942-41cb-986a-e4f1bb6adf9c-image.png
                    I'm using ubuntu now

                    1 Reply Last reply
                    0
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on last edited by
                      #36

                      Hi,

                      It's QSerialPortInfo.

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      1 Reply Last reply
                      1
                      • ? Offline
                        ? Offline
                        A Former User
                        wrote on last edited by
                        #37

                        0_1534969744372_9c1d0188-4bd4-47a2-9e26-5799df5452cc-image.png

                        i dosn't do any thing it always execute "else"
                        QSerialPort::SerialPortError(DeviceNotFoundError)

                        JKSHJ 1 Reply Last reply
                        0
                        • SGaistS Offline
                          SGaistS Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on last edited by
                          #38

                          And what is the error ?

                          Interested in AI ? www.idiap.ch
                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                          1 Reply Last reply
                          0
                          • raven-worxR raven-worx

                            @JKSH said in [PLEASE HELP] how to make a barcode receiver?:

                            Qt Serial Port works with serial ports. A USB port is not a serial port.

                            thats not true. Of course QtSerialPort works with USB.
                            USB = Universal Serial Bus

                            The code above i've posted definitively works with a USB Barcode scanner and i used it myself already.

                            K Offline
                            K Offline
                            kuzulis
                            Qt Champions 2020
                            wrote on last edited by
                            #39

                            @raven-worx said in [PLEASE HELP] how to make a barcode receiver?:

                            thats not true. Of course QtSerialPort works with USB.
                            USB = Universal Serial Bus

                            What? QtSerialPort works only with serial ports. It has nothing common with USB... Please don't confuse peoples. ;)

                            1 Reply Last reply
                            2
                            • ? A Former User

                              0_1534969744372_9c1d0188-4bd4-47a2-9e26-5799df5452cc-image.png

                              i dosn't do any thing it always execute "else"
                              QSerialPort::SerialPortError(DeviceNotFoundError)

                              JKSHJ Offline
                              JKSHJ Offline
                              JKSH
                              Moderators
                              wrote on last edited by JKSH
                              #40

                              @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

                              QSerialPort::SerialPortError(DeviceNotFoundError)

                              Well, that means your program can't find a port called COM4. Read the comments in @raven-worx's code and think about what they are asking you to do.

                              What is the name of the port that your scanner is connected to? https://www.cyberciti.biz/faq/find-out-linux-serial-ports-with-setserial/

                              @raven-worx said in [PLEASE HELP] how to make a barcode receiver?:

                              The code above i've posted definitively works with a USB Barcode scanner and i used it myself already.

                              My apologies; I didn't read the codes or think of the scenario that @mrjj highlighted in his last post.

                              If the barcode scanner implements RS232-over-USB, then you're right -- Qt Serial Port can indeed work with the scanner via the USB port.

                              QtSerialPort works with USB.
                              USB = Universal Serial Bus

                              Even though they both have "serial" in their names, Universal Serial Bus is completely unrelated to old-school serial ports. The term "serial port" usually refers to an RS-232 port: https://en.wikipedia.org/wiki/Serial_port

                              A USB device can be programmed to emulate serial port comms, but these are the minority. You cannot, for example, use Qt Serial Port to read your USB keyboard.

                              Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                              1 Reply Last reply
                              2
                              • ? Offline
                                ? Offline
                                A Former User
                                wrote on last edited by
                                #41

                                @JKSH i didn't worked
                                i tried form com 1 to com 18
                                non of them worked

                                JKSHJ 1 Reply Last reply
                                0
                                • ? A Former User

                                  @JKSH i didn't worked
                                  i tried form com 1 to com 18
                                  non of them worked

                                  JKSHJ Offline
                                  JKSHJ Offline
                                  JKSH
                                  Moderators
                                  wrote on last edited by JKSH
                                  #42

                                  @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

                                  @JKSH i didn't worked
                                  i tried form com 1 to com 18
                                  non of them worked

                                  What is the name of the port that your scanner is connected to? COMX is a Windows name. Linux names are different.

                                  Read https://www.cyberciti.biz/faq/find-out-linux-serial-ports-with-setserial/ to find the name on your Ubuntu machine.

                                  Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                                  1 Reply Last reply
                                  3
                                  • ? Offline
                                    ? Offline
                                    A Former User
                                    wrote on last edited by
                                    #43

                                    same error
                                    i tried from ttyS0 to ttyS5 didn't work

                                    JKSHJ 1 Reply Last reply
                                    0
                                    • ? A Former User

                                      same error
                                      i tried from ttyS0 to ttyS5 didn't work

                                      JKSHJ Offline
                                      JKSHJ Offline
                                      JKSH
                                      Moderators
                                      wrote on last edited by JKSH
                                      #44

                                      @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

                                      same error
                                      i tried from ttyS0 to ttyS5 didn't work

                                      You didn't answer my question. What is the name of the port that your scanner is connected to?

                                      Also, what does QSerialPortInfo::availablePorts() give you? http://doc.qt.io/qt-5/qserialportinfo.html#availablePorts

                                      Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                                      ? 1 Reply Last reply
                                      4
                                      • JKSHJ JKSH

                                        @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

                                        same error
                                        i tried from ttyS0 to ttyS5 didn't work

                                        You didn't answer my question. What is the name of the port that your scanner is connected to?

                                        Also, what does QSerialPortInfo::availablePorts() give you? http://doc.qt.io/qt-5/qserialportinfo.html#availablePorts

                                        ? Offline
                                        ? Offline
                                        A Former User
                                        wrote on last edited by A Former User
                                        #45

                                        @JKSH ok i could find the right port and passed from

                                        if( port->open(QSerialPort::ReadOnly) )
                                        

                                        now I'm stuck on

                                        if( !port->bytesAvailable() )
                                                          return;
                                        

                                        it always return
                                        witch mean no bytes is available

                                        JKSHJ 1 Reply Last reply
                                        0
                                        • ? A Former User

                                          @JKSH ok i could find the right port and passed from

                                          if( port->open(QSerialPort::ReadOnly) )
                                          

                                          now I'm stuck on

                                          if( !port->bytesAvailable() )
                                                            return;
                                          

                                          it always return
                                          witch mean no bytes is available

                                          JKSHJ Offline
                                          JKSHJ Offline
                                          JKSH
                                          Moderators
                                          wrote on last edited by
                                          #46

                                          @davidlabib said in [PLEASE HELP] how to make a barcode receiver?:

                                          now I'm stuck on

                                          if( !port->bytesAvailable() )
                                                            return;
                                          

                                          it always return
                                          witch mean no bytes is available

                                          Did you choose the correct settings? How is your scanner configured for the following?

                                          • Baud rate
                                          • Parity
                                          • Data bits
                                          • Stop bits
                                          • Flow control

                                          Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                                          1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved