Similar to how a Raspberry Pi or an Arduino can be transformed into an IoT gadget with the addition of a couple of breakout boards, some solder, and a bit of code, Precursor is a framework upon which you can assemble a wide variety of DIY mobile applications … Precursor is also unique in that you can hack many aspects of the hardware without a soldering iron. Instead of a traditional ARM or AVR “System on Chip” (SoC), Mobile Device r is powered by the software-defined hardware of a Field Programmable Gate Array (FPGA). FPGAs are a sea of basic logic units that users can wire up using a “bitstream”. Mobile Device comes pre-loaded with a bitstream that makes the FPGA behave like a RISC-V CPU, but you’re free to load up (or code up) any CPU you like, be it a 6502, an lm32, an AVR, an ARM, or something else. It’s entirely up to you.
– The body is made of aluminum, its dimensions are 69 x 138 x 7.2 mm. There is an LCD screen (336 * 536), a 110 mAh battery, a keyboard, a speaker, a vibration motor, and an accelerometer.
– The basis of the device is a software-defined SoC, FPGA Xilinx XC7S50, on its basis, emulation of a 32-bit RISC-V CPU operating at a frequency of 100MHz is organized. In addition, the board includes 16 MB SRAM, 128 MB Flash, Silicon Labs WF200C Wi-Fi, USB type C, SPI, I²C, GPIO.
– The platform is equipped with two hardware pseudo-random number generators. This is to improve security. An interesting point – the device does not have a microphone. To read sound, you need to connect a headset. This is done to protect against eavesdropping. If the headset is turned off, the sound will not be recorded, therefore, it is impossible to eavesdrop on something remotely.
– The Wi-Fi module is hardware isolated from all other components and works in its own environment. To increase the level of safety, the developers have also provided for a lockable case, RTC for integrity tracking, motion monitoring in standby mode (always on accelerometer and gyroscope).
– If necessary, you can add a chain of self-destruction and clear all data. This option is activated using an AES key.
– FHDL-language Migen (Fragmented Hardware Description Language), based on Python, is used to work with hardware modules. It is part of the LiteX framework, which provides the infrastructure for creating electronic circuits. In addition, the developer has prepared a Betrusted reference SoC, which includes a 100 MHz VexRISC-V RV32IMAC CPU, as well as an embedded Betrusted-EC controller with an 18 MHz LiteX VexRISC-V RV32I core.
– A set of cryptographic primitives is also provided, including AES-128, -192, -256 with ECB, CBC and CTR modes, SHA-2 and SHA-512, Curve25519 elliptic curve-based crypto engine. The engine is based on the Google OpenTitan crypto kernel.
Each device comes with a pre-built OpenSignal mobile app (based on the cryptographic protocol ZRTP and AES algorithm with a key length of 128 bits). The application works only on the given hardware model of the phone and does not use any intermediate servers for transmitting voice or text messages.