Frost
A computer that fits into an Altoids tin!
Created by
NotARoomba 🚀
Tier 1
23 views
1 follower
Timeline
NotARoomba 🚀
added to the journal ago
Ethernet, Bluetooth, and Why PHY (I'm sorry)
Alright so I'm gonna start with Wifi / Bluetooth as Ethernet scares me (why is PHY???). I had already started with this chip: AP6256, so I'm going to continue following the reccommended implementation and add in all of the passives around it.
BUT LOOKING THROUGH THE DATASHEET FURTHER I CAN USE AP6275PR3 AND IT HAS 3 ANTENNA SLOTS AND TRIPLE THE SPEED:

After finnicking a bit and importing stuff from the datasheets I finally got the Wifi + Bluetooth done!

Now it's time for me to learn all about ethernet and why phy (haha wifi (im sorry)).
Looking through the example it has C187932 so ima use that chip and wire it up like this:

I'll have to edit it a bit as I will be using different GPIOs so yea...
Apparently PHY means Physical (layer) so something that connects directly to a cable or port or smth so yea and I'm implementing Giga PHY so its gonna be FAST.
I started adding in the components:

and when I imported this from LCSC I went to sleep so I'll continue in the morning.

Looking through the ethernet connectors and watching a video from Phil's Lab, I learned about magnetics and how the schematic shows an image of an ethernet port without magnetics but I want to save money and space so I'm looking for an ethernet port that comes with magenetcis.
There are very few on LCSC but after searching for a bit I found one that is a Cat 5e (supports gigabit ethernet)
I was using another generic connector before but I liked how this one showed the polarity of the LEDs:

after wiring it up I added ESD Prot and finished the ethernet section!

NotARoomba 🚀
added to the journal ago
I HATE MIPI BECAUSE IT DOESNT EXIST (Camera and Display)
So after finding out the scam that is MIPI, I am going to try my hand at implementing the camera with the voltages found in the board. I could take the easy way out and use pre made camera modules from Arducam or I can just make my own and then if needed, make my own breakout board later for the different camera modules. I plan on using https://es.aliexpress.com/item/1005008622498846.html as it is cheap and extends all of the pins that I would need:

AFTER A DAY OF RESEARCHING I'm JUST GOING TO STICK TO THIS CAMERA. I am fully aware that this pinout is JUST FOR THIS CAMERA, so in the future I might make a breakout board with the pins of this to be able to connect different cameras.
Now that I have the camera done, it's time for the display:

I was looking through aliexpress for some nice displays and found this that would work perfectly:
https://es.aliexpress.com/item/1005007669151240.html
BUT THE PINOUT ISNT STANDARIZED SO I DECIDED TO WORK ON HDMI MEANWHILE:

AND WAIT I FOUDN THIS COOL DISPLAY:
https://es.aliexpress.com/item/1005006185077108.html
AND IT HAS A 4 LANE MIPI INTERFACE

even though the display says typical 3.8V, I'm gonna go with 3.3V as it's withing the max range and yea:

The IO voltage I did make sure to use 1.8V and also I added in some decoupling caps:

Now since I'm too scared to find standarization for a touch panel, I will just leave it at that.

NotARoomba 🚀
added to the journal ago
Revised eMMC + SD Card
So I revised the eMMC and it had one error that I was connecting the reset pin to the wrong referenace voltage (3.3v isntead of 1.8) so yea glad I caught that error. From there I went and started work on the microSD card:

(I love segregated voltages)
After that I started working on the camera module and found some cool MIPI cameras on aliexpress:

Wiring up the power section for the camera I had my reservations about the input voltage:

but apparently the default is 2.8v when it says 0.9???

that meant that I wouldn't need to use an external LDO:

Thinking about it a bit more, I'd prefer to have a FPC camera connector as I have traumas with using B2B connectors so I'm gonna look for a camera (that works with MIPI) and has a FPC.
Looking through some more MIPI cameras the datasheets look funny:

this doesn't make any sense with this either:

and definetely doesn't line up with the original datasheet:


apparently there isn't a standardization of the B2B interface as I wanted to check it out more but lemme see if I can find one for the FPC one
EVEN THE FPC ONE DOESN"T HAVE STANDARIZAION AAAAAAA:


Ill finish my search later tho
chakrish.ish
gave kudos to Frost ago
wow :0
NotARoomba 🚀
added to the journal ago
Revised power + final power stuff + eMMC
I went back and revised the power and found out that I had missed 1 decoupling capacitor (sleep deprivation) and aside from that the PMIC was perfect.
Moving on there was another page to the schematics that added on to other peripherals:

I planned on adding in an LCD (MIPI) so that it could be glued to the top of the altoids case somehow lol
Switching things up, I plan on adding in my own NVME drive so I'll be sticking with a cheap flash for some base files and then use my own NVME. The docs in the other guide specify a PCIE lane (dunno what that means but I'll research it) but looking at the other docs it has support for a PCIE x2 port thing:

