Alternatively, you can use PSTricks package pst-barcode. It seems to produce better results and provides a vast variety of different bar and QR code types.
Typeset with lualatex:
\documentclass{article}
\usepackage{pst-barcode}
\begin{document}
default (1 inch height):\quad
\makebox[1in][l]{\rule{0pt}{1in}%
\psbarcode{https://ctan.org/tex-archive/graphics/pstricks/contrib/pst-barcode}{width=1}{qrcode}%
}
\end{document}
Screenshot from Firefox at 400% zoom from a 1920x1080 screen:

Another option could be patching qrcode. It builds upon LaTeX's
\rule[raise_len]{wdth}{hght}
command. The visible hairlines between adjacent modules can be avoided by allowing some overlap between them, as suggested by Rmano.
Here, TikZ is used to re-implement the standard \rule with a filled rectangle whose border is also drawn:
\documentclass[border=1pt]{standalone}
\usepackage{qrcode}
\usepackage{tikz}
\newcommand\fixedrule[3][0pt]{\raisebox{#1}{\tikz[x=#2,y=#3]{
\clip (0,0) rectangle (1,1);
\ifdim #2>0pt\ifdim #3>0pt \filldraw (0,0) rectangle (1,1); \fi\fi
}}}
\makeatletter
\def\qrcode@in#1{\xdef\qr@texttoencode{#1}\egroup\let\rule\fixedrule\qrcode@int\endgroup}
\makeatother
\begin{document}
\qrcode{ABC}
\end{document}
okular: https://i.stack.imgur.com/XaBCZ.png – Rmano Feb 21 '24 at 09:31