Banana Pi BPI-P2 Zero 开源硬件物联网开发板基准测试和评论

news2024/11/16 3:28:37

Banana Pi P2 Zero 和 P2 Maker 是基于 Allwinner 的 H3 和 H2+ 芯片组的廉价主板。它们以低廉的价格提供了一些有趣的功能,具有很大的吸引力,但由于其老化的 32 位架构和平庸的软件支持而有些令人失望。BPi-P2 板最适合作为无头边缘平台,具有一些独特的优势,例如廉价的 PoE 扩展选项以及零模型中的板载闪存和 WiFi/BTL,这在某些项目中可能很有价值。


打造品质10 实施技术6 使用方便8 性价比8

优点

  • PoE 就绪
  • 相对便宜的
  • 低功耗

两款 Banana Pi BPi-P2 型号最近出现在我们的评测台上。制造商已将 Banana Pi BPi-P2 Zero(基于 Allwinner H3 SoC)和 Banana Pi BPi-P2 Maker(基于 Allwinner H2+ SoC)发送给我们进行查看。它们采用经典的蓝白 Banana Pi 包装。根据我们的建议, Banana Pi团队还在这两个设备上安装了一个可选的 PoE 模块,将这些单元转变为非常有趣的小型边缘物联网板。

我们先来看看硬件。

这些主板所配备的 Allwinner H3 和 H2+ SoC 非常相似。它们都有四个 32 位 ARM Cortex-A7 内核。这些内核效率高,功耗极低,在正常负载下温度保持在 50°C 以下。在持续更强烈的负载下,需要被动或主动冷却,这在一定程度上违背了小外形尺寸的主要目的。

两款主板均配备 512 MB DDR3 RAM。两种型号均使用 SD 卡进行非易失性存储,而 Banana Pi BPi-P2 Zero 还提供板载 8 GB 闪存芯片。

还有两个 microUSB 端口,一个用于电源,另一个用于连接键盘和鼠标等配件的 OTG 集线器。还有一个 24 针 CSI 摄像头连接器,用于 Banana Pi 自己的 OV5640 模块(遗憾的是,这意味着 Raspberry Pi 的出色摄像头模块在这里不兼容)。

这两款产品还具有支持 1080p30 的迷你 HDMI 端口,考虑到 H3 的 4K 功能,这有点奇怪。

说到图形,这两款主板的图形引擎均由 ARM Mali-400 MP2 GPU 提供支持。H3 SoC于2014年推出,面向消费类机顶盒,其4K输出在当时相当高端。到 2019 年,随着此类产品大规模采用 64 位 CPU,H3 已被更强大的芯片组取代。然而,此时,另一个利基用途变得明显——低成本 SBC——全志为了扩大在该市场的影响力,发布了 H2+,这是 H3 的更便宜、精简版,不具备 4K 功能。

这些板的占地面积为 65 x 52.5 毫米,比Raspberry Pi 4等“全尺寸”SBC 小得多,但仍然比 Raspberry Pi Zero 系列大得多。Zero 采用 H3 SoC,而 Maker 采用 H2+,这并不是一个重要的区别,因为这两个板的额定输出仅为 1080p。

有一些差异。Maker 版本取消了板载 eMMC、板载 WiFi 和蓝牙以及预焊接的 40 针 GPIO 接头,所有这些都是 Zero 的功能。两款主板均配备 100 Mbps 以太网、PoE 扩展功能、512 MB DDR3 RAM、用于视频和音频的 miniHDMI 端口、SD 卡插槽和 CSI 摄像头连接器。

Zero 上没有像 Raspberry Pi 设备那样精美的 PCB 天线技术,因此需要外部无线天线,但不包括在内。该板使用标准 U.FL 连接器来连接这些连接器,因此您可能已经有一些了。

由于它们的规格,这两个板的正确选择是仅 CLI 的 Linux 发行版,我们在这里推荐使用 Armbian,尽管其他发行版也可以正常工作。Armbian 应该直接从 Banana Pi 的网站下载,因为目前官方发行版网站上没有可用的版本。初始设置确实需要屏幕,但也可以使用调试探针和终端仿真器 - 我们使用连接到板上 UART 连接器的Pi 调试探针和 PuTTY 来完成它。

Armbian 桌面运行得不错,也许是由于 BPi 团队在以前的主板上使用 SoC 的经验所致,但它并不像我们希望的那样无延迟。具有 4.4.55 内核的 Raspbian 9 Stretch 也可以工作,但已经过时且存在一些问题。目前,Armbian 的仅 CLI 构建与主板配合得最好,支持所有功能并且使用起来很愉快,非常适合嵌入式项目。

这些芯片是在 2014 年设计的。现代版本的操作系统运行缓慢,主要适合信息亭模式应用程序,例如信息面板或气象站(如果 1080p 分辨率足够的话)。

