The progress of donations is going well and we reached 71% of the goal.
A big thanks to all donors!
New Version of Electrical Schematics
We just received a new version of the schematics (v0.5) that raise the power consumption footprint up to 90W in order to support higher end MXM 3 video cards that may reach a maximum of 55W under heavy load. As an example, the AMD Radeon E9174 (GCN 4.0) has a TDP of 50W.
Electrical Schematic version 0.5 June 2020
We will publish in our repository this new version of the schematics ( pdf format and Orcad source) as soon as we finish an internal round of checks in close collaboration with ACube Systems, as we would like to ensure that it can be considered finalized.
PCB Design Timeline
In the next few days the engineer taking care of the motherboard design will concentrate on the PCB, as the Electrical Schematics are now stable enough.
Thanks to the donations already received, the work on the PCB design ( done with Mentor pads ) can move forward and we estimate it could be completed by September 2020. The timing is somehow unfortunate, as August in Italy is a month where anybody is on holiday, nevertheless, we will do our best to avoid interruptions.The date of publication of the PCB design will depend on the results of the internal review process once we receive it, hopefully it will not take long. The design of the PCB fit inside the Slimbook Eclipse body.
Slimbook Eclipse body
We will export the Orca electrical schematic design even to EDIF format, to make easier for new volunteers to convert it to Kicad Format. To convert from EDIF to Kicad we have found edif2kicad tools https://github.com/svn2github/edif2kicad but we are sure you will find other tools or even you will be able to create a new one
In case you are able to convert our PCB Mentor Pads design to Kicad you are welcome to do it. If you have any issue when doing so, contact us and we will be happy to provide some help.
More time for Donations
After an internal discussion, we decided to postpone the deadline of the current Donation Campaign (Phase 1A) to the 30th of July 2020.
The plan is to deliver the PCB design with the end of Phase 1A, and right after that start Phase 1B “Fast SI bus simulations” on the 1st of August with a goal of €5000 (around $5600). As a consequence, there will be no interruption in the donation campaign, it will transparently fade from Phase 1A to Phase 1B seamlessly.
We kindly ask all followers, friends, and donors to concentrate their donations before the 30th July 2020, to ensure the end of Phase 1A without further delays.
We also kindly invite any of you that is capable of technically reviewing the hardware schematics to contact us, as that will help speed up the design process, as well as improving the overall quality of the final motherboard.
You can now donate from any country thanks to Stripe Payment Gateway
Potential donors from Countries such as Lebanon and China were unable or had serious difficulties to donate via Bank transfer and PayPal. The issue is now solved thanks to the addition of Stripe Gateway among the payment methods, they applied for us a discounted rate being a non-profit organization and they charge a commission on each donation of 1,2%+0,25€ inside the EU, and 2,9%+0,25€ outside the EU.
In the last post we mentioned that a new version of the electrical schematics is in the works. After a few rounds of internal reviews and changes, that new version is now finally ready to be publicly shared.
We publish a PDF version of the schematics exported from the ORCAD software that is being used by the designer. You may navigate through the document and investigate each component, but unluckily, due to the complexity of the document some PDF viewer may be unable to correctly visualize its content, if that happens just change the viewer you are using.
After receiving these new schematics, we already requested a new round of changes to the designer, in particular we would like to raise the motherboard power consumption footprint up to 90W in order to support higher ends MXM 3 video cards that consume a maximum of 55W. As an example, the AMD Radeon E9174 (GCN 4.0) has a TDP of 50W. The idea is to obtain a new version of electrical schematics before the end of May.
If you think a TDP of 90W is too much for a laptop, I can tell you that while I am typing this post on my laptop (a DELL XPS 15 9570, released in 2018) I have attached a power meter to the power brick and the power consumption bounces between 40W and 90W (dunno why is going up and down, I have only a browser turned on). I have also tried playing some 3D games on my DELL laptop, and the power consumption reaches picks of 110W, and sometimes even higher, up to the limit of the power brick, which is 130W.
The current version of the motherboard, as you can see in the electrical schematics at pages 3 and 4 of the PDF, there are two SO-DIMM DDR3L slots that can host DDR3L non-ECC (max 1866 MT/s, PC3-14900). We opted for non-ECC modules as they are way easier to find on the market and are less expensive than ECC ones, so it will be easy to have 32GB of RAM (2x16GB), up to a limit of 64GB of RAM, if you can find 32GB SO-DIMM modules.
PowerPC Notebook Block Diagram May 2020
In the block diagram and in the schematics you can find a GPIO Extender. This element will be extremely useful for debugging only the prototypes, and it will be removed in the production units.
Thanks to the project’s supporters (here a list of donors) and in spite of the current difficult times due to the coronavirus impact on everyone’s life, we reached 60% of the goal of the current step, making us confident that it will be possible to obtain the PCB design in a reasonable time frame.
Still, we still have to raise the remaining 40% (€7600 / $8400) to reach the current goal and we kindly ask any of you to continue supporting the donation campaign.
We also invite anyone that is capable of helping us in the technical review of the hardware schematics to contact us, as that would help us to speed up the design process as well as improve the overall quality of the final motherboard.
We finally would like to stress that the PowerProgressCommunity association behind this project has the long-term goal to lower the existing barriers for accessing and sharing technological knowledge. Being able to freely share a laptop motherboard schematics will dramatically improve the current situation where access to these kinds of data is difficult for who is working in the field, let’s imagine how difficult it is for who is just approaching the topic like students and hobbyists. In addition, by stressing on alternative, non-mainstream technologies, will help spread a culture of diversity, so much important in a flattening world where younger generations don’t even imagine that a different architecture from x86 or ARM exists.
Working on U-Boot
Our NXP T2080RDB devkit boots with AMD RadeonHD video cards using GNU/Linux PPC distros. So far we have successfully tested Debian 10, OpenSuse, VoidLinux, and Fienix. However, due to a lack of involved people expert on U-Boot, we are still lacking support for video output during the boot process, just before the linux kernel kicks in. Very recently, a couple of supporters experts in this field contacted us and joined the group. Thanks to their help, we are confident to solve the current situation, and even update U-Boot from the latest sources. Hopefully, we will be able to publish a new post with some good news in the not-so-distant future.
Working on Unreal Engine PPC64 (big endian) on VoidLinux
Thanks to JT from the VoidLinux group supporting PowerPC, we understood that the current problem of ABI we are facing while trying to build UnrealEngine 4.23 on our Debian SID PPC64 system, is that under debian PPC64 the clang compiler supports abiv1, the lld linker does not. As this was just not enough, JT told us that the Mesa library on big endian supports OpenGL 3.2, but unfortunately Unreal seems to require a more recent version of OpenGL.
This ABI build problem can only be solved either by obtaining somehow an abiv2 userland or by replacing the used linker (e.g. ld.bfd). It is currently difficult to say if UE actually requires it for anything. The old abi v1 is not very good anyway, as it has some awful quirks like function descriptors making library calls slower and making function pointers larger than 8 bytes, requiring a double indirection, whereas the new ABI v2 is much better by design and it works even on big endian systems even if it was designed in 2013 with little endian system in mind.
VoidLinux supports the new ABI v2, so our intention is to setup VoidLinux on our Power9 VM on OSU, replacing the current system based on Debian. Only by solving the ABI issues we will be able to finally build Unreal on a PPC64 big endian machine.
As the Power9 machine we are using on OSU relies on OpenStack, we now have to create a VoidLinux image for OpenStack.At the moment VoidLinux miss the cloud-init package that is required by OpenStack, so we started working on it by following the cloud-init documentations.
Running cloud-init integration test on VoidLinuxPPC64 running on QEMU on G5 Host
We will appreciate any help from you to support us on this important effort, particularly those of you with some knowledge on setting up cloud-init. An additional problem we are currently facing is that our member that is working on this task does not have any PPC64 hardware, and is relying solely on a slowly emulated VoidLinux PPC64 using QEMU version 4.2.0 on a X86 hardware.
VoidLinux PPC64 running on QEMU under X86 host
In search for additional systems supporting the ABI v2, we have investigated also Adelié Linux that recently released version 1.0RC1 in February 2020 for PPC64. Unfortunately, it does not have any cloud-init package built in.
Collaboration with Libre-SOC
We very very much like the works our friends at Libre-SOC are currently doing, and our two projects seems to have multiple point-of-contact, therefore we approached them in order to establish a good relationship aimed at supporting the common Open Hardware effort.
Libre-SOC is a Libre Hardware-Software project that aims to deliver a physical POWER compliant SOC that comes complete with a CPU, GPU, VPU, and DDR controller. All the software and hardware from the drivers down to the RTL and VLSI cells are libre-licensed. Libre-SOC is also providing the necessary drivers amongst which include Kazan (a Vulkan 3D driver) and the full on-board boot ROM firmware source, as well as a full zero-ROM cold-boot method for added trustability.
The intended market includes customers who desire acceleration in the embedded space without relying on ARM or 3rd party proprietary drivers that have been known to break in the past.
The first iteration of Libre-SOC targets a single-core at 180nm. Subsequent generations target SMP cores at a smaller node size, for typical use in SBC designs.
Interview to Roberto Innocenti about our project thanks to Charbax of ARMDevices
At the end of April, thanks to Charbax of Armdevices.net, there was an interview with Roberto Innocenti, the first creator of the idea of building a PowerPC laptop and co-founder of the PowerProgressCommunity. The interview was about the laptop project and other activities carried out by the not-for-profit association. Below you may find the topics touched in the interview. We think that the interview is interesting and contains many hints on the approach we are following, even if the spoken English of Roberto is sometimes difficult to follow. During the interview one person asked about the Manjaro distro for PowerPC, and after some check, it seems that such a distro lacks a PowerPC support.
https://www.youtube.com/watch?v=7kM2zqTEHa8
0.13 Self-introduction of Roberto Innocenti 0.45 Power Progress Community non-profit association 1.34 PowerPC notebook project 3.15 PowerPC architecture history 6.13 OpenPOWER Foundation 7.11 Why NXP CPU and not IBM 9.40 PowerPC on Linux 11.35 Linux distributions runnable on PowerPC 13:36 Future of embedded PowerPC 15:21 Cell processor interesting facts 18:27 Schematics and diagrams of PowerPC notebook project 19:31 NXP CPU specification 20:13 Upgradable AMD Radeon MXM GPU 21:02 Contribution of Power Progress Community and ACube Systems Srl 22:24 TDP, commercial usage and capabilities of NXP CPU 27:40 Supported kinds of storage 28:28 More about AMD Radeon MXM GPU 30:14 Old PowerPC MacBook performance compared to PowerPC notebook dev kit 31:41 Is Roberto Innocenti is better than Steve Jobs? 😉 32:25 People behind the PowerPC notebook project 34:07 PowerPC compared to ARM 37:35 More about OpenPOWER Foundation 40:43 Donation campaign details 43:52 Slimbook Eclipse chassis 46:50 What about small-desktop/NUC style device? 48:44 Estimated price of PowerPC notebook 51:55 Manufacturing of components 52:50 COVID-19 situation 56:23 Young people involved in PowerPC notebook project 57:11 Diversity of hardware designing, production and distribution 1:04:50 Transparency of NXP CPU 1:06:13 More about manufacturing of components and dependence on China 1:09:21 Ubuntu and Debian on PowerPC 1:11:03 Manjaro and other Linux distributions on PowerPC 1:12:30 Current phase of donation campaign 1:14:00 Potential successor of NXP CPU
Educational Activities
Under these complicated times due to the many restrictions imposed by coronavirus schools are closed, at least in Italy. As a consequence, students heavily rely on digital peripherals to keep up with lessons, and when trying to keep a social life with their friends. Not all families can afford a PC or a tablet for every child, and sometimes students are forced to study long documents on their mobile phones, when they have one. We are contributing to help the online education system run by Schools by providing recycled notebooks, and we named this project “Relive with Scratch” (“Rivivo con Scratch” in Italian).
At Schools with our project “Relive With Scratch”
Regenerated notebooks are those we have collected during 2019 and 2020 (all based on more or less old x86 cpus), and initially meant for the coding courses using the Scratch software and for learning math with Gcompris. To better suit the activities of the students, we opted for providing a Linux system equipped with ChromiumOS that has small footprints which is suitable for our old regenerated notebooks and moreover works well with the Google Gsuite which is heavily used in the classrooms, especially in the primary schools which is the main focus of our project.
We are near the 50% of the goal of the PCB Donation campaign, and we thank each of you that allowed reaching what many thought was impossible, “the key to what you do is in the heart of what you believe” (cit. by Mario Luis Rodriguez Cobos).
Like anybody else, most the volunteers, collaborators and donors involved in our project, we all have some very negative impact from the covid-19 that lead to a massive slow down of the donation rate.
On the other hand, many people are taking the opportunity of being in a lockdown at their homes to spend more time with their families, with their hobbies and to develop their aspirations. For many, it meant to spend more time thinking, developing and using Open Source Software, thanks to the freedom to run, copy, distribute, study, customize and improve their software. For others, it meant to have more time for developing Open-Source Hardware, Open Source Design of the mechanical aspects, and other important social, cultural, scientific activities, and eventually, to give them back for free to the community.
However, the financial impact of the situation meant to have less cash in our disposal, others are the current priorities in our lives.
After some internal discussions, we decided to postpone the deadline of the Donation Campaign to the 30th of June 2020, hoping that we all will be back soon on track, and meanwhile we will try to do our best to keep the project going.
Next round of the updated Block Diagram and Electrical Schematics
Since January, we have transferred to ACube Systems 8500 euros (roughly 9200 USD), so the design is in progress for a while now.
We have recently received from the engineers a newer revision of the Electrical Schematics that takes into account the recent developments, and it is currently under evaluation prior to its publication, most probably in a week or so.
Among a series of minor revisions, we have upgraded the Pericom PCIe Packet Switch from the previous model PI7C9X2G608GP to the more powerful PI7C9X2G612GP that offer 12 lanes instead of 8 lanes. This switch connects the motherboard to the Eclipse Expansion I/o Board via a PCIe, and allows to drive the Ethernet port based on the Realtek RTL8111F chip, the SD-card reader based on the Realtek RTS571x and to connect two USB3 ports.
The new revision of the schematics also brings an additional USB 2.0 Hub managed by the MicroChip USB2514 that will be connected to one of the T2080 USB 2.0 ports. To this USB Hub, we will connect the SK5126 Keyboard matrix and with an SD card reader controlled by the Realtek RTS571x of the Eclipse Expansion I/O Board and with the M2 WLAN and M2 LTE.
The Microchip Ethernet Transceiver KSZ9031 is still present from the previous revision, and it is connected via the RGMII0 port of the T2080 using an 8 pins header.
A MicroSD port will be connected directly to the T2080 eSDHC controller interface.
Below the new updated Block Diagram.
April 2020 Block Diagram of the Open Hardware PowerPC Notebook Motherboard
Overall, the above mentioned changes will decrease the number of components in the motherboard, will reduce the production costs, and will shorten the debug time.
Unreal Engine PowerPC64 Building progress
Recently, new collaborators joined the ongoing activities and are helping the laptop project and other side activities in our association. As an example, thanks to these recent collaborations we made progress in the compilation of the Unreal Engine on PowerPC 64 Big Endian, a great piece of software we are working on in order to have it running on our notebook.
Piece of script with download and build of clang
The first step is to get a clang toolchain needed by the Engine builder script. As a PowerPC toolchain is not available from Epic repository we have to build it by ourselves.
The main script that does all the job is build_linux_toolchain.sh located at the path Engine/Build/BatchFiles/Linux/Toolchain/DockerOnWindows/build_linux_toolchain.
Based on ppc64le branch this script downloads and builds gcc 9.2.0 through crosstool-ng and then do the same for clang. Our reference version is 8.0.1 from the official git repository https://github.com/llvm/llvm-project.git.
We have some problems during final toolchain copy, when gcc and clang libraries are moved to one common path (sysroot). After this action the binaries inside sysroot generate a segmentation fault.
As we stated in a previous article, we have already contracted ACube Systems and the PCB design work has started. This post is a first report about the work in progress in relation to the PCB design.
These days, the designer is analyzing the Pericom Switch with the direct support of Pericom personnel.
The Pericom PI7C9X2G608GP is a PCIE Gen 2 Switch that provides one upstream port supporting x4 or x1, and 4 or 5 downstream ports that support x1 operation. This chip has a Power Dissipation of 1.2 W.
In our mobo the PI7C9X2G608GP is essential as it allows to connect one 4x PCIe 2.0 controller of the NXP T2080 CPU with four 1x PCIe chips/cards: M.2 3G/LTE card , M.2 WiFi card, 1x Renesas USB3 Controller and 1x C-Media Audio chipset.
26th November 2019 – Picture of a part of the attenders at ViLug at our speaks
It’s the first time that Power Progress Community and Acube Systems present together the project. This presentation is very comprehensive.
We thanks very much LugVi for the perfect organization and excellent work of video editing done with Olive in Flathub and the good participation from very active and expert people in free software and competent in hardware, that come from all the area (Veneto). It was very exiting and a pleasure to answer to all the questions!
Video of our presentation held the 15th November at sfscons.it Free Software Conference in Bozen, South Tyrol – Italy – where we have talked about “The Butterfly Effect of an Open Hardware Notebook Motherboard”.
Professional photographers of Sfscon.it took pictures of us with our T2080 devkit in our table shared with Linux User Group of Bolzano. You can see running DIY wooden desktop case with the T2080rdb devkit and people interested that talk with us.
You can see our NXP T2080 Devkit and people interested talking with usPeople interested in our project with our brochure
Future Presentations:
Our project will be presented at Paris Open Source Summit ( France) on 10-11th December thanks to the association April that is devoted to promoting and protecting Free/Libre Software.