当前位置: 首页 > news >正文

OrangePi Kunpeng Pro开发板初体验——家庭小型服务器

引言

        在开源硬件的浪潮中,开发板作为创新的基石,正吸引着全球开发者的目光。它们不仅为技术爱好者提供了实验的平台,更为专业开发者带来了实现复杂项目的可能性。本文将深入剖析OrangePi Kunpeng Pro开发板,从开箱到实际应用,全面评估其性能与实用性。

开箱体验

        当OrangePi Kunpeng Pro套装首次映入眼帘,其精致的包装设计和周到的配件选择便令人印象深刻。套装内含的主板、电源适配器及数据线、高效散热片以及一张32GB的高速存储卡,共同构成了一个功能完备的开发环境,为创意实现提供了坚实的硬件基础。

硬件概览

        OrangePi Kunpeng Pro的主板设计紧凑而不失专业,搭载了一颗性能强劲的4核64位Arm处理器,搭配8GB或16GB的LPDDR4X内存,足以应对各种中小型项目的需求。

        存储方面,除了板载的32MB SPI Flash,还提供了Micro SD卡插槽、eMMC插座以及M.2 M-Key接口,支持2280规格的NVMe SSD或SATA SSD,为数据存储提供了多样化的选择。

        网络连接方面,板载的RTL8211F PHY芯片支持10/100/1000Mbps以太网,而Wi-Fi+蓝牙模块则提供了2.4G和5G双频Wi-Fi及BT4.2,确保了无线连接的高速与稳定。此外,2个USB3.0 Host接口和1个Type-C接口(仅支持USB3.0)提供了丰富的外设扩展能力。

        显示与音频输出同样不落下风,2个HDMI接口和1个MIPI DSI 2 Lane接口满足了多屏显示需求,而1个3.5mm耳机孔输出则为音频爱好者提供了高品质的音频体验。40 pin的扩展口更是为开发者提供了UART、I2C、SPI、PWM和GPIO等丰富的接口选项。

安装与使用

OrangePi Kunpeng Pro的安装过程异常简便。预装的openEuler 22.03操作系统让初次启动变得轻松愉快。仅需将电源接入Type-C接口、HDMI线接入HDMI0接口,并将有线鼠标和键盘插入USB-A接口,拨动拨码开关至最右侧,即可一键启动,迅速进入系统桌面。

通过设置界面,连接上wifi网络,打开终端界面,输入命令ifconfig wlan0,记录下OrangePi Kunpeng Pro的wlan0网口IP地址。

实际应用案例——智能家居开源系统Homeassistant

将OrangePi Kunpeng Pro作为家庭小型服务器的想法,让我在家中就能享受到智能家居带来的便利。通过系统界面配置好无线网络或者有线网络,获取到ip地址后,在路由器上做一个端口转发将22端口转发出去,之后就可以抛弃桌面系统,在任何地方通过SSH远程连接至开发板,实现对家中智能设备的远程控制。

下图是在公司通过SSH成功远程连接至家里的OrangePi Kunpeng Pro开发板。

Docker安装

为了方便快速的部署Homeassistant,需要在OrangePi Kunpeng Pro开发板上安装docker服务。 在root用户下执行yum install docker -y或在非root用户下执行sudo yum install docker -y,等待安装完成,通过docker -v命令查看版本号,确认docker服务安装成功。

Homeassistant简介及安装

HomeAssistant,简称HA,是一款基于Python开发的智能家居开源系统。它支持市面上众多品牌的智能家居设备,能够轻松实现设备的语音控制和自动化管理。通过Docker容器化部署,安装过程变得异常简单:

docker run -d \

--name homeassistant \

--restart=always \

--privileged \

--hostname homeassistant \

-e TZ=Asia/Shanghai \

-v /hdd/opt/homeassistant:/config \

-v /hdd/downloads:/media \

--net=host \

ghcr.io/home-assistant/home-assistant:stable

