This will be my experiment to build a daily driver 4g smartphone that does all that i want and none of what i don't want, preserving whats left of my privacy. This is heavily based on the OURS-project. When i discovered this project, it seemed like the time to try to break away from commercially made phones. I have some ideas that i want to try that may or may not be novel. I will share those as they crystalize in my head.
In this update I have a very prototypey functional phone client. It's good enough for a proof of concept. Here's some highlights of what i have done.
I hacked up some USB cables to get the phone client wired up along with a hasty audio patch cord to pipe phone audio between the PI and the cell module. We now have the Pi connected to a modified-to-be-powered USB hub. This powers the cell module and the USB audio adapter. A 5 volt buck convertor takes the ~16 volts from the 4s battery pack/ BMS to energize the USB hub and the Raspberry PI.
I'm starting to layout the hardware for the phone client including power system. This is my first time at setting up a multi-cell LI ion, 4s, battery pack. The BMS has no documentation, so learning is slow. I'm debating weather to remove the per cell bms, since its duplicated on the 4s bms and one bms has failed during my troubleshooting.
Update: The wiring "instructions" for the BMS was practically non-existent, unclear and/ or wrong. Someone on the Amazon product page in the comments section kindly provided a screenshot of the correct wiring of the BMS and now I can move forward with powering things from the battery pack.
I have established internet connectivity to the Phone broker from the cell network via the Phone client.
That process was easier than expected:
Turn on routing on the PI Zero
Add new default route on the Phone Broker
The internet traffic was not very smooth, so I will be upgrading the Pi Zero W with a Pi Zero 2W in the hopes that it can better process the internet over USB from the cell module.
The mobile phone device is a modular system. The Phone client device will be a stand alone device housing the cellular board, Raspberry PI Zero W, battery, small display, and nav buttons. With this device alone one can send/receive phone calls and SMS. Hopefully it will be pocketable.
The display device, aka the Phone broker, also a stand alone device, will house the touch display, Raspberry PI CM4, battery, camera, and some buttons. Without the phone client, this device will connect to any wifi and be a basic tablet, but when connected to the client, they will communicate using mqtt sharing cellular status, control the cell device and other management type actions that can be displayed on the display device in the python gui phone app adapted from the OURS-project.
Being a modular system, new devices can be easily added to the system, such as a large display module, other cellular modules, packet radio module, Lora wan module and other things that i haven't thought of yet. Some modules would require different software and/ or user interfaces.
The hardware connections: The 4G cellular module is connected via USB to the Phone client, a Raspberry PI Zero W. This pi will control the phone module and provide wifi connectivity to the Phone broker. The Phone broker is the Raspberry PI CM4 and it hosts a wifi hotspot that the Phone client connects to.
Testing so far:
The Phone broker hotspot is working
The Phone Client can connect to the broker.
Mqtt messages can be transferred between the two.
The next steps:
Establish internet connectivity to the Phone broker via the Phone client
develop python code to control cell module via mqtt and provide status to the broker
The CM4 arrived this evening and its performance is suitable with Firefox.
Next steps: rough out all the hardware features that i want, setup and test emmc boot, setup and test the touch screen, scale the desktop for the 5 inch display.
Next-next steps: design custom carrier board and case, design/ test remote display idea
I've connected the 4G module and display to a Raspberry PI zero W. I quickly learned that the Pi zero is not powerful enough for my purposes, but I was still able to test cell functionality and mobile internet using the OURS-project files.
Once i have the CM4, i will try Firefox performance. I do envision using web based tools on the device as much as possible.