Precursor kan se ut som en långsträckt Blackberry, men den är kapabel till mycket mer. Varje element i den här enheten kan inspekteras och kontrolleras, ända ner till de fältprogrammerbara gate-arrayerna (FPGA) i dess kärna.
Moderna smartphones är komplexa, slutna plattformar med mjukvara och hårdvara borttagen från användaren. Precursor verkar ungefär så långt åt andra hållet som det är möjligt att komma.
En mobil FPGA-utvecklingsplattform
Precursor är det senaste öppna hårdvaruprojektet från Sutajio Ko-Usagi, en duo av hackare och inbyggda hårdvaruutvecklare baserade i Singapore. Det är en dubbel FPGA-hårdvaruutvecklingssats med öppen källkod som syftar till att tillhandahålla den säkraste mobila utvecklingsplattformen som möjligt.
Utvecklingssatsen är inkapslad i en bearbetad aluminiumkropp, som rymmer det fysiska tangentbordet och 536 x 336 svartvit display, tillsammans med ett utbytbart 1100 mAh Li-ion-batteri. Det finns ingen mikrofon i enhetens kropp, men det finns en kombination av 3,5 mm ljudport och en 0,7 W aviseringshögtalare och vibrationsmotor.
Varje aspekt av projektet är öppen källkod, ner till källkoden för systemet på kretsen (SoC) som finns på FPGA. Det betyder att du kan kompilera din egen processor och säkert veta att det inte finns någon skadlig kod inbyggd i den.
Projektet tillkännagavs ursprungligen i början av förra månaden, men dess Crowd Supply-sida är nu live och har redan samlat på sig över 117 000 $ av finansieringsmålet på 222 000 $ i skrivande stund.
Early Bird-löften har redan gjorts anspråk på, men ordinarie $512 Precursor är fortfarande tillgänglig.
Föregångare: De fullständiga specifikationerna
Om du slutar försöka tänka på det som en telefon börjar du se att Precursor är ett fullfjädrat mobilt FPGA-dev-kit:
FPGA: Xilinx XC7S50 primärt system på chip (SoC) FPGA med -L1 hastighetsgrad för längre batteritid; testad med 100 MHz VexRISC-V, RV32IMAC + MMU, 4k L1 I/D cacheLattice Semi iCE40UP5K sekundär inbyggd styrenhet (EC) FPGA som hanterar ström, standby och laddningsfunktioner; testad med 18 MHz VexRISC-V, RV32I, ingen cache System minne: 16 MB extern SRAM Lagring: 128 MB blixt Visa: 536 x 336 svartvit LCD med 200ppi, bakgrundsbelysning Audio: 0,7 W aviseringshögtalare, vibrationsmotor, 3,5 mm headsetuttag Anslutning:802.11 b/g/n WiFi via sandlådeförsett Silicon Labs WF200C-chipset för batteribesparing USB: 1x USB 2.0 Type-C-port för data och laddning Användarinmatning: Fysiskt bakgrundsbelyst tangentbord med föränderliga layoutöverlägg (QWERTZ, AZERTY och Dvorak) Sensorer: Accelerometer och gyroskop Expansion: Flex PCB breakout för 8x FPGA GPIO via batterifacket Felsökning: Anpassad Raspberry Pi HAT och utvecklarkabel för GDB + Chipscope och firmware flashingUSB-kabel via wishbone-tunnel för mellanprogramsfelsökning Säkerhet: Dubbel hårdvara TRNG Anti-manipuleringsfunktioner: Användarförslutbar metallburk för pålitliga komponenter Dedikerad realtidsklocka (RTC) med grundläggande övervakning av klockintegritet Strömövervakare tripp återställning vid strömfel Alltid påslagen accelerometer/gyro för att upptäcka rörelse i standbyStöd för omedelbar säker radering via batteristödd AES-nyckel och själv -förstöra krets Batteri: Utbytbart 1 100 mAh Li-Ion-batteri ger ~100 timmars standby med Wi-Fi + inbyggd kontroller + statisk display aktiverad, eller 5,5 timmars kontinuerlig användning. Mått: 138 x 69 x 7,2 mm Vikt: 96 gram
En annan smartphone med öppen källkod?
Att kalla Precursor en telefon är lite oseriöst, men det har vissa saker gemensamt med andra smarta enheter med öppen källkod som Pine Phone eller Librem 5. Där det skiljer sig är beslutet att vara värd för SoC på en FPGA.
En processor är i grunden en liten, komplex krets som du kan interagera med med hjälp av instruktionsbaserad arkitektur. Du har ingen kontroll över vad som faktiskt finns inuti den. Du ger den bara beräkningar att utföra med hjälp av en instruktionsuppsättning från tillverkaren. Du måste helt enkelt ta chipskaparna på deras ord när de säger att de är säkra.
Detta visar sig ofta vara fel, som det gjorde i fallet med de kritiska sårbarheter som hittades i AMD Ryzen-chips för en tid sedan.
FPGA är integrerade kretsar som kan konfigureras om med hjälp av kod. Detta kanske inte låter så annorlunda på ytan, men istället för att ge FPGA-instruktionerna som du skulle göra med en vanlig processor, konfigurerar du själva kretsen.
Det är härifrån idén om “evidensbaserat förtroende” som är central för Precursor-projektet kommer ifrån. Du kommer att kunna veta, ända till den allra sista logiska porten i CPU:n, att din enhet är 100 procent säker.
Förvandla den till den säkraste retrotelefonen som finns, eller gör den till en mobil utvecklingsplattform för kryptografi och tvåfaktorsautentisering. Möjligheterna är för en gångs skull faktiskt oändliga. Nästan.
Om författaren
Ian Buckley (220 artiklar publicerade)
Ian Buckley är en frilansjournalist, musiker, artist och videoproducent bosatt i Berlin, Tyskland. När han inte skriver eller står på scen, pysslar han med DIY-elektronik eller kod i hopp om att bli en galen vetenskapsman.
Mer från Ian Buckley
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, free e-böcker och exklusiva erbjudanden!
Klicka här för att prenumerera
