New from our forum – experimental NixOS image for TERES DIY OSHW Laptop

nixos.png

Recent post from our forum explains how to build experimental NixOS image for TERES-I  – Do It Yourself, Environmental friendly, modular Open Source Hardware ARM Laptop.

Linux Users Group Bulgaria annual meeting is April 6th in Plovdiv

LUGBG_1

Linux Users Group is annual meeting of people who use and develop with Linux in Bulgaria. The LUG-BG meeting this year is on 6th of April in Plovdiv. The web page of the meeting is here.

I signed for discussion about how to make one ARM Linux system tamper proof.

This is topic which is very interesting for all our OLinuXino customers. OLinuXino is used in many industrial product and machines and the designers want to be sure that no one except them can change the Linux image as these machines pass safety approvals etc and any intervention in the code is illegal.

The Allwinner SoCs do have TrustZone support and also crypto hardware to support a secure boot path for it, but parts of the ARM TrustZone specifications is under NDA and no one has seen it. The secure boot paths are also undocumented. Last time I attempt to receive any useful information about this I got reply: A20 is 5 years old processor and we do not offer technical support for the old processors, when I asked them for info how TrustZone and Secure boot is implemented in their newer processors I didn’t got any reply. My guess is this is something licensed from ARM which they never used so can’t support.

Currently all Allwinner SOC boot without using TrustZone and Secure boot path, they has so caller BROM a small code located in SOC ROM, which initializes the memory and processor registers with some safe values then try to boot from different peripherals. If UBOOT GPIO is held low they enter FEL mode where you can type some commands and load code via USB, else they try to boot from SD-CARD, if fails then try -> internal NAND Flash if fails then try -> SD-CARD2/eMMC, if fails then try -> SPI Flash, if all fails it go in FEL mode.

This is done intentionally so you can never brick your board if internal NAND or EMMC or SPI Flash get corrupted you can always boot from SD-card or USB and replace the image. This of course is big security hole, as anyone with physical access to your board can always replace your images with his own.

The TrustZone and Secure boot path solve this issue, but no one has documentation how this is done on Allwinner SOCs.

I hope to get some interesting ideas how this could be solved, one radical approach is to remove physically the SD-card connectors 🙂

Nice tutorial for writing and debugging plain C on ARM Cortex-M3 STM32F103

OLIMEX-STM32-H103

Jacob Mossberg wrote nice tutorial how to program in C ARM Cortex-M3 with GCC and how to debug it with GDB and OpenOCD.

We like very much the hardware he is using 🙂 STM32-H103 and ARM-USB-OCD-H.

 

SPECTRE and MELTDOWN attacks and OLinuXino and SOMs

meltdown-and-spectre-vulnerability

The #spectre and #meltdown attacks were subject to great concerns in the last weeks.

Eben Upton made brilliant explanation of how and why they work in his blog post.

There is already project on Github which can be used to test if your ARM AArch64 processor is vulnerable to such attacks.

As Cortex-A7 and Cortex-A53 are not affected of these attacks this means all our boards with A20, A33, A64 processors are immune.

For A10, A13, AM335X (Cortex-A8), RK3188 (Cortex-A9) we need to do some further investigation.

The Metal Linux Computer – The first LCD industrial panel prototypes are ready

LCD9

What you see is our first sample of the metal frame for 7″ LCD with build-in A20-OLinuXino-LIME inside!

Our mechanical designer is getting better and better after the design of A20-OLinuXino-MICRO and A20-OLinuXino-LIME boxes. The box for MICRO was done after three attempts, the LIME box was done right from the second attempt, now the LCD box got perfect from the very first attempt!

The metal frame is done by three parts:

LCD1

Here above you see two parts, which connect together with single screw. Why this is necessary – LIME has connectors on both ends and it’s not possible to fit inside as the connectors go outside PCB borders

LCD2

this is the third part it’s bend to hold inside the touch panel and LCD:

LCD3

here is the frame with LCD and touchscreen in it:

LCD4

the LIME is attached to back panel with one screw on metal spacer, the left side connectors show outside a bit:

LCD5

then we attach the right side panel and screw them together:

LCD6

then the LCD part is snap to the other two and fixed with 4 screws:

LCD7

here is how it looks on the back side:

LCD8

the same four mount holes can be used the metal panel to be assembled to other surface there are provisional mount holes on the back side as well.

The whole construction is solid and reliable. The frame dimensions are: 190 x 102 mm the higher back side is 40 mm the lower side is 10 mm thick.

This whole frame have approx same size as MODEL-B box and have just few more bendings so the price I expect is to be same as on MODEL-B box i.e. about EUR 15.00

This means 7″ LCD panel with A20-OLinuXino with the metal frame will cost from EUR 81.00 and if TOUCH screen is add from EUR 89.00

A64-OLinuXino OSHW Linux computer is close to complete routing – GitHub update of KiCAD files

A64

Our first complex Linux board done completely in KiCAD is near the finish.

As you can see from the picture above all the complex high speed signals routing is already done.

What left is GPIO, audio etc low speed signals which are easy to complete.  CAD files are updated to GitHub

A20-OLinuXino-LIME server with 320GB HDD works on LiPo battery over 6 hours

A20-OLinuXino-LIME-1

We have server rack with several x86 servers running Linux with our work file repositories, the ERP and etc.

They are quite power hungry as lot of HDDs are connected to them in RAID mirrors to prevent data loss.

We are located in industrial area and power supply glitches are not uncommon, specially during the winter.

To keep the servers alive during power downs, we had to buy expensive 2000 EUR UPS, which actually keep them no more than 20-30 minutes up when power is down, so basically just to allow you 10-15 minutes to finish your work and then to shut them down properly before the battery is drained.

This UPS has lead-acid batteries inside which has to be changed every 3 years and cost almost as much as the UPS itself.

Initially we kept our all Olinuxino Linux images on Gdrive, but there were few issues with this, the images grew to many Gigabytes, and Gdrive start to restrict the access to the files after some limits were reach, so we decided to host these images by us on torrent. We decided to make separate server for this due to security reasons, we just wanted to keep our local network private and to allow external access only to this isolated server which we access also from outside like other users.

To keep it as low power as possible we setup one A20-LIME + HDD320GB + 6600mAh LiPo battery. This configuration works well several years already.

Yesterday our power supply provider EVN warned us that they will change mains high voltage cables in our area and Olimex will have power supply cut from 9.00 to 15.00, so we had to take day off.

We came today and sure we found all x86 servers down, but to our surprise the LIME with the HDD was working fine all these 6 hours of power blackout and didn’t shut down!

We know that with 6600mAh battery the LIME will last at least 10 hours as it uses 1.5-2W, but the HDD is rated 5W (5V/1A), so we were expecting less time stand alone operation.

It was good surprise to see that actual consumption is less, maybe the HDD enters stand-by mode when not used?

Previous Older Entries