New univeral A20 image released which works with all our A20 boards and auto detect and configure on boot

d6ndarl

We are releasing universal A20 Linux image which will boot and work on all our A20 boards:

The image is based on Armbian with modifications necessary to support OLinuXino specific features.

There are two image releases – Ubuntu Bionic Desktop image which is the recommended image for beginners or when you want to evaluate the board’s hardware fully – it has good HDMI, audio support and Debian Stretch Server image which contains no binary blobs but is headless and has poor video and audio support.

Currently, our latest Ubuntu Bionic A20 image uses kernel 4.19.10, or to be more specific:

root@olinuxino:~# uname -a
Linux olinuxino 4.19.10-sunxi #5.65 SMP Tue Dec 18 14:19:16 EET 2018 armv7l armv7l armv7l GNU/Linu

Our Armbian Ubuntu Bionic image can be downloaded from FTP or Torrent.

Our Armbian Debian Stretch image can be download from FTP or Torrent.

Username is according to Armbian documentation: root and password: 1234

Since we have a large array of A20 boards and numerous variants there is auto-detection enabled in the image. Information about the model of the board is stored in the EEPROM of each A20 board that had been recently manufactured and this information is used by the new images to load the proper configuration. The EEPROM contents are described here.

The images can be used with boards from early revisions which has no EEPROM or has EEPROM with wrong content after one time set up of the EEPROM during in the first u-boot of the new image. If you have trouble booting interrupt u-boot by pressing space and type “olinuxino”. An example configuration for manually setting the EEPROM of A20-OLinuXino-LIME-e16Gs16MB hardware revision K is given at the end of the post.

The new images have support for both legacy resistive and new capacitive/resistive touch displays with auto detection feature (please bear with us they are not released yet on the web as we test them). The newer versions of the displays has suffix -CTS for capacitive touch screen and -RTS for resistive touch screen and are offered in 5″, 7″ and 10″ size with different resolutions. These displays are automatically detected by boot and drivers properly configured for them. If the LCDs are not detected HDMI output is only enabled and the image can be configured one time at first boot manually as described in this wiki article.

Please note that mainline Kernel now do not support NAND Flash, so if you wish to boot from the flash memory, consider either using the legacy 3.4.xx images which are still available or switch to A20 boards with eMMC. The eMMC boot is supported via armbian-config (nand-sata-install). Due to lack of reliable eMMC 5.X support by Allwonner boot0 and for future compatibility we are adding 16MB SPI flash for all A20 boards with eMMC, this way the board first boots from the SPI then continue to eMMC with properly set configuration. Allwinner Boot0 can’t handle correctly eMMC 5.X and sometime boot sometimes do not boot, as this is binary blob inside SOC there is nothing we can do than to use SPI boot to fix eMMC boot parameters.

Build instructions for the new images can be found here.

An example configuration for manually setting the EEPROM of A20-OLinuXino-LIME-e16GB hardware revision K is given below:

=> olinuxino 
olinuxino - OLinuXino board configurator

Usage:
olinuxino config info - Print current configuration: ID, serial, ram, storage, grade...
olinuxino config list - Print supported boards and their IDs
olinuxino config erase - Erase currently stored configuration
olinuxino config write [id] [revision] [serial] [mac]
arguments:
[id] - Specific board ID
[revision] - Board revision: C, D1, etc...
[serial] - New serial number for the board
[mac] - New MAC address for the board
Format can be:
aa:bb:cc:dd:ee:ff
FF:FF:FF:FF:FF:FF
aabbccddeeff
olinuxino monitor list - Print supported video outputs
olinuxino monitor set - Set specific LCD

=> olinuxino config list

