Show HN: I built an open-source Linux-capable single-board computer with DDR3(github.com)
github.com
Show HN: I built an open-source Linux-capable single-board computer with DDR3
https://github.com/cheyao/icepi-sbc
8 comments
It's quite an accomplishment for an individual. You might find the Pine A64 interesting. I got 6 of the 512MB models for $15 each. [1]
I plan on running Kubesolo on them since 1.0 was recently released.[2]
[1] https://pine64.org/devices/pine_a64/
[2] https://github.com/portainer/kubesolo
I plan on running Kubesolo on them since 1.0 was recently released.[2]
[1] https://pine64.org/devices/pine_a64/
[2] https://github.com/portainer/kubesolo
Do note that you can't cluster those 6 A64's as kubesolo runs... solo. As in: No clustering capabilities.
If you do want a controller/node setup you're better off deploying something lightweight like k0s, k3s or sidero's talos (since the latter also works perfectly fine on clusters based on pi 4 and above)
If you do want a controller/node setup you're better off deploying something lightweight like k0s, k3s or sidero's talos (since the latter also works perfectly fine on clusters based on pi 4 and above)
Very cool!
A few questions:
How was the 696 MHz DDR3 RAM speed determined?
Also, how is the system initialized at startup? Is there boot/startup code, does that exist in a flash chip (or some other ROM or EEPROM or flash type chip) on the system, and can the boot code be inspected/customized/overwritten by the end-user? How does the system boot?
Anyway, looks very cool!
A few questions:
How was the 696 MHz DDR3 RAM speed determined?
Also, how is the system initialized at startup? Is there boot/startup code, does that exist in a flash chip (or some other ROM or EEPROM or flash type chip) on the system, and can the boot code be inspected/customized/overwritten by the end-user? How does the system boot?
Anyway, looks very cool!
Thanks! I used the orange pi pc fel tester [1] and gradually lowered the clock speed until it became stable. When I got to 696 MHz the test ran for more than 3 hours without problems.
The H3 CPU has a small bootloader inside, that enumerated the SD card and eMMC to look for a user-made bootloader. IIRC it looks for some file inside of the file system, and loads it to 0x70000. Thus you can customize it if you have enough time :)
[1] https://github.com/ssvb/lima-memtester/releases/tag/20151207...
The H3 CPU has a small bootloader inside, that enumerated the SD card and eMMC to look for a user-made bootloader. IIRC it looks for some file inside of the file system, and loads it to 0x70000. Thus you can customize it if you have enough time :)
[1] https://github.com/ssvb/lima-memtester/releases/tag/20151207...
Interesting, and very cool!
Cool, i wish i had the skills. I'm planning to learn PCB design to build a low power low cost PCB based in the SG2002/LicheeRV Nano design with a MAX17043 battery gauge, gpio buttons and a battery controller like TP4057.
Let me know if you are interested ;-)
Let me know if you are interested ;-)
That's cool as a project, but I don't really see the point. Everything's hungry for memory these days. DDR3 is a relative bargain. Why not put a socket on there so you can add a cheap 8GiB laptop DIMM?
Hey! Not everything needs to have a point. (Or else why would there be 20 AI models competing) I did this mostly for the fun and challenges, because why not! :-P
Why? I was bored during my 2-week high-school vacation and wanted to improve my skills, while adding a bit to the open-source community :P
These were the specs I ended up with: - H3 SoC - Quad-Core Cortex-A7 ARM CPU @ 1.3GHz - Mali400 MP2 GPU @ 600MHz - 512MiB of DDR3 RAM (Can be upgraded to 1GiB) - WiFi, Bluetooth & Ethernet PHY - HDMI display port - 1080p resolution - 5x USB Slots: 2x USB-A, 1x USB-C Host, 1x USB-C Host & OTG, 1x USB-C PD for power (Negotiating up to 25W. No power socket, yay!) - 32 GB of eMMC 5.1 storage (Optional) - 3.5mm audio jack - SD Card slot - Lots of GPIO
I've picked the H3 CPU mainly for its low cost yet powerful capabilities, and it's pretty well supported by the Linux kernel. Plus, I couldn't find any open-source designs with this chip, so I decided to contribute a bit and fill the gap.
A 4-layer PCB was used for its lower price and to make the project more challenging, but if these boards are to be mass-produced, I'd bump it up to 6 and use a solid ground plane as the bottom layer's reference plane. The DDR3 and CPU fanout was truly a challenge in a 4-layer board.
The PCB was designed in KiCAD and open-source on the Github repo with all the custom symbols and footprints (https://github.com/cheyao/icepi-sbc). You can also check it out online with kicanvas: https://kicanvas.org/?github=https%3A%2F%2Fgithub.com%2Fchey...
At large quantities, the price can probably reach less than 20$! (exc. taxes, tariffs and other costs)
It has been a wild journey, even making me learn how to use crypto as I needed to pay someone to download some "confidential" files from a baidu drive...
Read about more details on Github! Everything is open-source under the Solderpad license, aka do what you want: sell it, build it, modify it! :-)