参数解释

  • docker run:这是Docker运行容器的基本命令。

  • -d:表示以守护进程模式运行容器。

  • --name homeassistant:指定容器的名称为homeassistant

  • --restart=always:设置容器在退出时总是尝试重启。

  • --privileged:以特权模式运行容器,这通常用于需要访问宿主机硬件或需要更高权限的容器。

  • --hostname homeassistant:设置容器的主机名为homeassistant

  • -e TZ=Asia/Shanghai:设置容器的时区为上海时区。

  • -v /hdd/opt/homeassistant:/config:将宿主机的/hdd/opt/homeassistant目录挂载到容器的/config目录,用于存储Home Assistant的配置文件。

  • -v /hdd/downloads:/media:将宿主机的/hdd/downloads目录挂载到容器的/media目录,可能用于存储下载的文件或其他媒体内容。

  • --net=host:将容器的网络设置为宿主机的网络,这样容器内的应用程序就可以直接使用宿主机的网络接口。

  • ghcr.io/home-assistant/home-assistant:stable:指定要运行的Home Assistant镜像的来源和版本号。这里是从GitHub Container Registry (ghcr.io) 拉取的官方Home Assistant镜像,标签为stable,表示稳定版本。

输入命令docker ps,显示一条正在运行的homeassistant容器,那么恭喜你,homeassistant安装成功。

应用界面

接下来在浏览器中输入地址“http://localhost:8123”,不出意外的话,应该可以看到如下界面,尽情去创建自己的智能家居吧。

实际应用案例——开源种子下载工具qbittorrent

qbittorrent简介及安装

qbittorrent作为一款开源的BitTorrent下载客户端,以其强大的功能和轻巧的体积,为用户提供了一个无广告、无捆绑的下载体验。无论是4k高清电影、大型游戏还是系统镜像,都能通过它轻松下载。

docker run -d \

--name=qbittorrent \

-e PUID=0 \

-e PGID=0 \

-e TZ=Asia/Shanghai \

-e WEBUI_PORT=8080 \

--net=host \

--hostname qbittorrent \

-v /ssd/dockerData/qbittorrent/config:/config \

-v /ssd/downloads:/downloads \

--restart always \

ghcr.io/linuxserver/qbittorrent:4.6.0

参数解释

  • -d:表示以守护进程模式运行容器。

  • --name=qbittorrent:指定容器的名称为qbittorrent

  • -e PUID=0-e PGID=0:设置环境变量PUIDPGID,分别代表用户ID和组ID。这里设置为0,通常意味着使用root用户。

  • -e TZ=Asia/Shanghai:设置容器的时区为上海时区。

  • -e WEBUI_PORT=8080:设置qBittorrent Web界面的端口为8080。

  • --net=host:将容器的网络设置为宿主机的网络,这样容器内的应用程序就可以直接使用宿主机的网络接口。

  • --hostname qbittorrent:设置容器的主机名为qbittorrent

  • -v /ssd/dockerData/qbittorrent/config:/config:将宿主机的/ssd/dockerData/qbittorrent/config目录挂载到容器的/config目录,用于存储qBittorrent的配置文件。

  • -v /ssd/downloads:/downloads:将宿主机的/ssd/downloads目录挂载到容器的/downloads目录,用于存储下载的文件。

  • --restart always:设置容器在退出时总是尝试重启。

  • ghcr.io/linuxserver/qbittorrent:4.6.0:指定要运行的qBittorrent镜像的来源和版本号。这里是从GitHub Container Registry (ghcr.io) 拉取的LinuxServer维护的qBittorrent镜像,版本为4.6.0。

输入命令docker ps,同样会显示一条正在运行的qbittorrent容器,那么恭喜你,qbittorrent安装成功。

应用界面

接下来在浏览器中输入地址“http://localhost:8080”,显示登录界面,默认用户名和密码为admin/adminadmin,下图为下载win11镜像测试。

试用感受

经过对OrangePi Kunpeng Pro的初体验,我对OrangePi Kunpeng Pro的整体表现感到非常满意。它不仅性能卓越,而且操作简便,无论是对于初学者还是专业开发者,都是一个理想的选择。尽管在功耗方面略高于同类产品,但这并不影响它成为我心目中的理想开发板。OrangePi Kunpeng Pro以其出色的性能和实用性,无疑值得推荐给每一位寻求高性能开发板的开发者。