Supported boards:
----------------------------------------
A20-OLinuXino-LIME - 7739 
A20-OLinuXino-LIME-n4GB - 7743 
A20-OLinuXino-LIME-n8GB - 8934 
A20-OLinuXino-LIME-s16MB - 9076 
T2-OLinuXino-LIME-IND - 9211 
T2-OLinuXino-LIME-s16MB-IND - 9215 
T2-OLinuXino-LIME-e4GB-IND - 9219 
A20-OLinuXino-LIME2 - 7701 
A20-OLinuXino-LIME2-e4GB - 8340 
A20-OLinuXino-LIME2-e16GB - 9166 
A20-OLinuXino-LIME2-n4GB - 7624 
A20-OLinuXino-LIME2-n8GB - 8910 
A20-OLinuXino-LIME2-s16MB - 8946 
A20-OLinuXino-LIME2-e16Gs16M - 9604 
A20-OLinuXino-LIME2-e4Gs16M - 9613 
T2-OLinuXino-LIME2-IND - 9239 
T2-OLinuXino-LIME2-s16MB-IND - 9247 
T2-OLinuXino-LIME2-e4GB-IND - 9243 
A20-OLinuXino-MICRO - 4614 
A20-OLinuXino-MICRO-e4GB - 8832 
A20-OLinuXino-MICRO-e16GB - 9042 
A20-OLinuXino-MICRO-e4GB-IND - 8661 
A20-OLinuXino-MICRO-IND - 8828 
A20-OLinuXino-MICRO-n4GB - 4615 
A20-OLinuXino-MICRO-n8GB - 8918 
A20-OLinuXino-MICRO-s16MB - 9231 
T2-OLinuXino-MICRO-IND - 9223 
T2-OLinuXino-MICRO-s16MB-IND - 9235 
T2-OLinuXino-MICRO-e4GB-IND - 9227 
A20-SOM-n4GB - 4673 
A20-SOM - 7664 
A20-SOM-IND - 8849 
A20-SOM-n8GB - 8922 
A20-SOM-e16GB - 9155 
A20-SOM-e16GB-IND - 9148 
T2-SOM-IND - 9259 
A20-SOM204-1G - 8991 
A20-SOM204-1Gs16Me16G-MC - 8958

=> olinuxino config write 9166 k

Erasing EEPROM configuration...
Writting EEPROM configuration...
Writting MMC configuration...

=> saveenv

Saving Environment to EXT4... Recovery required
update journal finished
done
OK

=> reset

Allwinner released T2 SOC working -40+85C targeting automotive entertainment, it’s re-branded A20 with expanded operating temperature

T2

Allwinner released recently their T2 SOC targeting automotive entertainment panels.
Looking at the specs we saw that it suspiciously looks like A20.

t2-blk

This is not the first time Allwinner releases their old silicons under new names like A13-R8, A33-R16, R40-T3 etc.  I personally find this quite confusing.

We got some T2 samples and now assembly A20-OLinuXino-LIME, A20-OLinuXino-LIME2, A20-OLinuXino-MICRO and A20-SOM with them to test for hardware and software compatibility.
Once we are sure everything works OK will release T2-OLinuXino boards which will be with industrial temperature grade -40+85C for all components on the boards.

T2-abs

To this moment all our A20-XXX-IND boards has components for or exceeding -45+85C, but A20 SOC was specified -20+70C.

TERES-I has patch and can work with both LCD and HDMI together

IMG_1415

This picture was sent by Roman Beránek from Prusa Research.

He is using two displays one LCD and another HDMI with different resolution.

His patch is being reviewing now.

We also are working on this dual display use for some time, but we want to may dynamically switch between LCD and HDMI so TERES-I can work with projectors, we are close to release it in new image.

TERES-I USB debug cable

TERES-USB-DEBUG

TERES-USB-DEBUG cable is now in stock. TERES has unique features to multiplex audio port between audio headphone output and serial console debug.

There are two ways to enable the serial debug via audio jack. First one is with teres1-debug on|off script and it will work until reboot:

sudo teres1-debug on

when you want to stop use

sudo teres1-debug off

this is good for try something while your laptop is working, but if you want to catch the early uboot messages you have to use another script:

sudo debug-switch.sh on

this will switch debug serial port permanently to audio jack until you execute the scriupt

sudo debug-switch.sh off

These scripts are included in the official image, but if you build your own you can install them from the GitHub sources

This is FOSDEM 2018

fosdem1

Last weekend in ULB (University Libre of Bruxelles) took place the biggest Open Source event in Europe – FOSDEM.

With 678 talks, split in 55 devrooms this is something every open source enthusiast waits whole year.

It’s amazing how the organizers make such event possible, between 8 and 10 000 people all around the world come together at one place. If you want to meet some open source project, Linux kernel or Linux distribution maintainer there is great chance to meet him/her there.

FOSDEM usually is made in the weekend Saturday and Sunday, but traditionally starts with Friday evening welcome beer party at Delirium cafe. Do not be fooled by the name nobody go there to drink coffee.

fosdem-delirium

Delirium usually can’t hold all people so the streets around it looks like this:

street

Every year this event become bigger and bigger. I was always wondering how they manage to keep their WiFi infrastructure in order with so many people attending. This year for the very first time the WiFi was impossible to connect to, so I guess we reach the infrastructure capacity 🙂

In Saturday the talks started, needless to say for me most interesting was the CAD and Open Hardware devroom.

One of the most anticipated talk there was about KiCad 5 new features.

Wayne Stambaugh the project manager started his talk with red T-shirt from Digikey and announced that Digikey made the single most significant donation to KiCad team just few days before the conference. So he said them “thank you” by presenting his talk wearing their red T-shirt.

