Mobile Pi OP25

gegatesSC

Member
Premium Subscriber
Joined
Dec 25, 2022
Messages
9
Location
Murrells Inlet SC
Yet another Mobile OP25 build on a PI. I have a 3.5" screen, still playing around with packaging it; I might try to mount the antenna differently or put in a larger enclosure.
  • Created a different css theme to work with the smaller screen size​
  • Added functions to Pair Bluetooth, Change Volume and gracefully shutdown via the Web UI. This requires giving a little control of web server to execute privileged commands but given this is mostly a toaster type device.
My objective was to eliminate the requirement on an external speaker (although still supported), make it portable, allow it to be mobile (car, etc).

Some items I have yet to work
  • It does get hot. Sitting at 71C but it has been steadily rising. The enclosure is metal, and I can almost not touch it.
  • The enclosure isn't cut out properly for the display, the screen I ordered came with an enclosure that wasn't made for the display, they're attempting to rectify this but I expect that will take another two weeks from China (if I ever even see it).
  • Since I'm not confident on getting a replacement, I have another enclosure with a slightly different display on order which allows for active cooling. This should solve both above problems
  • I still have yet to implement the volume - but I expect that to take only a couple hours
  • I may wish to implement ability to switch trunking systems on the smaller form factor display. This would be useful traveling through regions where you encounter different trunking systems.


IMG_5389.pngIMG_5415.jpeg
 

ToTheBitCave

Phreakness Monster
Premium Subscriber
Joined
Apr 15, 2020
Messages
72
Location
The Underplace
This looks great!! Do you have a repository for the code? I'm getting a screencase very soon and would love to try this out/test it. Thanks!
 

gegatesSC

Member
Premium Subscriber
Joined
Dec 25, 2022
Messages
9
Location
Murrells Inlet SC
As of yet I don’t as this is very much a proof of concept. It works, but took a bit of tinkering to get the display going, then ring out Bluetooth between Pulse and BlueZ. I’d like to make that somewhat repeatable so an install shell could be run.

The other “big” issue, at least maybe for some, is I’m running all of the Bluetooth, shutdown, and volume control functionality by using a different back end from the waitress httpd server that the op25 app is using. I’m just not well versed in Python enough to get that working. So I have a cobbled together lighttpd, php, and shell script implementation to pass Bluetooth scanning/pairing to what is basically an expect script in bash.

Ive actually tried in earnest to get some of the Python BlueZ libraries to do it, but I just can’t seem to get the Bluetooth scanning to work. I can get paired devices and connect/disconnect, but nothing works for discovering new devices. The only way I’ve been able to get Bluetooth to work is with bluetoothctl in the interactive shell.

I’m willing to get my code posted and a step by step walkthrough, maybe through this process this can be hardened a bit. I’m going to be pretty busy over the next month so might be a bit.
 
Top