相关文章:

OrangePi Kunpeng Pro开发板初体验——家庭小型服务器

引言 在开源硬件的浪潮中,开发板作为创新的基石,正吸引着全球开发者的目光。它们不仅为技术爱好者提供了实验的平台,更为专业开发者带来了实现复杂项目的可能性。本文将深入剖析OrangePi Kunpeng Pro开发板,从开箱到实际应用&…...

AquaCrop农业水资源管理,模拟作物生长过程中水分的需求与消耗

AquaCrop是由世界粮食及农业组织(FAO)开发的一个先进模型,旨在研究和优化农作物的水分生产效率。这个模型在全球范围内被广泛应用于农业水管理,特别是在制定农作物灌溉计划和应对水资源限制方面显示出其强大的实用性。AquaCrop 不…...

爬虫之re数据清洗

文章目录 一、正则【Regular】二、重要语法1、获取内容: 左边(.*?)右边2、替换数据: re.sub(源数据|源数据, 目标数据, 字符串) 一、正则【Regular】 概念: 根据程序员的指示, 从<字符串>中提取数据 结果: 列表 使用频率: 正则跟xpath相比, 正则是弟弟 二、重要语法 …...

惯性动作捕捉与数字人实时交互/运营套装,对高校元宇宙实训室有何作用?

惯性动作捕捉与数字人实时交互/运营套装&#xff0c;可以打破时空限制&#xff0c;通过动捕设备写实数字人软件系统动捕设备系统定制化数字人短视频渲染平台&#xff0c;重塑课程教学方式&#xff0c;开展元宇宙沉浸式体验教学活动和参观交流活动。 写实数字人软件系统内置丰富…...

Leecode---栈---每日温度 / 最小栈及栈和队列的相互实现

栈&#xff1a;先入后出&#xff1b;队列&#xff1a;先入先出 一、每日温度 Leecode—739题目&#xff1a; 给定一个整数数组 temperatures &#xff0c;表示每天的温度&#xff0c;返回一个数组 answer &#xff0c;其中 answer[i] 是指对于第 i 天&#xff0c;下一个更高温…...

Linux系统编程——动静态库

目录 一&#xff0c;关于动静态库 1.1 什么是库&#xff1f; 1.2 认识动静态库 1.3 动静态库特征 二&#xff0c;静态库 2.1 制作静态库 2.2 使用静态库 三&#xff0c;动态库 3.1 制作动态库 3.2 使用动态库一些问题 3.3 正确使用动态库三种方法 3.3.1 方法一&…...

json formatter哪个好用

在众多的JSON Formatter工具中&#xff0c;确实有几个相当出色的选择&#xff0c;它们各自拥有独特的特点和优势&#xff0c;可以满足不同用户群体的需求。下面就来为大家推荐几个好用的JSONFormatter工具&#xff1a; 1. JSON Formatter & Validator&#xff1a;这款工具…...

react的hooks是什么意思

React Hooks 是 React 16.8 版本引入的一个新特性&#xff0c;它允许你在不编写类组件的情况下使用状态和其他React特性。Hooks使得函数组件变得更加灵活和强大&#xff0c;因为你可以在其中添加状态逻辑、生命周期方法以及其他React功能。 在传统的React类组件中&#xff0c;…...

AVFrame相关接口(函数)

分配和释放 分配 AVFrame AVFrame *av_frame_alloc(void); 分配一个新的 AVFrame 并返回一个指向它的指针。返回的 AVFrame 需要手动释放。 释放 AVFrame void av_frame_free(AVFrame **frame); 释放由 av_frame_alloc 分配的 AVFrame。这个函数会释放帧的数据并将指针设为 …...

低代码与人工智能的深度融合:行业应用的广泛前景

引言 在当今快速变化的数字化时代&#xff0c;企业面临着越来越多的挑战和机遇。低代码平台和人工智能技术的兴起&#xff0c;为企业提供了新的解决方案&#xff0c;加速了应用开发和智能化转型的步伐。 低代码平台的基本概念及发展背景 低代码平台是一种软件开发方法&#x…...

