These pages will document my work with the Pi-Top Ceed.
Background
My particular Ceed contains a Raspberry Pi B. I have also installed the Pi-Top Speaker Gen 2 and a Pi-Top Proto PCB. I have initially installed Polaris, which is Raspbian Stretch. .
A very useful article on the pin-outs of the Pi-Top Proto is https://www.raspberrypi.org/forums/viewtopic.php?f=45&t=217675&sid=13e0039d0fcb6ef1773569d891222100 which may someday disappear. You have to match the ascii diagram to the image of the proto pcb before it makes any sense.
The below diagram is taken directly from that article. All credit goes to the original author
All number labels are pin numbers of the 40-way GPIO header
.-. .-------------------------------------. .-.
| | |(O) (O)| | |
| | | 11 11 2222 3 334 | | |
| | | 802 68 2468 2 680 | | |
| |-. | .--------------------. | .-| |
| | |--- | GPIO |55-ooo-oo-oooo-o-ooo| | ---| | |
| | |--- | 40-way |3ooo-ooooooo-oooooo-| | ---| | |
| |-' | `--------------------' | `-| |
.-----| | | 357 1111122 223333 | | |-----.
PWR | o o | | 5V | 1357913 791357 | 5V | | o o | PWR
3V3P | o o | | 3V3 | .-. .-. | 3V3 | | o o | 3V3P
0V | o o | | SPDIF | SPDIF |O| NC GPIO2 |O| 3 | SPDIF | | o o | 0V
3 | o o | | 5 | SD 5 |O| GPIO3 GPIO4 |O| 7 SC | 5 | | o o | 3
7 | o o | | 8 | TX 8 |O| GPIO14 GPIO15 |O| 10 RX | 8 | | o o | 7
10 | o o | | 11 | 11 |O| GPIO17 GPIO18 |O| 12 | 11 | | o o | 10
12 | o o | | 13 | 13 |O| GPIO27 GPIO22 |O| 15 | 13 | | o o | 12
15 | o o | | 16 | 16 |O| GPIO23 GPIO24 |O| 18 | 16 | | o o | 15
18 | o o | | 19 | DO 19 |O| GPIO10 GPIO9 |O| 21 DI | 19 | | o o | 18
21 | o o | | 22 | 22 |O| GPIO25 GPIO11 |O| 23 CK | 22 | | o o | 21
23 | o o | | 24 | CE 24 |O| GPIO8 GPIO7 |O| 26 | 24 | | o o | 23
26 | o o | | 27 | 27 |O| ID_SD ID_SC |O| 28 | 27 | | o o | 26
28 | o o | | 29 | 29 |O| GPIO5 GPIO6 |O| 31 | 29 | | o o | 28
31 | o o | | 32 | 32 |O| GPIO12 GPIO13 |O| 33 | 32 | | o o | 31
33 | o o | | 35 | 35 |O| GPIO19 GPIO16 |O| 36 | 35 | | o o | 33
36 | o o | | 37 | 37 |O| GPIO26 GPIO20 |O| 38 | 37 | | o o | 36
38 | o o | | 39 | 40 |O| GPIO21 NC |O| NC | 39 | | o o | 38
`-----| | | `-' `-' | | |-----'
| | |(O) (O)| | |
`-' `-------------------------------------' `-'
Pins on Pads on Pads on Socket
Left Left Right on Right
One of the most important benefits of using the prototype card is that it gives you an unfettered GPIO connector so you can attach a longer GPIO cable and work with a breadboard outside the case. Of course you can use a short GPIO cable too but if you don't have a lot of room left inside the case it is nicer to be able to sit the breadboard next to the unit in your work area.
2020-01-09 I installed the newest Pi-Top OS (Sirius) on the Ceed but the screen resolution is much lower than it was under Polaris and doesn't seem to be any way under the Pi-Top environment to fix it. I am investigating.
2020-01-10 I have installed generic Raspbian Buster on the Pi-Top Ceed and so far it's going well. I expect the Ceed to be less problematic since there is no battery management to be concerned about. I am very pleased to see that Raspbian Buster simply works out of the box. The only additional step if you own a Pi-Top speaker is to install the package "pt-speaker" which also installs without issue.
Note: You will want to use at least a 16 GB micro sd card for Rasbian Buster with the desktop. If using an 8 GB micro sd you end uo with only about 700 megabytes free. That is hardly useful.
2020-01-11 After 24-hours of using Buster I noticed that the audio was being overdriven, sound-quality was horrendous.At first I thought the speaker had been damaged but my gut feeling told me something else was afoot. Nothing that I could do seemed to fix the problem so I wrote a new image of Pi-Top OS (Polaris) onto an 16GB micro sd and then removed the bloatware Dashboard, Ceed-Universe, etc.
I tested the audio and it was normal again, so there is still some stupid issue with Buster and audio using the Pi-Top speaker (v2).
Stripping the bloated desktop/dashboard
Pi-Top has ended Ceed-Universe anyway so all this junk is superflous.
I used apt to remove the following packages: pt-os-dashboard, pt-os-dashboard-utils, ceed-universe. You can purge but don't do an autoremove otherwise it will also remove much of what you wanted to keep (pi-top customized configuration for Raspbian.)
Then I used raspi-config to change the system to boot into CLI, with a normal login prompt. Once I rebooted cleanly I ran raspi-config and then changed it to boot back into X but requiring a login to make it more secure.
I don't really understand what is going on with the audio and Buster at this point because it did work other than the distortion. but I don't mind it now that all the Desktop bloatware is gone.
I kept the Polaris splash screen and I still get the splash audio on boot which I happen to like. I get the Pi-Top graphical logo and Polaris logo as well which suits me.
I realize that Stretch is antiquated but I will be using this for development and it should be sufficient for what I plan to do with it.
So no Buster at the moment, but that is all right.
2020-01-13 Most of the previous commentary about removing the dashboard is wrong; Autoremove keeps nuking critical packages so I have given up on removing the software and merely do this instead systemctl disable pt-os-dashboard so far this seems to be the best way to nuke the lame Dashboard and achieve a minimal desktop that still has the enhancements that are required.
Screen Brightness
The Pi-Top Ceed has nothing under the system software (LXDE/Polaris) to adjust the screen brightness and the default is too dim for my taste. Fortunately you can get brightness.c from https://github.com/rricharz/pi-top-install it is easy to compile. gcc -o brightness brightness.c -lwiringPi that is simple.
pi@pi-top:~ $ gcc -o brightness brightness.c -lwiringPi
pi@pi-top:~ $ ./brightness
brightness version 1.1
Sending: 0xFF
Receiving: 0x44
Current brightness = 8
Requested brightness = 9
Requested off = 0
Sending: 0x48
Receiving: 0xCC
New brightness = 9
pi@pi-top:~ $
I really like using the Ceed as I can hang them vertically with access to the GPIO outside the case on a breadboard.
I use a wireless keyboard on each unit and it is cumbersom to have 2 keyboards and 2 mice nearby. I really hate that.