令人惊讶的是,一些轻度复古模拟可以在 RetrOrangePi 发行版上运行。然而,我们在连接 Xbox One 控制器时遇到了问题,因此我们还尝试了 BPi-M2 Zero(注意 M2)LibreELEC 映像,它也可以在此处启动。我们测试了 NES、SNES、Gameboy 和 Gameboy advance 模拟器,以及 C64 和 Amiga 模拟器。虽然这些大部分都有效,但我们在这里有复杂的感觉,只有 512 MB 的 RAM 导致了一些滞后,这低于其中一些模拟器所需的 1 GB 规格。

将 Banana Pi BPi-P2 与Raspberry Pi Zero 2W进行比较,很明显 Pi 更快一些,配备 64 位 CPU。除了集成天线之外,它还具有更好的软件支持,并且体积小得多。Pi Zero 2 W 的成本仅为 15 美元,总体来说是一个更加成熟的系统,但缺乏简单的 PoE 扩展功能,没有板载闪存选项,也没有物理以太网插孔。有线通信是边缘节点可靠性的一个重要方面,因此它可能是决定选择哪块板的关键因素。

我们使用运行 OpenWRT 的 Banana Pi 自己的 BPi-R2 Pro 路由器测试了两块板的网络速度。以太网工作完美,提供适当的 100 Mbps 速度(这无论如何都不是突破性的,但很高兴看到低成本硬件坚持其规格)。

老化的 ARM Cortex-A7 内核最近似乎已进入该行业,很可能是由于其低功耗。例如,STM 目前正在其 STM32MP1 CPU 中使用它。我们之前也见过类似的“晚期”采用周期,工业 MCU 仅在过去几年才采用 Cortex-M0+ 设计。

截至撰写本文时,这两款主板的 Maker 版和 Zero 版售价分别约为 17 美元和 25 美元。PoE 扩展板售价 4 美元,是一个值得添加的产品。

我们的总体经验是好坏参半。Armbian CLI 运行良好,但需要更好的操作系统支持。更高性能的板正在成为标准,但对于不需要 GUI 的项目,Banana Pi BPi-P2 绰绰有余。H3 的全部潜力并未在高端型号中得到充分利用,而 Raspberry Pi Zero 2 W 的价格非常接近,而且在许多方面都更好。

PoE 功能是一个可取之处——为物联网节点提供时尚的解决方案。作为带有 PoE 的边缘传感器数据采集站,Banana Pi BPi-P2 系列提供市场上最便宜的完整套件之一,起价仅为 21 美元。

原文链接:https://www.magazinmehatronika.com/en/banana-pi-bpi-p2-review/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/807941.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JAVA SE -- 第十一天

(全部来自“韩顺平教育”) 异常-Exception 一、异常介绍 1、基本介绍 Java语言中,将程序执行中发生的不正常情况为“异常”(开发过程中的语法错误和逻辑错误不是异常) 2、执行过程中发生的异常事件可分为两大类 …

ChatGPT与高等教育变革:价值、影响及未来发展

最近一段时间,ChatGPT吸引了社会各界的目光,它可以撰写会议通知、新闻稿、新年贺信,还可以作诗、写文章,甚至可以撰写学术论文。比尔盖茨、马斯克等知名人物纷纷为此发声,谷歌、百度等知名企业纷纷宣布要提供类似产品。…

Windows系统远程桌面访问统信Uos社区版Deepin系统的正确方法

文章目录 0、前言1、安装X11vnc2、安装xrdp3、在Windows中以远程桌面连接3.1、可以以xorg方式远程桌面连接3.2、以vnc方式远程桌面连接黑屏 0、前言 前段时间写了篇博文【UnRaid虚拟机安装Uos家庭版并由Windows远程桌面访问的成功流程】,成功实现远程桌面方式登录U…

用asp.net开发h5网页版视频播放网站,类似优酷,jellyfin,emby

之前用jellyfin开源软件搞了一个视频播放服务器,用来共享给家里人看电影和电视剧,jellyfin虽然各方面功能都很强大,但是界面和使用习惯都很不适合,于是就想着利用下班休息时间做一套自己喜欢的视频网站出来. 本来是打算直接用jellyfin的源码进行修改,源码是用C# netcore 写的服…

安全学习DAY10_HTTP数据包