So apparently PCIE is an interface standard for high speed data transfer and it can have multiple lanes/channels. NVME drives usually use 4 PCIE lanes but the rockchip only is capable of having a PCIE 3.1 (revision) with x2 mode (dual channel). Thankfully PCIE is backwards compatible and newer standards will work with older ones and it'll just be a bit slower (still fast enough for a mini SBC/PC).
Also looking at the other datasheet, I also found out that I can use VCCIO6 for the ethernet (maybe) as the only other thing is an I2C lane on the board:

(ethernet one)

(non ethernet one)
I also don't really need 2 cameras so I'll jsut use the one thats on the other side if I ever need one.
Looking further I found out that one camara uses CIF while the other uses MIPI:
Thankfully the MIPI one is the one that I'll be using so I don't have to change much:

I'll be using the 1x4 version as I only really would need one camera that would be powerful.
Theres also MIPI DSI that I'll be using for the display:


I'll also be taking a mic from the mic array as the other board doesn't have them:

I went back for the DDR4 and it was at an insane markup so I also looked at emmc chips as that chip that I had originally selected was not supported apparently but the chart was an old revision so I went down a rabbit hole on the internet looking for the updated version (RKeMMCSupportList pdf Ver1.87) until I stumbled upon a cool design on OSHWLab that was similarish to what I wanted to make:

Now you can either download the document from the official rockchip docs but my account is pending admin approval and I have tried doenloading it from here: https://download.csdn.net/download/qq_36160497/92122168
but to no avail, I'll just work on the rest of it while that gets fixed lol.
Back to the schematic, I added in these sections:

and continuing to add in the flash power section, ill be using emmc so that will be 1.8 v and I'll have to configure the schematic for that as stated here:

After that I started up on USB 3.0:

and then dared to touch the RAM:

until I decided not to and moved onto EMMC and finished wiring it up:

NotARoomba 🚀
added to the journal ago
ESD Protection + Power and PMIC
Starting ESD protection, I had to research what this funny little symbol meant:

Apparently, t's a common-mode choke that helps with EMI in differential pairs:

I also added in the USB3.2 Mux to switch between either side of the USB-C cable depending on it's orientation:

