Skip to main content

Posts

Showing posts with the label pinephone

veracrypt

I installed veracrypt on some of my PinePhones. There are no pre-compiled binaries for aarch64. Installation is from source. The process is simple and mostly follows the instructions on git . This has been tested on Manjaro Phosh and Arm Arch Linux. I compiled it as a cli only application. If you omit the NOGUI=1 it will compile the version with both cli/gui. It takes much longer to compile and the interface is not optimized for a mobile device. Install the required packages sudo pacman -S fuse2 yasm cppunit pkg-config Download the source for wxWidgets . The current stable is v3.0.5. wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.0.5/wxWidgets-3.0.5.tar.bz2 Extract and move to /usr/src tar -xf wxWidgets-3.0.5.tar.bz2 sudo mv wxWidgets-3.0.5 /usr/src/ Download the current stable veracrypt source wget https://github.com/veracrypt/VeraCrypt/archive/refs/tags/VeraCrypt_1.24-Update7.tar.gz Extract the files and change to the src directory tar -xf VeraCrypt_1.24-Update7.t...

SDIO WiFi

I have a SDIO WiFi module from a Sipeed Lichee Nano development board. These have the same chip as the onboard WiFi/bluetooth on the PinePhone ( RTL8723BS ). On the PinePhone mmc0 is the SD card slot and mmc1 is the onboard RTL8723BS SDIO chip. mmc2 is the eMMC chip. I inserted the Lichee Nano WiFi card into the SD card slot using the SD extension cable . It's an odd fit. Since the board extends towards the connector. It barely fits with the back cover in place. The version I used is an older version you can find on eBay. The new smaller (black) version is too short. I could not close and lock the SD card cage on the extender on the smaller black version. The Bluetooth on this chip is via UART, but the UART pins are not available on the micro SD module, so these are WiFi only. On Manjaro Phosh it showed up as another SDIO device on mmc0. It loaded the correct driver and shows up as wlan1. It works as expected.  There aren't very many SDIO devices out there, most are WiFi/Bluet...

Updating modem firmware

Updated to the latest available firmware. Instructions here: https://github.com/Biktorgj/quectel_eg25_recovery#readme Command to clone the latest branch:   git clone --branch EG25GGBR07A08M2G_01.003.01.003 https://github.com/Biktorgj/quectel_eg25_recovery.git Change directory and run update: cd quectel_eg25_recovery/ sudo ./qfirehose -f ./ To check the currently installed firmware: sudo mmcli -m any --command='AT+QGMR' Output of the entire process here: https://gist.github.com/8bitgc/247da58dd6bd53a6864d5afe091616c5

No more boot hangs

The recent kernel patch that fixes the rcu errors/crashes has been applied to U-Boot in Manjaro testing/unstable branches.  https://gitlab.manjaro.org/manjaro-arm/packages/core/uboot-pinephone/-/commit/ebdfd9a4124276fdb2d636aaecb861c205b71d69 I have tested this on the 4 phones that randomly hang during boot. All 4 have passed 100 consecutive reboot cycles without hanging. Hopefully this patch makes it into other distributions soon.

No more time travelling

A recent kernel patch fixes the instability that was causing the rcu errors I was having in many of my PinePhone boards . I have tested this patch on all of my boards and the rcu errors have gone away. I can run them at 624MHz DRAM clock and not have any hangs or time jumps. The patch has made it into megous kernel , so any distribution that uses it will get the update.

Damaged SD card socket

I was playing with the microSD card extender from Pine64 . It seems to have damaged the socket . There is a card detect switch built into the socket and it no longer functions. This causes U-Boot to hang if there is a bootable SD card in the socket. It tries to boot from it and then fails the card detection, even though it is running from the card itself. In the serial debug output it shows: Trying to boot from MMC1 MMC: no card present spl: mmc init failed with error: -123 SPL: failed to boot from all boot devices ### ERROR ### Please RESET the board ### Another PinePhone user had the same issue https://forum.pine64.org/showthread.php?tid=13775 To fix the problem I soldered the switch pin on the socket to ground. When a card is inserted it would normally short the pin to ground (T6 is connected to ground). It now thinks there is always a card inserted. It does not seem to cause any problems. I actually soldered the pin to the metal shield since it is connected to ground. If you think ...

Flexible GPS Antenna

