On the librem 13 v2 and v3, the scancode 56 should be mapped to keycode 43 (backslash), I have a fix in place locally that I pulled from the purism forums: https://forums.puri.sm/t/keyboard-layout-unable-to-recognize-pipe/2022/10
Basically I override the current keyboard udev rules with my own in /etc/udev/hwdb.d/90-keyboard.hwdb
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnPurism:pnLibrem13v2* KEYBOARD_KEY_56=backslash
Here's my Librem 13v3's /sys/class/dmi/id/modalias
dmi:bvncoreboot:bvr4.7-Purism-3:bd03/02/2018:svnPurism:pnLibrem13v2:pvr2.0:rvnPurism:rnLibrem13v2:rvr2.0:cvnPurism:ct9:cvr:
side note: it's weird that the v3 is actually called the v2 version 2. It threw me off when I first got this machine.