$$\ $$\ $$$$$$\ $$$$$$$$\ $$$$$$$$\ $$$$$$\
$$$\ $$ |$$ __$$\\__$$ __|$$ _____|$$ __$$\
$$$$\ $$ |$$ / $$ | $$ | $$ | $$ / \__|
$$ $$\$$ |$$ | $$ | $$ | $$$$$\ \$$$$$$\
$$ \$$$$ |$$ | $$ | $$ | $$ __| \____$$\
$$ |\$$$ |$$ | $$ | $$ | $$ | $$\ $$ |
$$ | \$$ | $$$$$$ | $$ | $$$$$$$$\ \$$$$$$ |
\__| \__| \______/ \__| \________| \______/
---------------------------------------------------------
HOME | TOR | GITHUB | NOTES | ABOUT | CONTACT | LOGIN
---------------------------------------------------------
+--------------------+-------------+---------------------+------+---------+-----+
| TOUCHTUNES_JUKEBOX | KESTREL_BLE | CHEMION_LED_GLASSES | MATH | IRIDIUM | LTE |
++---------------------------+-----------------+-----------------+-------------++
| DUMPING_NRF51822_FIRMWARE | YAESU_VX-7R_RPi | UNIPAGER POCSAG | MMDVM_GM300 |
+---------------------------+-----------------+-----------------+-------------+
███╗ ███╗ ██████╗ ████████╗ ██████╗ ██████╗ ███╗ ███╗██████╗ ██████╗ ██████╗ ██╗ ██████╗ ███╗ ███╗██████╗ ██╗ ██╗ ██████╗
████╗ ████║██╔═══██╗╚══██╔══╝██╔═══██╗ ██╔════╝ ████╗ ████║╚════██╗██╔═████╗██╔═████╗ ██╔╝ ██╔════╝ ████╗ ████║╚════██╗██║ ██║██╔═████╗
██╔████╔██║██║ ██║ ██║ ██║ ██║ ██║ ███╗██╔████╔██║ █████╔╝██║██╔██║██║██╔██║ ██╔╝ ██║ ███╗██╔████╔██║ █████╔╝███████║██║██╔██║
██║╚██╔╝██║██║ ██║ ██║ ██║ ██║ ██║ ██║██║╚██╔╝██║ ╚═══██╗████╔╝██║████╔╝██║ ██╔╝ ██║ ██║██║╚██╔╝██║ ╚═══██╗╚════██║████╔╝██║
██║ ╚═╝ ██║╚██████╔╝ ██║ ╚██████╔╝ ╚██████╔╝██║ ╚═╝ ██║██████╔╝╚██████╔╝╚██████╔╝ ██╔╝ ╚██████╔╝██║ ╚═╝ ██║██████╔╝ ██║╚██████╔╝
╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═════╝
██████╗ ██████╗ ██████╗███████╗ █████╗ ██████╗ ██╗ ██╗███╗ ██╗██╗██████╗ █████╗ ██████╗ ███████╗██████╗
██╔══██╗██╔═══██╗██╔════╝██╔════╝██╔══██╗██╔════╝ ██║ ██║████╗ ██║██║██╔══██╗██╔══██╗██╔════╝ ██╔════╝██╔══██╗
██████╔╝██║ ██║██║ ███████╗███████║██║ ███╗ ██║ ██║██╔██╗ ██║██║██████╔╝███████║██║ ███╗█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║ ╚════██║██╔══██║██║ ██║ ██║ ██║██║╚██╗██║██║██╔═══╝ ██╔══██║██║ ██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚██████╗███████║██║ ██║╚██████╔╝ ╚██████╔╝██║ ╚████║██║██║ ██║ ██║╚██████╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚═════╝╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝
//=====< 2021-09-07T01:33:49+00:00 >===============================================\\
|| ||
|| Was geht ab? :3 ||
|| ||
|| == INTRO == ||
|| ||
|| I have a soft spot for tech that went out of style, especially tech I ||
|| never had the privilege to use outside of work. POCSAG pagers, love them ||
|| or hate themcan still be found used by medical and emergency responders. ||
|| Cellphones may have made the use case of Pagers not as appealing to the ||
|| general public however there is growing popularity with POCSAG Pagers in ||
|| the Ham community. ||
|| ||
|| DAPNET (Decentralized Amateur Paging Network) is a network operated by ||
|| amateur radio nerds out of Germany. It consists of a decentralized server ||
|| cluster feeding paging data to distributed transmitters (The thing we are ||
|| building today). The most used frequency is 439.9875MHz however you can ||
|| (legally) do this on other frequencies if you chose. It’s preferred to ||
|| keep this all on the same frequency because it benefits other DAPNET users ||
|| so they don’t need to reprogram their pagers when changing locations. ||
|| HOWEVER, it’s more important to not walk on other transmitters so ||
|| you’ll need to see what frequencies are free first before blasting other ||
|| people off the net. ||
|| ||
|| I first started using DAPNET with my Pi-Star (MMDVM) however being a 0.01w ||
|| transmitter I wanted a little more range. DAPNET has transmitter controller ||
|| called UniPager which you can use with a RPi to control a 9k6 capable radio ||
|| (Moto GM300/GM340 for this write up). This application ties the RPi’s GPIO ||
|| with your target radio’s PTT and you can pipe the data to the radio using ||
|| the RPi’s audio jack. Below are the guides I used to complete this build ||
|| however there where some differences when I tried this with the Motorola ||
|| GM300. ||
|| ||
|| >>> Transmitter with 9600 Baud Data Transceiver ||
|| >>> UniPager Installation ||
|| ||
|| You’ll need to register with DAPNET before you can use their service which ||
|| requires a amateur license. To register you’ll have to submit a ticket via ||
|| their support page. More information about how to register can be found on ||
|| their Wiki page which can be found in the link below. ||
|| ||
|| >>> DAPNET Wiki ||
|| ||
|| ||
|| == UNIPAGER == ||
|| ||
|| The link above has a more complete guide on installing UniPager however ||
|| here’s what I did to install it on my Rpi. ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ sudo nano /etc/apt/sources.list.d/unipager.list █░░ ||
|| █ █░░ ||
|| █ // Add these to unipager.list █░░ ||
|| █ deb http://db0sda.ampr.org/debian unipager main █░░ ||
|| █ deb-src http://db0sda.ampr.org/debian unipager main █░░ ||
|| █ █░░ ||
|| █ $ wget -O - http://db0sda.ampr.org/debian/rwth-afu.key | █░░ ||
|| █ sudo apt-key add - █░░ ||
|| █ █░░ ||
|| █ $ sudo apt-get update █░░ ||
|| █ █░░ ||
|| █ $ sudo apt-get install unipager █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| After installing UniPager you’ll need to configure the RPi’s audio level ||
|| so it’s at 100%. Use can use alsamixer via the terminal to accomplish ||
|| this. ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ alsamixer // Increase Audio Out to 100%, hit Esc key █░░ ||
|| █ // to exit █░░ ||
|| █ █░░ ||
|| █ $ sudo alsactl store // Save Audio Settings █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| After installing UniPager it should automatically be running in the ||
|| background as a service. It comes with a Web UI (RPi’s port 8073) which ||
|| you can use to configure your transmitter. Open up your favorite web ||
|| browser and enter in the RPI’s IP address and port 8073 ||
|| (Ex. 192.168.1.20:8073). Below is the settings I used for the Motorola ||
|| GM300/GM340 ||
|| ||
|| -> Configuration ||
|| * Transmitter: Audio ||
|| * Master IP: dapnet.afu.rwth-aachen.de ||
|| * Port: 43434 ||
|| * Callsign: (Your Callsign) ||
|| * Auth Key: (Your Auth Key) ||
|| -> Audio Config ||
|| * ALSA device: default ||
|| * Audio Level: 79 ||
|| * Inverted: (GM300 => Unselected) (GM340 => Selected) ||
|| * TX Delay (ms): 5 ||
|| -> PTT Config ||
|| * PTT Method: GPIO ||
|| * GPIO Pin: 0 ||
|| * Inverted: (Unselected) ||
|| ||
|| IMG: UniPager Web UI Config ||
|| ||
|| NOTE: Settings for the GM340 are the same except Inverted is selected. ||
|| ||
|| ||
|| == MOTOROLA GM300 CONFIG == ||
|| ||
|| I’m not going to lie, this next step is going to be a huge pain in the ass. ||
|| Yes, the GM300 is a solid sub $100 25w UHF mobile radio however it was ||
|| built during the 90’s and the programming software requires MS-DOS. ||
|| To make matters more complicated the serial timing used to send and ||
|| receive data from radio to computer is CPU based. In short, if your ||
|| computer is too fast you’re out of luck and you’ll be out of sync with the ||
|| radio. The good news is that you can use DOSBox to run the software and ||
|| slow down the CPU’s cycle rate to make it work. Below is the guide I used ||
|| to make this work. Just a heads up it’s still finicky and may not be ||
|| consistent. ||
|| ||
|| >>> Motorola Radius GM300 Programming ||
|| ||
|| Not all USB to serial cables are built the same and you may have limited ||
|| success with what you have. I had to build my own programming cable using ||
|| a FT232 and Cat5 Cable. Below is the schematic I used to accomplish this. ||
|| ||
|| FT232 -> Motorola GM300/GM340 (RJ-45) ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ █░░ ||
|| █ FT232 RJ45 █░░ ||
|| █ +---+ 1N4148 1 +-----+ █░░ ||
|| █ |TXD|----|<---+ +-------- 2 | | █░░ ||
|| █ +---+ | | 3 | |---+ █░░ ||
|| █ +---+ | | 4 | | █░░ ||
|| █ |RXD|---------+-------+ +---- 5 | | █░░ ||
|| █ +---+ | 6 | *---* █░░ ||
|| █ +---+ | 7 | | █░░ ||
|| █ |GND|---------------------+ 8 +-----* █░░ ||
|| █ +---+ █░░ ||
|| █ █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| Note: This cable will also work with the GM340 ||
|| ||
|| Nothing special is needed when you program your GM300, just create an ||
|| analog channel for 25KHz FM at the desired frequency. The link Below is ||
|| a copy of the programming software I used. And again, this step is kinda ||
|| a pain but with a little trial and error you should be fine. :3 ||
|| ||
|| Download: Motorola Radius GM300 V5 ||
|| ||
|| ||
|| == MOTOROLA GM340 CONFIG == ||
|| ||
|| The CPS for the GM340 is not as tricky as the one for the GM300 however ||
|| there are some gotchas. You can get this to work on a Windows 10 Box if ||
|| you run this application under Windows 7 compatibility mode. ||
|| ||
|| If you get the error, “Can not create unknown radio component” you may ||
|| need to re install commsbepx64_setup.exe. This can be found in the CPS ||
|| system folder. Be sure to restart your computer after the installation ||
|| is complete. ||
|| ||
|| Be sure your codeplug is configured as follows. ||
|| ||
|| -> Per Channel-1 of X ||
|| * TX Frequency (MHz): 439.98750 ||
|| * ... Refrence Frequency: Automatic ||
|| * RX Frequency (MHz): 439.98750 ||
|| * ... Refrence Frequency: Automatic ||
|| * Channel Spacing: 12.5KHz ||
|| * Power Level: High ||
|| -> Per Radio GP I/O Lines ||
|| * Pin # 3: Voice & Data PTT, Active Level Low, Debounce enabled ||
|| -> Per Radio Misscellaneous ||
|| * RxAudio (Accessory Connector): Flat Unsquelched ||
|| ||
|| Download: Motorola R03.11.16 ||
|| ||
|| ||
|| == MOTOROLA GM300 PINOUT == ||
|| ||
|| Bellow is the pinout for the Motorola GM300 which is found in the back of ||
|| the radio. The pins needed for this application will be the number 3 PTT, ||
|| 5 Flat Audio TX, and 7 Ground. ||
|| ||
|| RADIO TOP ||
|| +---+---+---+---+---+---+---+---+ ||
|| | 2 | 4 | 6 | 8 | 10| 12| 14| 16| ||
|| +---+---+---+---+---+---+---+---+ ||
|| | 1 | 3 | 5 | 7 | 9 | 11| 13| 15| ||
|| +---+---+---+---+---+---+---+---+ ||
|| RADIO BOTTOM ||
|| AS SEEN FROM BACK ||
|| ||
|| 1 EXT SPKR 9 EMERGENCY ALARM ||
|| 2 MIC AUDIO IN 10 IGNITION CONTROL ||
|| --> 3 PTT 11 RX AUDIO OUT ||
|| 4 EXTERNAL ALARM 12 PROG I/O 12 ||
|| --> 5 FLAT TX AUDIO 13 SW A+ SENSE ||
|| 6 PROG I/P 6 14 PROG I/O 14 ||
|| --> 7 GROUND 15 INT SPKR + ||
|| 8 COS (PROG) 16 EXT SPKR + ||
|| ||
|| ||
|| == MOTOROLA GM340 PINOUT == ||
|| ||
|| The Motorola GM340 has a simuler pinout as the GM300. The numbering is ||
|| mostly the same except two columns (one on each side) have been added. ||
|| ||
|| RADIO TOP ||
|| +---+---+---+---+---+---+---+---+---+---+ ||
|| | 20| 2 | 4 | 6 | 8 | 10| 12| 14| 16| 18| ||
|| +---+---+---+---+---+---+---+---+---+---+ ||
|| | 19| 1 | 3 | 5 | 7 | 9 | 11| 13| 15| 17| ||
|| +---+---+---+---+---+---+---+---+---+---+ ||
|| ╚═══════════════════════╝ ||
|| RADIO BOTTOM ||
|| AS SEEN FROM BACK ||
|| ||
|| 1 EXT SPKR 11 RX AUDIO OUT ||
|| 2 MIC AUDIO IN 12 PROG I/O 12 ||
|| --> 3 PTT 13 SW A+ SENSE ||
|| 4 EXTERNAL ALARM 14 PROG I/O 14 ||
|| --> 5 FLAT TX AUDIO 15 INT SPKR + ||
|| 6 PROG I/P 6 16 EXT SPKR + ||
|| --> 7 GROUND 17 BUS + ||
|| 8 COS (PROG) 18 BOOT_CNTRL ||
|| 9 EMERGENCY ALARM 19 N.C. ||
|| 10 IGNITION CONTROL 20 N.C. ||
|| ||
|| ||
|| == RPi TO GM300/GM340 SCHEMATIC == ||
|| ||
|| With UniPager installed and your radio programmed it’s time to connect ||
|| everything together! Below is the schematic I used to make this work. ||
|| Images of this can be found below the schematic. ||
|| ||
|| RPi -> Motorola GM300/GM340 ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ █░░ ||
|| █ +------+ █░░ ||
|| █ +-------------------|PI GND| █░░ ||
|| █ | +------+ █░░ ||
|| █ | NPN █░░ ||
|| █ +-<| 440Ω +----------+ █░░ ||
|| █ |-----/\/\/\----|PI GPIO 17| █░░ ||
|| █ +-/| +----------+ █░░ ||
|| █ | █░░ ||
|| █ +-----------------+ | █░░ ||
|| █ |GM3X0 PTT (PIN 3)|-----+ █░░ ||
|| █ +-----------------+ █░░ ||
|| █ █░░ ||
|| █ █░░ ||
|| █ +---------------------------+ 22µF +------------+ █░░ ||
|| █ |GM3X0 FLAT TX AUDIO (PIN 5)|----+||-----|PI AUDIO OUT| █░░ ||
|| █ +---------------------------+ +------------+ █░░ ||
|| █ █░░ ||
|| █ +-----------------+ +------------+ █░░ ||
|| █ |GM3X0 GND (PIN 7)|----------------------|PI AUDIO GND| █░░ ||
|| █ +-----------------+ +------------+ █░░ ||
|| █ █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| ||
|| == NEXTION TOUCH DISPLAY == ||
|| ||
|| There’s also a Nextion touch display add on built for the UniPager! ||
|| ||
|| This is my first exposure to the Nextion display and I’m impressed ||
|| on what they have to offer. These things work by sending and receiving ||
|| UART messages to and from the Rpi and gives you full control of your ||
|| transmitter. ||
|| ||
|| Just a heads up, you’ll have to flash the display with the software ||
|| found in the UniPagerNextion repo to make this work. These displays ||
|| have an ARM chip built in and are capable of running independently ||
|| from the rest of the system. Bellow is a flow graph on how messages ||
|| are sent to and from the UniPager application and Nextion display. ||
|| ||
|| UniPager <-[WebSocket]-> unipagernextion.py <-[UART]-> Nextion Display ||
|| ||
|| ||
|| == NEXTION HARDWARE == ||
|| ||
|| Bellow is the pinout needed to interface the Nextion display with the ||
|| RPi's UART. ||
|| ||
|| ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ||
|| █ NEXTION █ RPi █░░ ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█░░ ||
|| █ VCC +5V (RED) --> PIN 02 VCC +5V █░░ ||
|| █ GND (BLACK) --> PIN 06 GND █░░ ||
|| █ UART_TX (GREEN) --> PIN 10 UART_RX █░░ ||
|| █ UART_RX (YELLOW) --> PIN 08 UART_TX █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| ||
|| == NEXTION SOFTWARE == ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ sudo apt install git python3 python3-websocket python3-serial █░░ ||
|| █ python-websocket python-serial █░░ ||
|| █ █░░ ||
|| █ $ git clone https://github.com/rwth-afu/UniPagerNextion.git █░░ ||
|| █ █░░ ||
|| █ $ cd UniPagerNextion/src █░░ ||
|| █ █░░ ||
|| █ $ sudo bash ./install.sh █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| The config file for UniPagerNextion can be found in ||
|| etc/unipagernextionconfig.py. If you plan on controlling the display with ||
|| the RPi’s UART you’ll need to update it so serialport = “/dev/ttyAMA0”. ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ sudo nano /etc/unipagernextionconfig.py // serialport = "/dev/ttyAMA0"█░░ ||
|| █ // ctl-o to save █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| You’ll need to do some extra steps to configure the Rpi to make the ||
|| display work. Bellow outlines what needs to be done. ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ sudo -s // Do the following as root █░░ ||
|| █ █░░ ||
|| █ $ echo “dtoverlay=pi3-disable-bt” >> /boot/config.txt // Disable BT █░░ ||
|| █ █░░ ||
|| █ $ systemctl disable hciuart █░░ ||
|| █ █░░ ||
|| █ $ nano /boot/cmdline.txt // Remove “console=serial0,115200” █░░ ||
|| █ █░░ ||
|| █ $ echo “enable_uart=1” >> /boot/config.txt // Enable UART █░░ ||
|| █ █░░ ||
|| █ $ exit // Exit root █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| ||
|| HACKS!!1 ||
|| ||
|| To get the unipagernextion.py application to work I need to change it ||
|| python3 to python2... ||
|| ||
|| TL;DR serial.Serial didn't work for me in python3 so I compromised... ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ nano /usr/local/bin/unipagernextion.py // Change #!/usr/bin/python3 █░░ ||
|| █ // to #!/usr/bin/python █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| ||
|| == FLASH NEXTION DISPLAY == ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ nano Nextion/nextion.py // Change PORT = "/dev/ttyUSB0" █░░ ||
|| █ // to PORT = "/dev/ttyAMA0" █░░ ||
|| █ █░░ ||
|| █ $ sudo bash src/update_display.sh // Flash display firmware █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| ||
|| == NEXTION SERVICE == ||
|| ||
|| To start the Nextion display service use the commands bellow. ||
|| ||
|| █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ ||
|| █ $ systemctl enable unipagernextion // Start at boot █░░ ||
|| █ █░░ ||
|| █ $ systemctl status unipagernextion // Status check █░░ ||
|| █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█░░ ||
|| ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ||
|| ||
|| More detailed instructions on how to install the software to control the ||
|| Nextion display and the GitHub repo can be found here. ||
|| ||
|| >>> UniPagerNextion Wiki ||
|| >>> UniPagerNextion GitHub ||
|| ||
|| ||
|| == Trouble Shooting == ||
|| ||
|| If you’re having any trouble sending messages you may have to adjust the ||
|| volume from the Web UI to make this work with your setup. Inverting the ||
|| signal may be needed as well. :3 ||
|| ||
|| ||
|| == PROJECT GALLERY == ||
|| ||
|| == Phase 1: POC == == Phase 2: Init Build & QA == ||
|| ||
|| IMG: RPi Bread Board IMG: RPi Proto Board ||
|| IMG: GM300 Pinout IMG: Testing Before Installation ||
|| IMG: Test Page ||
|| ||
|| ||
|| == Phase 3: Final Build == == Phase 4: Added Touch Screen == ||
|| ||
|| IMG: Outside 1 IMG: Nextion Touch Display ||
|| IMG: Outside 2 ||
|| IMG: Back ||
|| IMG: Inside ||
|| ||
|| ||
|| == CONCLUSION == ||
|| ||
|| OK! ||
|| ||
|| We just built our self’s a POCSAG transmitter and expanded the coverage of ||
|| DAPNET! Go a head and pat yourself on the back because you’re doing God’s ||
|| work by making old tech fun again! ||
|| ||
|| -- NotPike ||
|| ||
\\=================================================================================//
\
\ ^__^
\ (^^)\_______
(__)\ )\/\
U ||----w |
|| ||