嵌入式测试基础知识

1.白盒测试也称为结构测试&#xff0c;主要用于检测软件编码过程中的错误。 2.黑盒测试又称为功能测试&#xff0c;主要检测软件的每一个功能是否能够正常使用。 3.软件测试流程&#xff1a;根据测试需求编写测试计划、方案&#xff0c;测试用例&#xff0c;做测试分析&#…...

基于网关的ip频繁访问web限制

一、前言 外部ip对某一个web进行频繁访问&#xff0c;有可能是对web进行攻击&#xff0c;现在提供一种基于网关的ip频繁访问web限制策略&#xff0c;犹如带刀侍卫&#xff0c;审查异常身份人员。如发现异常或者暴力闯关者&#xff0c;即可进行识别管制。 二、基于网关的ip频繁访…...

GSM信令流程(附着、去附着、PDP激活、修改流程)

1、联合附着流程 附着包括身份认证、鉴权等 2、去附着流程 用户发起去附着 SGSN发起去附着 HLR发起去附着 GSSN使用S4发起去附着 3、Activation Procedures(PDP激活流程) 4、PDP更新或修改流程 5、Deactivate PDP Context 6、RAU(Routeing Area Update)流程 7、鉴权加…...

OAK相机如何将 YOLOv10 模型转换成 blob 格式?

编辑&#xff1a;OAK中国 首发&#xff1a;oakchina.cn 喜欢的话&#xff0c;请多多&#x1f44d;⭐️✍ 内容可能会不定期更新&#xff0c;官网内容都是最新的&#xff0c;请查看首发地址链接。 Hello&#xff0c;大家好&#xff0c;这里是OAK中国&#xff0c;我是Ashely。 专…...

【Python】解决Python报错:AttributeError: ‘class‘ object has no attribute ‘xxx‘

&#x1f9d1; 博主简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…...

反思 GTC 和 OFC 2024:没有一刀切的方法,但上市时间是关键!

在GTC 2024期间&#xff0c;英伟达宣布了最新的Blackwell B200张量核心GPU&#xff0c;旨在为万亿参数的AI大型语言模型提供支持。Blackwell B200需要先进的800Gbps网络&#xff0c;完全符合在AI工作负载的AI网络报告中概述的预测。随着人工智能工作负载的流量预计每两年增长10…...

速盾:bgp 静态 cdn

BGP&#xff08;边界网关协议&#xff09;是一种用于在互联网中交换路由信息的协议&#xff0c;它允许不同自治系统&#xff08;AS&#xff09;之间的路由器进行通信和交换路由信息。CDN&#xff08;内容分发网络&#xff09;是一种通过将内容分散放置在全球各地的服务器上&…...

union all 以及标量子查询执行计划

SELECT 1, (SELECT ID1 FROM TE WHERE IDA.ID2) FROM .TA A WHERE COLA X UNION ALL SELECT 1, (SELECT ID2 FROM TD WHERE IDA.ID1) FROM .TB A WHERE COLA X UNION ALL SELECT 1,COL2 AS PARENT_UUID FROM .TC a WHERE COLA X 三个union all 看着像是5个table joi…...

上位机图像处理和嵌入式模块部署(f103 mcu和Qt上位机联动)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 之前我们写过一篇文章&#xff0c;上面说的是如何利用串口对mcu进行控制&#xff0c;即如果利用串口实现mcu led灯的点亮和熄灭。输入1的时候&…...

TiKV学习5:TiDB SQL执行流程

目录 1. DML语句读流程概要 2. DML语句写流程概要 3. DDL 流程概要 4. SQL的Parse和Compile 5. 读取的执行 6. 写入的执行 7. DDL的执行 8. 小结 1. DML语句读流程概要 TiDB Server接收sql并处理&#xff0c;TiKV负责持久化数据&#xff0c;PD提供TSO和Region的数据字典…...

Linux内核链表安全遍历:list_for_each_entry_safe 深度解析

1. 为什么需要安全的链表遍历 在Linux内核开发中&#xff0c;链表是最基础也是最常用的数据结构之一。内核开发者经常需要遍历链表来访问或操作其中的节点。但有一个场景特别棘手&#xff1a;当你需要在遍历过程中删除当前节点时&#xff0c;普通的遍历方法会导致链表断裂甚至系…...