After that I wired up the USB-C PD (didn't know that PD chips could be that small):

Researching a bit more, I was looking into the battery (needs a high capacity) and I found this:
https://es.aliexpress.com/item/1005004816868993.html
Before I was using battery connectors with a 2.5mm pitch but now I'll be using one that's Jst PH 2.0mm to support that battery
Then I imported a battery connector from LCSC and then finished up the battery charging IC:

After a while I added in the buck converters at the bottom for 3.3v and 5v:


I learned how to select inductors and I'm finally learning how the sizes and tolerances and classes for resistors and capacitors and inductors are selected (pattern recognition).
I added in some more power stuff and filters:

And then I started on the actual power monster thing (RK809-5):

power managerment lol

and then started work on the other stuff.
After a while and pulling an all nighter, I finally finished the power management and I'm going to go to sleep:

Tomorrow I'll double check it before moving on
Keyaan 🚀
gave kudos to Frost ago
Awesome!
NotARoomba 🚀
added to the journal ago
Start of Basic Implementation + More Features
So after melting my brain for the past 2 days, in that repo there are a few example schematics depending on the implementation that you want, in total there were 3, one for an AIoT implementation, another for a tablet, and finally another one for NVR (?) anyways, looking through the schematics the one that closely matched my implementation would be the tablet one as it features USB-C PD and also includes support for a 1 or 2 cell battery (woo).


Although there are some features that aren't present on the tablet design, I'll be mixing and matching to add in ethernet and other cool peripherals (like an actual computer lol)

Looking through the datasheet, I want to add in my own WiFi module isntead of relying on an external one (to use some antennas I pulled off of a router) so I'll be picking one from this table in that datasheet:

Since I'm extra I'll be choosing the chip that has the most stuff, eg:


On LCSC the 255 one is discontinued si Ill be using the 256 one,
I'll also be adding an SD card (bc why not):

I might connect a display so I was researching the different types of connections and interfaces that exist and yea MIPI is awesome I love stantarization.
I then started on the USB-C stuff and working my way through the power section


I'm learning how to actually specify the values and classes and tolerances of components as it's good practice for the future.
NotARoomba 🚀
added to the journal ago
Start Implementing + Power
I started off by creating hierarchical sheets and then semi-organizing it:

Defining some more stuff, I plan on using USB-C as much as possible but I might also add in some USB 3.0 ports maybe for peripherals. Originally this was going to be to host a Minecraft server in an Altoids tin because I thought it would be funny but now I'm going to add in as much as I can to make it a literal portable computer in an Altoids tin so that it can RUN Minecraft (lmao). I also might include some buttons on the side or a screen inside the case for maximum portability but that's stretching it a bit.
Then looking through a datasheet I found that there's an example implementation so I will go through this one by one and see the minimum that I need to add.

I finished the clock:

and forgot about storage so I'm going to add in this 32GB of eMMC

It was actually "relatively" cheap compared to other ones and it's also supported by rockchip

Looking through the datasheet/hardware requirements it has some pretty strict power up requirements so I found this cool reddit post of someone using the same processor as my and they had a RK809-5 which basically is a chip that does all of that startup/power management for you.
I added it into my KiCad project and then I'ma look into the datasheet for more info:

I am debating on whether this board should be battery powered or have the option to. I'm holding off on it for now as I'll first add in all of the power components and then gauge how much I'll need. Another cool idea I had would be to have this touchpad on top that runs a simple NN so that you can type without a keyboard by literally drawing the characters. Also would be nice to have a switch to toggle between keyboard and mouse mode or triple tap to do that, but that's for later.
Looking through the schematic again, it says I need 2 battery cells and that's a bit much so I'm just going to stick with regular USB-C PD.
I'll be continuing to look at the schematics and implement the power stuff next before I do anything else.
NotARoomba 🚀
added to the journal ago
Planning
I like making silly things, I also like Altoids, and what would be sillier than having a RK3588S in your pocket in an Altoids tin (with the Altoids removed and consumed beforehand)! I was looking for some other Rockchip boards and found this (https://github.com/StonedEdge/Retro-Lite-CM5) that looked pretty cool
Heres a list of features that I want that may or may not be viable:
- Ethernet
- HDMI
- WIFI/Bluetooth
- 8 GB of RAM :p
- USB-C charging / peripherals
- Possible definite need for some kind of thermal management / cooling (mini fan perhaps?)
LCSC Parts:
C7422743
C29073172 XD
Intex AX210 OR custom WIFI/BT setup with the NRF (might do that if there is space)
In researching the m2 connectors I found out that they were called edgeboard connectors:

C590866 (wireless use a and e)
After looking a bit more and due to the cost, I will be using the RK3568 because yea its half the price and around the same clock speed
I'll be sticking with the 8G of ram although if the board gets too expensive then I'll swap it out
I also found this github repo that might help out (https://github.com/hqnicolas/RK3568-hardware-design)

This is going to drive me insane and will be the first time I've ever had to create multiple KiCad sheets :D
NotARoomba 🚀
started Frost ago