OLIMEX Teres-I (olimex-teres i)
New device port in works by the community maintainer |
![]() The Odrysian King at FOSDEM2017 | |
Manufacturer | OLIMEX |
---|---|
Name | Teres 1 |
Codename | teres_i |
Model | Rev.C |
Released | 12 Oct 2017 |
Type | laptop |
Hardware | |
Chipset | Allwinner A64 |
CPU | 4x 1152 MHz Cortex-A53 |
GPU | 600Mhz Mali-400 MP2 |
Display | 1366x768 IPS (N11BGE-EA2 Rev.C3) |
Storage | 16 GB eMMC (MTFC16GAKAENA-4M) + SDCard |
Memory | 2GB DDR3L RAM (2x Hynix H5TC8G63AMR-PBA) |
Architecture | aarch64 |
Software | |
Original software | Android |
FOSS bootloader | yes |
postmarketOS | |
Category | testing |
Pre-built images | no |
Mainline | yes |
postmarketOS kernel | linux-postmarketos-allwinner |
Unixbench Whet/Dhry score | Untested |
Flashing |
Works |
---|---|
Internal storage |
Works |
SD card |
Works |
Battery |
Works |
Screen |
Works |
Touchscreen |
Works |
Keyboard |
Works |
Touchpad |
Works |
Multimedia | |
3D Acceleration |
Works |
Audio |
Works |
Camera |
Works |
IR TX |
Works |
IR RX |
Works |
Connectivity | |
WiFi |
Works |
Bluetooth |
Works |
Ethernet |
Works |
GPS |
Works |
NFC |
Works |
Modem | |
Calls |
Works |
SMS |
Works |
Miscellaneous | |
FDE |
Works |
USB-A |
Works |
SATA/eSATA |
No data |
USB OTG |
Works |
HDMI/DP |
Works |
Sensors | |
Accelerometer |
Works |
Magnetometer |
Works |
Ambient Light |
Works |
Proximity |
Works |
Barometer |
Works |
Power Sensor |
Works |
Primary Bootloader |
Works |
---|---|
Secondary Bootloader |
Works |
Mainline |
Works |
Internal Storage |
Works |
SD card |
Works |
USB Host |
Works |
USB Peripheral |
Works |
Display |
Works |
Keyboard |
Works |
Buttons |
Works |
Another unsuspecting wanderer graces these humble pages. Did you stumble upon this realm by accident, or did a cruel hand of destiny somehow decide you needed to witness the desolation within? Welcome, I suppose.. Do you dare to find a comfortable place to sit and prepare for a tale steeped in sorrow? click to listen to the tale..
Alright then, In a world sadly not distant enough, an insidious corporation, orchestrates a grandiose symphony of global strife. A heart-wrenching performance filled with the spilled blood, tears, and the unwitting sacrifices of minds too feeble or fearful to break free. Picture, if you will, a desolate expanse where individuality is a scarce relic, traded for the meager privilege of having a fragile ski helmet over one's head for the illusory escape into a utopia of the world that could have been.
Amid this grim reality, a band of warriors, led by my creator Master Usunov, surfaces. They send forth a grim warning across time—an offering of plans and instructions to construct the initial shard of a weapon. A flickering ember of hope in a world drowning in the shadows of despair.
Now, brace yourself, dear visitor, for the revelation of a companion on your journey. Will you muster the strength to endure its burdens and, perchance, be strong enough to guide this realm out of its woeful state?
Or will you retreat to the comforting shadows of indifference? The choice rests with you, my unwitting bearer of clicks.
Engineers, Maintainers and Contributors
- Tsvetan Usunov -- Hardware Engineer and Supplier
- Dan Koloff -- Main Repository Maintainer
- Dimitar Gamishev -- The Linux Kernel Mainline and Hardware Engineer
- Lub -- Official Technical Support
- KREYREN -- Maintainer of Armbian, Debian GNU/Linux, Ubuntu, (Devuan GNU/Linux), NixOS, (GNU Guix GNU/Linux), PostmarketOS, (Alpine Linux), Parabola GNU/Linux, (Archlinux ARM). Contributor to The Linux Kernel
- JC Staudt -- Debian GNU/Linux Maintainer
- Milan P. Stanić -- Alpine Linux Maintainer
- Tom Hall (former) -- NixOS Maintainer
- Bill Auger -- Parabola GNU/Linux Maintainer
- Denis 'GNUtoo' Carikli -- Parabola GNU/Linux Maintainer
- Alexey Korepanov (former) -- Gentoo Linux Maintainer
- Jeff Moe -- Engineer of 3D printable case
- Chris Boudacoff -- teres1-debug developer
- (and many more!)
Users owning this device
Installation
Use pmbootstrap to build your own image.
Insert your desired sdcard in the build system and note it's device identifier (e.g. /dev/mmcblk1)
$ pmbootstrap init # vendor: olimex, device: teres_i
$ pmbootstrap install --fde --sdcard=/dev/your-sdcard-device
Disconnect the sdcard from your build system and insert it into a laptop, it's expected to boot.
Alternatively you can flash a pre-built images from ...
U-boot Updates
WARNING: This process might result in a device that will not boot postmarketOS, make sure you understand how you might recover from this situation before proceeding!! |
# update-u-boot --board=teres_i --device=/dev/your-device
Updating teres_i u-boot in /dev/your-device in 3 seconds...
Completed successfully.
# sync
Serial console
Teres has a serial port in the headphone connector.
The default UART is 115200n8
The pinout for the serial connector on the headphone jack is:
TX RX | | === == ====|||||||||--------- | GND
The serial connection is 3.3V
You can also buy the debug cable from the supplier's web store or make one.
For instructions and firmware: https://github.com/d3v1c3nv11/teres1-debug
Storage
The SD card is /dev/mmcblk2
and the eMMC is /dev/mmcblk0
Booting
Teres boots using u-boot. The bootrom in the A64 soc will look for u-boot on the SPI flash chip, then the eMMC and then the SD card slot and It will boot the first functioning u-boot image it can find.
Booting from SD
To boot from the SD the SPI bootloader and eMMC bootloader need to be disabled. Then the SoC will fallback to a bootloader on the SD card so postmarketOS can be fully booted from SD.
Teres comes with an empty SPI chip from the factory so that doesn't need anything by default.
Booting from eMMC
To boot it from eMMC you have to overwrite the OS that's on the eMMC already. This is possible to do from an OS booted from SD with the steps above and then flashed on the eMMC using live system.
Fastboot mode is work-in-progress
Booting from SPI
TBD
Kconfig
Reference only
# section
CONFIG=value # comment
Recommended Mods
Add VCC-in Fuse
In case the charging is too slow for you or you often change chargers, then consider adding a fuse to the VCC-in to protect the internal electronics:
The stock charger can provide 5VDC1A while with the fuse it's sane to use a 5VDC3A charger (at your own risk!).
Cut the power cable
To be able to charge teres from practically anything that provides the very common 5V 1~3A you can cut the power cable and use WAGO connectors for wire splicing or making a USB-A to Barrel Jack cable.
Known issues
Power connector wear
The power connector starts to expire after around 1000 insertions and needs to be serviced.
Phone signal might disrupt audio
The cell phone signal on a phone put close to the device might produce static noise.
Power-on power supply connection
The device powers on when connected to the power supply
Disfunctional display on u-boot<=2024.01-r2
Alpine's u-boot <=2024.01-r2 has a broken display during the u-boot phase, use >=2024.01-r3.
- https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/59177
- https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/59249
- https://gitlab.alpinelinux.org/alpine/aports/-/commit/34e1f452115975ac88b04d3bbe0b75436a5b0f69
Troubleshooting
..
See also
- pmaports!4743 Initial merge request.
- aports!59177 Fixes for broken screen initialization on Alpine Linux.
- aports!59249 Fixes PMIC regulator initialization
- aports!34e1f4 Rebuilds u-boot with fixed atf dependency
- github:Kreyren/pmports-TERES Work repository for teres compatibility patches for alpine/pmos
- github.com/OLIMEX/DIY_LAPTOP Device Repository
- Olimex.com/Products/DIY-Laptop Products page
- linux-sunxi.org/Olimex_teres-A64 Sunxi wiki page about the device