别再只盯着find提权了!盘点Linux下5种更隐蔽的权限维持姿势与排查手册

超越find提权&#xff1a;Linux系统下5种高阶权限维持技术与深度排查指南 当攻击者成功获取Linux系统权限后&#xff0c;权限维持&#xff08;Persistence&#xff09;往往成为攻防对抗的核心战场。传统安全培训常聚焦于SUID提权等基础手段&#xff0c;但真实APT攻击中&#xf…...

TouchGal:打造纯净Galgame社区的5个简单步骤

TouchGal&#xff1a;打造纯净Galgame社区的5个简单步骤 【免费下载链接】kun-touchgal-next TouchGAL是立足于分享快乐的一站式Galgame文化社区, 为Gal爱好者提供一片净土! 项目地址: https://gitcode.com/gh_mirrors/ku/kun-touchgal-next TouchGal是一个专为视觉小说…...

恶意代码分析——基础技术篇

恶意代码分析——基础技术篇 文章目录 恶意代码分析目的恶意代码分析方法恶意代码种类恶意代码静态分析 环境在线反病毒引擎获取哈希值&#xff08;certutil-hanshfile path MD5&#xff09;查找字符串hive string ida火绒剑加壳&查壳 文件加壳使用PEiD检测加壳 导入导出…...

如何用OB_Template构建你的终极读书笔记系统:Obsidian新手完全指南

如何用OB_Template构建你的终极读书笔记系统&#xff1a;Obsidian新手完全指南 【免费下载链接】OB_Template OB_Templates is a Obsidian reference for note templates focused on new users of the application using only core plugins. 项目地址: https://gitcode.com/g…...

收藏!阿里放大招成立ATH事业群,AI月薪6W+,小白/程序员入局正当时

近日&#xff0c;据行业网友爆料&#xff0c;阿里近期迎来AI领域重大动作——正式组建Alibaba Token Hub&#xff08;简称ATH&#xff09;事业群&#xff0c;由集团CEO吴某铭亲自挂帅带队&#xff0c;其核心战略目标十分明确&#xff0c;浓缩为一句话就是&#xff1a;创造Token…...

DeepWiki-Open技术解析:构建完全离线的AI文档生成创新方案

DeepWiki-Open技术解析&#xff1a;构建完全离线的AI文档生成创新方案 【免费下载链接】deepwiki-open Open Source DeepWiki: AI-Powered Wiki Generator for GitHub Repositories 项目地址: https://gitcode.com/gh_mirrors/de/deepwiki-open 在企业级软件开发中&…...

解密GPT:从架构解析到实战应用

1. GPT架构深度拆解 第一次接触GPT模型时&#xff0c;我被它流畅的文本生成能力震撼到了。记得当时用GPT-2生成了一篇伪莎士比亚风格的十四行诗&#xff0c;连文学系的朋友都分不清真假。这种"魔法"背后&#xff0c;其实是精妙的架构设计在支撑。 GPT的核心是Transfo…...

告别音乐平台干扰!铜钟音乐如何让你重拾纯净听歌体验?

告别音乐平台干扰&#xff01;铜钟音乐如何让你重拾纯净听歌体验&#xff1f; 【免费下载链接】tonzhon-music 铜钟 (Tonzhon.com): 免费听歌; 没有直播, 社交, 广告, 干扰; 简洁纯粹, 资源丰富, 体验独特&#xff01;(密码重置功能已回归) 项目地址: https://gitcode.com/Gi…...

嵌入式Linux实战:全志T3+vsftpd实现轻量级文件传输(含WinSCP连接教程)

嵌入式Linux实战&#xff1a;全志T3vsftpd实现轻量级文件传输&#xff08;含WinSCP连接教程&#xff09; 在物联网设备开发中&#xff0c;文件传输是一个看似简单却充满挑战的环节。当你的开发板是全志T3这样的资源受限平台时&#xff0c;如何在有限的存储和内存条件下搭建一个…...