Hi,
I have soldered to the RX, TX and GND test points on my Fairphone. I have ran fastboot oem debug-enabled uart. I am not getting ABL or Linux boot debug output over UART. The TX pad is pinned high at 1.8V: i’ve connected it to my flipper zero’s UART pins via a level shifter and have verified that the shifter transforms 1.8V → 3.3V and also tested the shifter also drops low by connecting the shifter input to GND and verifying that it drops to 0V on the output:
My question: is UART even available on a production device? I have found references to debug policies inside XBL and UART is gated in XBL by a branch checking config values: I do not know if this is related to the signed debug policy or not.
Could someone at fairphone help? Should UART work? If so, do I simply need a 1.8V UAET → USB adapter instead of a level shifter?
Welcome to the Community Forum. You will likely not find Fairphone employees responding here and might want to also contact the company itself as well for that.
I for my part have no clue about what you have been describing, but just in case you have not consulted it yet, here’s a comprehensive & official Fairphone 6 document (98 MB) by the company that includes schematics among a lot of other information:
XBL won’t output anything unless it’s detecting a UART console being connected, meaning RX being connected. If you only connect TX, it won’t output anything. Not exactly sure why it’s not doing this for you, for development I usually don’t bother and have a custom debug XBL with this check removed.
Android won’t output anything by default, if you build your own Android image you can enable the serial console without any troubles. I’m not sure right now if the “perf” kernel config allows turning on serial console via kernel cmdline parameters, that you may be able to patch more easily into an official image.
If you’re still not having success, you could try building the Android image from source with the debug flags manually enabled The Fairphone (Gen. 6) - Build Instructions — Fairphone Open Source
hi!
thank you for your response. i’ve hooked up the RX pin to my flipper’s TX pin via the level shifter and i’m still not seeing XBL output.
that makes me suspect the level shifter isn’t switching fast enough. do you have any other ideas or should i order a uart → usb adapter?
I haven’t played around with that to be honest. What’s your goal by the way? Getting output from XBL/ABL or just in general hooking up UART to get output from other software?
my goal is to boot a fully custom operating system, not based on Android.
UART would be invaluable for the issues i’m bound to encounter: i could try bringing up the USB stack to get a console like that, but doing that blind will be very difficult and probably past what i’m capable of.
do you have any other suggestions for early-platform-bringup work? or should i keep chasing UART? i’ve ordered a 1.8V UART → USB adapter based on the assumption it’s not fused out.
You might want to ask around in the postmarketOS community, as I believe some people there are working on FP6.
(deleted paragraph about not finding schematics - apparently I can’t do strikeouts).
Never mind, the schematics are way at the back of the document. I’m unsure if the linking within the document is broken; chapter 12 (“Schematics and Board Diagrams”) is only a page long.