MITM proxy for terminal sessions with UPC display
  • Python 91.9%
  • Shell 6.3%
  • Makefile 1.8%
Find a file
2026-01-18 18:04:15 -05:00
src upc -> lpn whoops, also move keypad to own config key 2026-01-15 13:16:59 -05:00
.gitignore move config to have both configs, add button mapping alot more read da 2026-01-15 08:08:50 -05:00
.gitlab-ci.yml add formatter, gitlab action and fix lint 2026-01-10 16:27:25 -05:00
config.example.yaml upc -> lpn whoops, also move keypad to own config key 2026-01-15 13:16:59 -05:00
docker-compose.yml Initial commit 2026-01-10 16:05:21 -05:00
install.sh Update install.sh 2026-01-18 18:04:15 -05:00
LICENSE LICENSE 2026-01-10 16:07:17 -05:00
Makefile move config to have both configs, add button mapping alot more read da 2026-01-15 08:08:50 -05:00
pyproject.toml move config to have both configs, add button mapping alot more read da 2026-01-15 08:08:50 -05:00
README.md upc -> lpn whoops, also move keypad to own config key 2026-01-15 13:16:59 -05:00

zebra-proxy

ssh proxy that shows lpn codes on an oled screen

parts

wiring (spi)

oled pi gpio
gnd pin 6 ground
vcc pin 1 3.3v
sck pin 23 gpio11
sda pin 19 gpio10
res pin 22 gpio25
dc pin 18 gpio24
cs pin 24 gpio8

wiring (keypad)

keypad pi gpio
r1 pin 35 gpio19
r2 pin 33 gpio13
r3 pin 31 gpio6
r4 pin 29 gpio5
c1 pin 40 gpio21
c2 pin 38 gpio20
c3 pin 36 gpio16
c4 pin 32 gpio12

button layout:

s1(1)   s2(2)   s3(3)   s4(A)
s5(4)   s6(5)   s7(6)   s8(B)
s9(7)   s10(8)  s11(9)  s12(C)
s13(*)  s14(0)  s15(#)  s16(D)

default keys (configurable in keypad section of config.yaml):

key default config option function
1 s1 help show help
2 s2 lpn toggle LPN text on/off
3 s3 item show last item info
A s4 reconnect force reconnect to WMS
B s8 info show network info
C s12 history toggle history sidebar
* s13 clear clear history
# s15 toggle toggle display on/off
D s16 dev switch dev/normal mode

setup

sudo bash install.sh

config

sudo nano /etc/zebra-proxy/config.yaml

logs

journalctl -u zebra-proxy -f

restart

sudo systemctl restart zebra-proxy

dev

make dev
make run-mock
make run-proxy