wayne

It was very interesting to hear that Wayne got feedback from popular PCB prototype providers, that about half of PCB projects now they receive for prototyping production are made with KiCad! It’s amazing to see the progress KiCad made for the last 4 years!

I personally like more the T-shirt Wayne was wearing when he closed his talk 😉 KiCad team really like the complex boards we design with their product and this was very kind gesture.

wayne2

Another interesting talk was Introduction to LibrePCB . This is the first time I hear about this project and it looks itneresting. The author is obviously capable young man and thinkered a lot about how to make component libraries more easy to use, but while I was watching the talk I was wondering (as many others) why the author just do not join KiCad, which is already well established project and leading as features and completeness. We all know that KiCad team is very small and more people joining the project will make much more sense than to re-inventing the hot water, because you do not like some feature in this popular project. Well this is the open source 🙂 and everyone is free to scratch his own itch, but I would love to see Urban Bruhin helping KiCad to become better instead to duplicate the work creating similar product alone.

Jesús Arroyo Torrens presented Icestudio – graphical way to program FPGAs. I would say this is quite entertaining and easy start for beginners with no previous knowledge about electronics.

main

Juan Gonzalez-Gomez (Obijuan) upgraded this talk with very entertaining presentation about what he did with Icestudio and small funny blocks he created. He is using his daughter as beta tester. I recommend you to watch this talk when the video is available.

Juan and Jesus are part of Spanish community working with FPGAs. You can see more about what they do on this site FPGAwars.

Staf Verhaegen shared his findings about is it possible today to implement ASIC design with open source tools. Very interesting topic, let’s hope the time Makers and small companies will be able to make their own chips with Open source tools is approaching.

My talk was about current TERES laptop status and the experience we got during the development with KiCad. Using FOSS tool like KiCad is great to make OSHW, but if you want to use latest features and the daily builds, they are available only via ppa repository for Ubuntu. This means if you use other distribution you have to build from sources every day. Windows daily builds are not available at all. This confuses many beginners who can’t manage to open our files when they want to study them as they use old builds (official Ubintu repository KiCad version is probably one year old, same for Windows version). My slides are now uploaded at Slideshare.

Other devroom talks I found interesting:

Exploiting modern microarchitectures Meltdown, Spectre, and other hardware attacks 

Programming UEFI for dummies 

Improving Linux Laptop Battery Life

Kodi and Embedded Linux

Linux as an SPI Slave

How to keep your embedded Linux up and running

Drive your NAND within Linux

Image capture on embedded linux systems 

New GPIO interface for linux user space 

It was nice to see three four other talks at FOSDEM by Bulgarian speakers!

Automating Your Lights with Open Source 
Turning On the Lights with Home Assistant and MQTT
Testing Red Hat Enterprise Linux the Microsoft way 

Current meta of video compression and probable futures

Overall FOSDEM is must see event for anyone who is interested in FOSS/OSHW.

Bruxelles is excellent location and offers lot to see, both Wizzair and Ryanair offer low cost flights to this destination and I don’t know where else you can drink beer from half meter glass (not half litter but half meter!) so looking forward to see you next year there!

half-meter

 

TERES I DIY Open Source Hardware Modular Hacker’s Laptop update

teres

TERES-I DIY laptop first shipments started in September last year and we quickly sold the first initial production run. Immediately we start to get valuable feed back. Meantime the spare parts now are online and can be ordered.

FEEDBACK

Some of the feed back was quite pleasant like this one sent from Martin Krastev:

Здравейте,

Този път ви пиша не с въпроси по подръжката, а като потребител на Терес с
няколкоседмичен опит и впечатления ; )

Знам, че по идея Терес-А64 е бил замислен като хакерски ноутбук, но вече
седмици го ползвам като машина за разработка:
1. Освен проектите, по които работя, Терес сам си компилира и
компилаторите, които ползвам — 2-та ГБ памет наистина правят паралелното
компилиране възможно, та дори да е само -j2 или 3 (нещата, които компилирам са сравнително тежки, и по-голяма паралелност вече опира до суоп файла).
Така че голямо благодаря за ъпгрейда на паметта!
2. Въпреки нищожното охлаждане на чипа, Терес успва да държи по-голяма част от времето 1152МХц, което беше много приятна изненада за мен.
3. Клавиатурата се оказа доста ергономична, въпреки че в началото имах
опасения, че ще е малка.
4. Избора на чип от програмна гледна точка също се оказа удачен – някои
прозиводители на А53-базирани чипове орязват архитектурни фийчъри (демек – инструкции), но allwinner не са от тях (за изненада! ; ) Това ми позволява да не се тервожа, че код писан за по-глеми армове може да не тръгне на Терес.
5. Батерията носи добре на натоварване – дълги компилации не угасват по
средата! : ) А и шината за sd карти държи прилична скорост – напъно
сравнима с вътрешния флаш (при прилична карта, разбира се), така че и
проблемът с допълнително дисково пространство за големи проекти е решен.