I added a flexible passive GPS antenna to one of my PinePhones. These antennas are meant to be adhered directly to the inside of a plastic enclosure, far from any metal or ground planes. The datasheets I have read for similar antenna recommend at least 12mm distance to the ground plane. This particular antenna I got off of eBay from China, and has no datasheet. It does work quite well though. I taped the antenna to a piece of plastic from a SIM card to make it more rigid. It is paper thin, except for the area where the cable is soldered. Like on the Franken-Phone I removed the U.FL connector from the end of the cable and soldered it in place. This time I removed the spring contacts so that it would not make contact with the existing antenna in the mid-frame. I left the spring contact for the WiFi antenna intact. I shaved some of the plastic from the mid-frame so that the cable would fit between it and the metal shield of the modem. I also cut a slot in the back case with a Dremel cut...

Franken-Phone

I decided to take the worst performing PinePhone PCB and turn it into a hardware test bed. This is the 3GB 1.2b upgrade board that fails my compiler and memtester tests . It will time jump even with the RAM running at 492MHz. It is usable. With the serial adapter you can login to the serial console without an attached screen. Once WiFi/SSH is configured you can do everything remotely. I have also used wayvnc to remotely connect to the graphical desktop. I bought a large flat aluminum heatsink from Amazon to use as a base. I cut up a sheet of thermal pad material (sold for use with 3d printer glass hot beds). The pad is sticky and holds the PCB and battery to the heatsink. The battery is not the correct type/size for a PinePhone battery. It is an old battery I found in a drawer that has the same pinout, works fine. The micro USB breakout board has the VBUS and Ground soldered directly to the pogo pin pads. The loose orange wire at the bottom is soldered to a tiny pad next to the ke...

SIMs

I have been using SIM cards from several different MVNOs. Tello, RedPocket, and IoTDataWorks. Tello is a T-Mobile MVNO. Previously they were with Sprint. They have a monthly plan with 500MB of LTE speed data and unlimited SMS for $5. After the 500MB it drops to 2G speeds. This plan has no voice minutes. It also has no taxes added. They do charge $10 for the SIM card. RedPocket is an MVNO for T-Mobile/Sprint, AT&T and Verizon. I have an AT&T SIM on the $60 a year 500MB/100minutes/100SMS per month for 12 months plan. I also have a T-Mobile SIM on the $30 a year 200MB/200minutes/1000SMS per month for 12 months plan. You can only find these plans on eBay. Once you use up your data for the month it is cut off until the next month cycle. The IoTDataWorks SIM is meant for IoT devices. It has no voice or SMS, only data. I have the 1 year unlimited 64kbps SIM, which is on T-Mobile. It was $40 on Amazon when I purchased it. The price has gone up to $45 last time I checked. All of these w...

37 day uptime

My PostmarketOS Edition phone has been on and sitting idle for over 37 days. I would periodically login over ssh and do updates. It was fine and stable until today when the modem disappeared, a reboot and it is back to normal. While it was mostly idle it was running Monitorix and recording statistics. It was also sending a hourly/daily email with a summary of stats. Although this is a PostmarketOS Community Edition phone, it is running Arch Linux ARM, with the RAM speed set to 492MHz. The reason for running the RAM at a lower speed is explained here . Some graphs from Monitorix showing the last 30 days. Uptime Memory Usage. This is a 3GB model. Chrony Stats I added monitoring of some PinePhone specific stats using the gensens module. Temperature readings from the CPU/GPU. CPU frequency of the 4 cores. Battery charge level. Battery charge/discharge rate.

My PinePhone board tests

I have several PinePhones, from the first BraveHeart release to the last Mobian Community Edition . I also upgraded the BH and Ubports 2GB boards to the 1.2b 3GB version. A total of 9 PCB's.  After experiencing the time jump problem I tested all the boards for stability. There are two tests, compiling and memtester. The first is compiling a project repeatedly for 24 hours. An endless loop of make && make clean. The second test is memtester. I ran it for 20 passes for either 1.6GB or 2.6GB.       sudo memtester 1600m 20 I have a dedicated microSD card for each test. The compiler test is running Manjaro Phosh . memtester is running Arch Linux ARM barebones, which leaves more RAM available for testing. Both Manjaro Phosh and Arch Linux ARM come with multiple u-boot bootloaders that let you change the RAM interface speed. I tested at the highest 624MHz and worked down to slower speeds if there were errors. The results: 3 of the boards time travel. This s...