Jump to navigation Jump to search
GPS works somewhat with
| name = Swift
| codename = wileyfox-crackling
| image = File:wileyfox-crackling-white-experimental.jpg| imagecaption = Wileyfox Swift running XFCE4Plasma Mobile
| releaseyear = 2015
| category = community
| originalsoftware = Android 5.1.1
| chipset = Qualcomm MSM8916 Snapdragon 410
| status_touch = Y
| status_screen = Y
| status_wifi = PY
| status_xwayland = Y
| status_fde = <!-- When installing with full disk encryption, can you type in the password with the on screen keyboard? -->Y
| status_mainline = Y
| status_battery = PY
| status_3d = Y
| status_accel = Y
| status_audio = PY| status_bluetooth = PY
| status_camera = <!-- Taking photos and videos works. -->
| status_gps = <!-- The Global Positioning System sensor works. -->Y| status_mobiledata = <!-- Connecting to the Internet via cellular network. -->Y| status_sms = <!-- Sending and receiving short messages works as intended. -->Y| status_calls = <!-- Talking to other people over the cellular network. -->Y
| status = <!-- Text displayed in the "not booting" table on the Devices page , e.g "kernel compiles, doesn't boot" -->
| booting = yes <!-- The device is booting at all, can be yes/no *IMPORTANT* -->
| status_otg = -P
| pmoskernel = Mainline
Fairly popular device based on reference Qualcomm design. Initialy Initially shipped with CyanogenOS.
There is also another device called GeneralMobile 4g (Android One device) that is very similar with this one.
== Problems ==
* Microphones are unuseable at the moment
* Mainline kernel doesn't have charger drivers
* No MAC addresses on boot at the moment
You can get WiFi working by adding <code>/etc/local.d/wcnss.start</code>
with this content (put your MAC in)
ifconfig wlan0 hw ether AA:BB:CC:DD:EE:FF
nmcli radio all off
nmcli radio all on
and making ir executeable with <code>sudo chmod +x /etc/local.d/wcnss.start</code>
== Contributors ==
== How to enter flash mode ==
* '''DownloadRecovery:''' With Power on the device powered offwith both <code>Power</code> and <code>Volume Down</code> buttons.* '''Stock fastboot:''' Power on the device with both <code>Power</code> and <code>Volume Up</code> buttons. You only need this to install lk2nd.* '''lk2nd Fastboot:''' Power on the device. After it vibrates/the display shows up, hold <code>Volume UpDown</code> and connect .{{note|'''Note:''' Pressing the keys too early will cause the stock bootloader to handle the key combination. You will end up in the USB cablewrong Fastboot interface.}}
== Installation ==
# You need to enable OEM unlocking in the developer settings of your android/cynogen installation. Otherwise, the Cynogen recovery will refuse to boot. However, you are allowed to flash the rootfs. Kernel, Recovery and bootloader not.# Make sure that you have the latest Cyanogen bootloader. If necessary, you can use the <!code></code> script from Install [ add more sections below as necessarymainline/lk2nd lk2nd] (alternative bootloader that handles certain mainline quirks like setting up the WiFi/BT MAC addresses. Keep in mind that you have to install pmOS components with lk2nd, enot original fastboot)# Follow [[Qualcomm_Snapdragon_410/412_(MSM8916)#Installation]].g == Battery and charging ==Wileyfox Swift uses LBC charger in pm8916. WifiA simple driver was added to the kernel to enable and configure charging. Compared to downstream driver that makes some decisions in software, photosthis driver leaves charging entirely to hardware since, according to documentation, LBC can work on it's own after it was initially configured.{{note|'''Note:''' As with any device, it's not recommended to leave your phone on charger for prolonged periods of time, leave it unattended or charge it in conditions that may cause overheating.}} This device uses "Voltage Mode BMS" (VM-BMS) to estimate State Of Charge (SOC) of the battery. Compared to other devices that have additional hardware (Fuel Gauge) to measure SOC, VM-BMS is mostly implemented in software. Accurate SOC estimation requires complex math algorithms and, ideally, should be implemented as userspace program. As a temporary solution, vm->bms driver was implemented. It uses simple, less accurate algorithm to estimate SOC. This algorithm works well enough to show approximate SOC in normal use but may fail in some unusual cases. == Audio ==See [[Qualcomm_Snapdragon_410_(MSM8916)#Audio]]. == Modem ==Just follow the See [[Installation guideQualcomm_Snapdragon_410_(MSM8916)#Modem]]. == USB Host (OTG) ==This device doesn't support OTG so it can't provide power or even detect normal OTG adapters but it is still possible to use USB in host mode. This requires custom adapter that will provide power to your USB device. In order to detect such adapter we abuse the fact that USB ID pin in microUSB is used to force EDL mode but since it is pulled down we can't detect normal OTG adapters with it. (USB_ID on those adapters is connected to ground when we can only detect 5v on this pin) So your custom adapter not only should provide external power but also should provide logical-high signal to USB_ID. This can make such adapter dangerous for other devices so you should avoid plugging it anywhere else. You can put a resistor between 5v and USB ID to make it a bit safer. Please note that device will boot into EDL mode if you leave such adapter in while powering on the device. EDL have no visible indication and you will need to pull battery out in order to reboot.
== See also ==
* {{MR|485|pmaports}} Initial merge request
* [ Device package]* [ Kernel msm8916 msm8916 mainline kernel package]* [ WIP Mainline kernel tree for msm8916 devices]


Navigation menu