jjwbruijn / POCSAG_FLEX_Modem

A 'universal' pager modem
11 stars 2 forks source link

Flex transmission almost works? #1

Open ellisgl opened 2 months ago

ellisgl commented 2 months ago

After much uncommenting and commenting out was able to send one frame out.

Trying to follow the logic on the FLEX transmission code has been interesting and I haven't figured it all out yet. I'm just looking to send to a single pager on a certain frame. Any pointers to help me reduce this to a FLEX 1600 TX only setup?

jjwbruijn commented 2 months ago

Hey, great to see someone try this after all this time :) It's been a while since I've looked at the code. It also helps to have a basic understanding on how flex works; For flex pagers it's -very- important that the ESP32 doesn't reboot, because it's a 'slotted' protocol. This means the pagers on the frequency are 'slaved' to the ESP's timebase. The pagers need to receive a transmission every so often in order to remain synchronized to the network. This complicates things -GREATLY-. To add to the complication, the pagers have a programmable 'collapse', that determine how often they will listen for pages.

The code allows for mixed mode operations of different encoding; every frame can be a different modulation. Once a transmission for a certain address/collapse combination has been started, the ESP32 will try to keep that pager synchronized to the network by sending an 'IDLE' frame every so often.

Hope that helps!

ellisgl commented 2 months ago

Doing the calculations, an array buffer with all the cycles would need to reserve at least 3MB of RAM to do it correctly (All cycles filled with frames for 6400 BPS).

While there are ESP 32 board with 8MB of RAM, it can be a little bit of a pain to access, since it's PSRAM. Might as well use a use Circle (https://github.com/rsta2/circle) to create a bare metal RPI Zero W setup.

jjwbruijn commented 2 months ago

Yeah but realistically, that doesn't happen :) Even on a commercial flex network back in the day, that would mean a LOT of traffic...