文章目录 HTTP数据包![请添加图片描述](https://img-blog.csdnimg.cn/32eb72ceb2d6453b94487edb1a940a43.png)Request请求数据包结构Request请求方法(方式)请求头(Header)Response响应数据包结构Response响应数据包状态码状态码作…

SQL-每日一题【1050. 合作过至少三次的演员和导演】

题目 ActorDirector 表: 查询合作过至少三次的演员和导演的 id 对 (actor_id, director_id) 示例 1: 解题思路 1.题目要求我们查询出合作过至少三次的演员和导演的 id 对,我们可以 group by 两次来解决这个问题。 2.首先我们按照 actor_id 进…

Pycharm debug程序,跳转至指定循环条件/循环次数

在断点出右键,然后设置条件 示例 for i in range(1,100):a i 1b i 2print(a, b, i) 注意: 1、你应该debug断点在循环后的位置而不是循环上的位置,然后你就可以设置你的条件进入到指定的循环上了 2、设置条件,要使用等于符号…

【C++ 进阶】第 1 章:[C 语言基础] C 语言概述与数据类型

目录 一、C 语言的概述 (1)计算机结构组成 (2)计算机系统组成 (3)ASCII 码 (4)计算机中的数制及其转换 (5)程序与指令 (6)语…

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例

Diffusion扩散模型学习3——Stable Diffusion结构解析-以图像生成图像(图生图,img2img)为例 学习前言源码下载地址网络构建一、什么是Stable Diffusion(SD)二、Stable Diffusion的组成三、img2img生成流程1、输入图片编…

Mysql操作多表查询

多表查询是指在关系型数据库中,通过同时查询多个数据表来检索相关数据的操作。这种查询方式通常用于需要在多个数据表中搜索和比较数据的情况,以获取更完整和准确的结果。 在多表查询中,使用联接(join)操作将多个表连…

【Spring框架】SpringBoot创建和使用

目录 什么是SpringBoot?SpringBoot优点创建SpringBootSpringBoot使用 什么是SpringBoot? Spring 的诞⽣是为了简化 Java 程序的开发的,⽽ Spring Boot 的诞⽣是为了简化 Spring 程序开发的。 SpringBoot优点 1.起步依赖(创建的时候就可以方…

day47-SSM分页

SSM分页(增删改查登录注册) applicationContext.xml中加入mybatis-config.xml路径 mybatis-config.xml Mapper接口 Service接口及其实现类 Mapper.xml page.jsp personDetail.jsp addPerson.jsp updatePerson.jsp login.jsp regist…

DMA传输原理与实现详解(超详细)

DMA(Direct Memory Access,直接内存访问)是一种计算机数据传输方式,允许外围设备直接访问系统内存,而无需CPU的干预。 文章目录 Part 1: DMA的工作原理配置阶段:数据传输阶段: Part 2: DMA数据…

【弹力设计篇】聊聊灾备设计、异地多活设计

单机&集群架构 对于一个高可用系统来说,为了提升系统的稳定性,需要以下常用技术服务拆分、服务冗余、限流降级、高可用架构设计、高可用运维,而本篇主要详细介绍下,高可用架构设计。容灾备份以及同城多活,异地多活…

Python开发之手动实现一维线性插值

Python开发之手动实现一维线性插值 1.线性插值法介绍2.手动实现线性插值3.案例一手动实现线性插值4.使用pandas的插值方法实现要求(推荐) 前言:主要介绍手动实现一维线性插值以及pandas里面的interpolate方法实现线性插值。 1.线性插值法介绍 线性插值法是一种简单…

MySQL中锁的简介——行级锁之 间隙锁 和 临键锁

1.间隙锁演示 2.临键锁演示 间隙锁锁住的是间隙,不包含对应的数据记录,而临键锁既会包含当前这条数据记录,也会锁定该数据记录之前的间隙。间隙锁的目的是防止其他事务插入间隙造成幻读现象。间隙锁是可以共存的,一个事务采用的间…

maven引入本地jar包的简单方式【IDEA】【SpringBoot】

前言 想必点进来看这篇文章的各位,都是已经习惯了Maven从中央仓库或者阿里仓库直接拉取jar包进行使用。我也是🤡🤡。 前两天遇到一个工作场景,对接三方平台,结果对方就是提供的一个jar包下载链接,可给我整…

sqlSugar应用表值函数

一、新建表值函数 TableIntSplit 二、新建类 var employees _sqlSugarClient.Queryable<Employees>().InnerJoin(_sqlSugarClient.SqlQueryable<TableID>("select * from dbo.TableIntSplit(ids,split)").AddParameters(new { ids "1,2", s…

无涯教程-jQuery - Slide方法函数

幻灯片效果可以与show/hide/toggle一起使用。这会将元素滑出视口。 Slide - 语法 selector.hide|show|toggle( "slide", {arguments}, speed ); 这是所有参数的描述- direction - 效果的方向。可以是"左(left)"&#xff0c;"右(right)"&…

C语言第十一课--------操作符的使用与分类-------基本操作

作者前言 作者介绍&#xff1a; 作者id&#xff1a;老秦包你会&#xff0c; 简单介绍&#xff1a; 喜欢学习C语言和python等编程语言&#xff0c;是一位爱分享的博主&#xff0c;有兴趣的小可爱可以来互讨 个人主页::小小页面 gitee页面:秦大大 一个爱分享的小博主 欢迎小可爱们…