Ами това е засега! Исках само да ви кажа, че с Терес сте в правилната
посока, тъй както сте създали напълно ползваем работен ноутбук за арм
програмисти, което си е постижение!

Поздрави,
Мартин

Google translate does satisfactory translation so I would not challenge my English translation skills 🙂

ISSUES

There were two issues we couldn’t catch during our tests and went with the first lot to our very impatient customers:

1. LCD backlight, some LCDs cause the backlight circuit inductor L11 to resonance at annoying audible high pitch harmonic frequency caused by the 300Hz PWM.

zoomIMG_20171219_083219

According to best Murphy’s law practices this problem didn’t show at the first few laptops we build and tested, but when we shipped the first lot some people complained back about it, so we had to find quick solution.
1.1. adding bigger capacitor 100 uF in parallel to C204 was solving completely the issue, but the boards were already produced and shipped to customers;
1.2. adding double adhesive tape which to press the L11 to the plastic cover solved the issue in most of the cases, if this was not enough sealing the L11 with superglue also stopped the noise, which was caused by L11 vibrations, needless to say this was quick dirty and messy fix

Инфорамция как да ъпгрейднем фърмуер на touchpad и бутони:

This issue was completely fixed with adding 100uF to second production lot

2. Touch panel buttons issue. We run out of GPIOs on the keyboard board so ADC was used to scan these two buttons. Again everything was OK when we tested the few laptops we assembled in house, but soon after the shipment people start complaining that sometimes they press left button but laptop register right button and etc, quite annoying!
2.1. the problem was partially fixed with changing the firmware, we posted new keyboard PCB firmware and instructions on GitHub but this not always solved the problem
2.2. the good fix solution was to decrease the resistor values on the PCB and use 1% precision resistors instead of 5% used initially

We do apologize to all customers who had experienced such problem, we guess they are not many, but if someone has still such issue after the firmware upgrade we will send free PCB3 replacement, just please send us your requests to support@olimex.com.

In the current KITS this issue is solved.

SOFTWARE

The initial version of the Linux software was not in best shape, the community helped us a lot and we are now on the third release. Special thanks to Alexey Korepanov for reporting lot of issues and fixes! He also made his own Gentoo distribution for TERES-I at GitHub!

PLASTICS

As you all know we suck at mechanical engineering and we had to find all plastic parts from Chinese laptop supplier. Some people asked about possible 3D designs of the laptop case but we are not capable to do this. So one of our customers Jeff Moe who obviously has mechanical engineering skills decided to re-design the plastics and make them as models in 3D printed format – he sends me pictures of his progress from time to time which I post here. So 3D makers be patient – there will be soon 3D printed designs and replacement parts for TERES!

EDIT: Jeff just noted me that the design is made by Brent MacKenzie from the Colorado Printing Project.

IMG_20180117_222635

IMG_20180118_101726IMG_20180118_182121

IMG_20180118_182208 (1)IMG_20180118_183356

It looks the LCD back plastic he designed is even easier to assembly than the original one.

IMG_20180118_190156

 

WHAT’s NEXT

I will post more in my next post about our progress in turning TERES-I DIY Laptop in portable lab with additonal FPGA board which makes from TERES component tester, Logic Analyzer and Digital Storage Oscilloscope with Sigrok.

OLinuXino EEPROM content – one step ahead to single Linux image for all A20 boards

LCD10-METAL-FRAME-1

We are struggling for some time now to make one single image which to work on all A20 boards we have.

Our problem is that we have more than 20 different A20 boards/revisions/ etc and every time we have to add or improve something we have to generate and test enormous amount of images.

It’s not so easy task as this image should run on different boards with differnt memory speed etc settings, different ports connections etc.

To achieve one single image which to boot to all A20 boards our first step is to add some content in the EEPROM which all OLinuXino has.

The EEPROM now contain this info: Header, ID, Revision, Serial number, Configuration, Reserved area for future (MAC etc), Checkcum.

The new image we work on now (based on Armbian with mainline kernel) will automatically recognize the board from the EEPROM content and run.

What will happen if no valid EEPROM content is read (i.e. old boards), there is tool which to be used to write EEPROM content based on board revision.

We are going to release this image soon.

 

Previous Older Entries