Banana Pi BPI-M6(Raspberry Pi 5 替代品)初始设置及固件烧录

2023-11-10 20:30

本文主要是介绍Banana Pi BPI-M6(Raspberry Pi 5 替代品)初始设置及固件烧录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Banana Pi BPI-M6:初始设置和镜像烧录

Banana Pi BPI-M6 的首次测试

在上一篇文章中,我比较了Banana Pi BPI-M6和Raspberry Pi 5的硬件特性。两者都拥有出色的硬件技术,在性能方面应该不会有太大的问题。
今天我想测试一下 Banana Pi。作为第一个测试,我只需通过 HDMI 输出 (TX) 将 Banana Pi BPI-M6 连接到我的显示器,并使用 USB 充电器为 Banana Pi 供电,我曾经测量过它可以在 5 伏电压下处理 3.1 安培的电流。那应该足够了。Banana Pi BPI-M6 的两个 HDMI 端口被设计为微型版本,并且位置靠近。如果没有细长电缆 HDMI 微型到普通适配器或 HDMI 微型到普通电缆,我将无法同时连接两个 HDMI 端口。电缆上带有窄插头的微型 HDMI 适配器已经订购,但还需要一段时间才能通过全球速卖通从中国抵达。如果你赶时间,你可以买一个像树莓派 HDMI 适配器一样的适配器,每个大约 6 到 8 欧元,大约是德国商店价格的两到三倍。我目前只有一个“短”HDMI 微型适配器(无电缆)和一条普通 HDMI 电缆。幸运的是,适配器足够窄,因此我可以插入 USB-C 插头来供电,而不会出现任何干扰。如果没有合适的适配器,您无法同时连接 HDMI 输入和 HDMI 输出,因此最好在购买时订购。并且请不要强行插入太宽的插头,因为在 BPI-M6 的主板上更换这样的微型 HDMI 端口并不有趣。当我给 Banana Pi BPI-M6 供电时,我的显示器或HDMI 5 到 1 开关会自动从源 1 (PC) 切换到源 2 (BPI-M6),但屏幕保持黑色,并且只显示“无信号”消息。但一开始没有理由担心。除非插入可启动 SD 卡,否则 Raspberry Pi 不会显示任何内容。但我心想,也许会有一个徽标,或者会加载标准软件,毕竟 Banana Pi BPI-M6 板上有 16 GB eMMC 内存。某些东西可能已经保存在交付状态中。

Banana Pi BPI-M6 的初始设置


因此,我将 Banana Pi 插入 Windows PC 上的 USB 插座。
还检测到“VS680 S/N...”设备,但毫不奇怪,Windows 找不到它的驱动程序。
我的M6板的序列号“12345678A”也很有趣。这可能是因为我对 Banana Pi 进行了早期修订,每个人仍然有一个虚拟编号,也许这会改变。根据Banana Pi 主页上的入门说明,
我们首先必须下载SenarySocSystemTool ,也称为“USB 刻录工具”,启动它并使用它来将映像“刻录”到 eMMC 上,然后才能进行任何操作。如果没有图像,由于缺乏固件,屏幕会保持黑屏,就像µSD 卡上没有图像的 Raspberry Pi 一样。该 zip 文件只是一个设置,最初无法在我的 Windows 7 下运行。它可能是为 Windows 10 设计的,或者是因为我的 Windows 对所有 SDK 都有点特殊。但是,当我在安装属性中设置 Windows 7 的兼容性设置后,它就可以工作并且可以安装在选定的文件夹中。在安装过程中,诸如“ffmpeg.exe”之类的文件名以及一些带有汉字的文件名一闪而过。看看它是否有效将会令人兴奋......在结束前不久还有另一个惊喜:不幸的是,我不会说中文。但有谷歌镜头,例如。它的互联网版本只会在图像中创建模糊、难以阅读的文本,但你可以在智能手机上使用它。现在我看得更清楚了:我当然要安装USB驱动程序,所以复选标记保持选中状态。您还不必亲自运行该工具。所以我们可以保留默认设置,然后单击“完成”。不幸的是,立即弹出一条错误消息:如果您仍然使用 Windows 7,我认为您已经做了一些愚蠢的事情。我使用 Windows 10 可能不会遇到这些问题。


接下来,我尝试了为带有 RetroPi 的 Raspberry Pi 以及桌面 Raspbian 制作的微型 SD 卡,但不幸的是,这里的屏幕也仍然是黑色的。除了 Banana Pi BPI-M6 使用大约 400 mA 的电流并且红色 LED 亮起之外,没有任何反应。不幸的是事情没那么简单。Banana Pi 支持也向我证实,Banana Pi 与 Raspberry Pi 映像不兼容,因此您不能简单地从它们启动。

Windows 7下手动安装驱动程序

然而,在安装程序安装该工具的目录中,我发现了一个“DPInst64.exe”,它看起来与上面描述的“USB启动USB驱动程序”非常相似:

 Verzeichnis von D:\Program Files (x86)\SenarySocSystemTool\Syna_WinUSB_Driver02.11.2023  07:51    <DIR>          .
02.11.2023  07:51    <DIR>          ..
20.11.2018  04:57             6.148 .DS_Store
02.11.2023  07:51    <DIR>          amd64
07.05.2010  20:52           930.272 DPInst64.exe
02.11.2023  07:51    <DIR>          ia64
25.11.2022  11:19            18.479 Syna_WinUSB.cat
25.11.2022  11:19            14.957 Syna_WinUSB.inf
02.11.2023  07:51    <DIR>          x86

让我们手动运行 DPInst64.exe。当然,你必须同意红色驱动安装警告。然后,响起熟悉的“USB 设备已插入”提示音,并且出现成功消息:

名为“APSE_WinUSB_Release (WinUSB) USB (07/20/2012 3.3.2.3)”的驱动程序已安装。当我将 M6 置于启动模式时,相应的设备也显示在设备管理器中,没有错误(稍后会详细介绍): 在

它旁边的目录中,我找到另一个“DPInst64.exe”,它看起来可疑地像上面那个名为“Android USB Driver”的驱动程序:

 Verzeichnis von D:\Program Files (x86)\SenarySocSystemTool\UsbDriver02.11.2023  07:51    <DIR>          .
02.11.2023  07:51    <DIR>          ..
02.11.2023  07:51    <DIR>          amd64
05.09.2022  09:42            11.151 androidwinusb86.cat
05.09.2022  09:42            11.187 androidwinusba64.cat
12.02.2018  17:05             5.917 android_winusb.inf
07.05.2010  20:52           930.272 DPInst64.exe
02.11.2023  07:51    <DIR>          i386
05.09.2022  09:42            17.391 package.xml
05.09.2022  09:42                64 source.properties

如果您直接调用它并安装名为“Google, Inc. (WinUSB) AndroidUsbDeviceClass (08/28/2014 11.0.00000 00000)”的设备,则此 DPInst64.exe 在 Windows 7 下运行得很好:

运行 SenarySocSystemTool

我还可以在我的硬盘上找到该工具本身,名称为“SenarySocSystemTool.exe”。还有“SOC烧写工具使用说明.docx”,可能是该工具的Microsoft Word格式的说明,但一切都是迷人的中文。我把文件机器翻译成德语。您可以在此处下载 SenarySocSystemTool-Anleitung-deutsch.zip。感谢 Banana Pi 组织允许这样做。
该工具本身也有中文版本,这并不奇怪。当我询问时,我发现这只是一个早期版本,该程序的英文版本正在开发中,应该会在 Banana Pi BPI-M6 广泛上市时提供。我将各个按钮翻译成德语,并将翻译写在它们旁边。有了这个以及将图像写入 Banana Pi BPI-M6 的 16 GB eMMC 的工具的背景知识,您绝对可以使用该工具。eMMC 镜像与 Raspberry Pi µSD 卡上的镜像基本相同,只是 Raspi 没有 eMMC,必须始终从 µSD 卡启动。SD和eMMC都基于闪存技术,eMMC通常比SD更快,但不如SSD。我们想要使用该工具将映像写入 Banana Pi BPI-M6 的 eMMC。当然,要做到这一点,我们首先要选择一个合适的图像(点击“浏览”并选择一个图像。目前,根据Wiki(图像发布部分),只有Android图像,您可以从 Google Drive 下载。我认为很明显,稍后会有更多图像。可能值得时不时地看看 Wiki 页面。事实上,已经有一个“Linux”部分仍然填充意味着可能很快就会出现一个 Linux 镜像的链接。然后我向 Banana Pi 组织询问,确认他们正在开发一个 Linux 镜像,并且很快就会发布一个镜像。然后我们最后点击右下角的“Burn Image”,点击将镜像写入到Banana Pi BPI-M6。因为中间底部的中文向我们解释说设备无法被识别。怎么可能呢? ? 驱动安装成功。快速帮助,或者他们的翻译可以帮助我们:

1.进入UBOOT模式:方法1-按下USBBOOT按钮>按下RESET按钮->松开RESET按钮->松开USBBOOT按钮。方法 2 – 按 USBBOOT 按钮?板子上电 -> 松开 USBBOOT 按钮
2. 退出 UBOOT 模式: 方法一 - 按下 RESET 按钮 -> 松开 RESET 按钮;方法 2 – 重新给卡上电。3、烧写MDK Recovery时,先选择UBoot,然后进入UBOOT模式,否则无法启动烧写模式。
4. 首次使用时识别USB端口:连接设备并将其置于UBOOT模式。工具显示设备后,记下绑定 ID。
5. 每轮编程结束后,结果显示在右表中。成功的设备显示为黑色,失败的设备显示为红色。
6. 插入所有需要更新的器件,进入UBOOT 模式,然后开始烧写
7. 请再次进入UBOOT 模式。必须在【开始编程】之前完成器件的编程,否则无法开始器件的编程。

啊哈!所以我们还必须自己将 Banana Pi BPI-M6 置于编程模式。一项安全措施,可防止您意外覆盖 eMMC。为此,只需按住“USB”按钮,然后将 USB 电缆插入 PC(从而为其供电),或者如果电缆已插入且 Pi 已通电,则按住“USB”按钮按钮,然后短按重置按钮(“RST”),然后再次松开 USB 按钮。
这两个按钮均位于 Pi 板带有 40 针 GPIO 接头的一侧。右上方的USB位于USB-C插座和HDMI-Out插座之间,复位按钮位于右侧斜下方;位于 USB-C 插座下方和白色 LCD 端口左侧。按钮真的很小,你必须小心,不要用指甲滑倒。
不幸的是,这似乎不适合我。即使将其置于 USB 启动模式并重新启动该工具后,它仍然显示“设备无法识别”(中文)。

根本原因研究和调试

可能是因为我还在使用Windows 7。虽然它应该可以工作:驱动程序“Synaptics IoT:用于 VS680 启动设备的工具包 USB 驱动程序”已安装,显示在设备管理器中,并在属性下显示“设备工作正常”。
现在我有点不知所措,因为到目前为止我只能从 Banana Pi BPI-M6 获得黑色 HDMI 图像,或者换句话说什么也没有。我的全新BPI-M6不会有缺陷吗? 在 BPI-M6 板上,我在最外面的 USB 插座附近发现了一个标有“G RX TX”的三针接头。这可以代表“接地、接收、传输”,从而代表串行接口吗?ESP32 的行为是通过串行端口输出有用的调试信息,即使是TTGO ESP32 VGA32 板或ESP32-Cam Baord等成品模块也是如此。 起初我对没有 VCC 或 3V3 电源端口感到有点恼火,但仔细想了一下,我认为我只是习惯了我的串行适配器,实际上没有必要。 基本上,一条用于打开和关闭接地电压 (G) 的线路 (TX) 足以传输必要的位模式。 尽管如此,为了安全起见,我还是宁愿将板连接到我的示波器。按下重置按钮后,开发板应该会愉快地在 TX 上进行传输。我预计至少会出现一条简短的开机消息。 但什么也没有。重置期间,Oszi 仅显示短暂的低-高,然后长时间沉默或什么都没有留下。与我使用 USB 按钮进入启动模式时的行为完全相同。 出于好奇,我还按下了SPI按钮。嘿:示波图中发生了一些事情。这里发生了一些事情,看起来像是一个信号。 由于电压在可容忍的范围内,我将 BPI-M6 板的 TX 和 G 连接到FTDI 适配器的 RX 和 GND ,在我的 PC 上打开一个设置为“115200 bps,8N1”的终端窗口,然后按我按住 SPI 按钮,然后再次短按重置。 确实:我得到了可读的输出:

所以我的设备似乎并没有完全有缺陷。我读到的信息表明 BPI-M6 正在尝试从 SD 卡启动。但这失败了,因为 SD 是空的。如果使用 eMMC 刷新不起作用,以某种方式为 µSD 卡配备映像,然后从它启动,也许会有所帮助。

...ULT (byte[0:7])     = 43111a826e719115
Chip version        = 0x01
Leakage ID = 1705i2c status:0x00000750, send_num:1 (expect:1), recv_num:0 (expect:1)tx abort source:0x801000bit12:lost arbitration
MMC is SD
emmc_wait_card_detect: No card present

如果没有 µSD 卡,主板仍然认为内存是 SD。我不认为这是理所当然的。因为在下一行中他说在 eMMC 内存中找不到卡图像 - 这就是我的解释。要么是 eMMC 内存有缺陷(我希望但不相信),要么它抛出该消息,因为我不知道没有图像我刷新了 eMMC 内存 - 因为我还无法做到这一点。
好的。我现在有一种良好的感觉,我的 BPI-M6 并没有完全损坏,但这并没有真正让我有任何进展。
简单地将 1.5 GB 的数据从 eMMCImg 目录复制到 FAT32 格式的 µSD 也对我没有帮助。我只再得到一个

gpt header data corrupted!
get gpt error!

他可能不喜欢FAT32。当我插入带有 Raspberry Pi 映像的 µSD 时,我也会收到相同的消息。Banana Pi 可能有自己的图像格式。

我们在另一台电脑上尝试一下

尽管该驱动程序似乎在我的 Window 7 PC上运行良好。也许这与这台电脑有关。因为Banana Pi 论坛中的其他人可能已经烧录了映像,没有任何进一步的问题。
我首先在 Windows 10 系统上进行了尝试,因为我认为该工具可能不适合 Windows 7 等较旧的 Windows 版本。但我在运行 Windows 10 的Acer平板电脑上也没有任何运气。安装成功了,但驱动程序不行。而且Senary工具也无法启动,显然与操作系统不兼容。奇怪的。

而且它仍然有效!

我终于在装有 Windows 7 的旧东芝笔记本上取得了成功。它有 Synaptics 的触摸板,也许这就是原因;) Senary / Synaptics 工具感觉很自在且舒适,并且可以轻松安装,就像直接安装的两个驱动程序一样。然后它就毫无问题地启动了,并立即找到了我的 Banana Pi BPI-6M 板。

底部中心的字体不再是红色,是中文“找到 1 个设备”,在端口 1 下您现在还可以看到标有 ID“6-3”的内容。只是不要点击诱人的“[中文] eMMC”按钮!中文代表“删除”。左边的绿色按钮只删除eMMC。相反,我们按下右下角的按钮,该按钮负责上传或“刻录”。
然而,我们面临着一条看起来很危险的信息,中间有很多红色的中文文字:

但翻译后,恐怖很快就消失了:

Titel: Bestätigen Sie den Bildpfad                            Bitte bestätigen Sie, dass der Image-Pfad korrekt ist. Ein falscher Image-Pfad führt dazu, dass Sie nach dem Brennen nicht auf das System zugreifen können. Sie müssen das Image erneut brennen, um es wiederherzustellen.[Pfad ändern] [Weiter programmieren][] Keine Erinnerung mehr, einfach direkt in der Zukunft programmieren---freundliche Erinnerung---Wählen Sie, um den Pfad zu ändern: Kehren Sie zur Hauptoberfläche zurück, um den Bildpfad erneut auszuwählen, und klicken Sie dann auf die Schaltfläche, um das Brennen des Bildes erneut zu starten.Wählen Sie „Weiterbrennen“: Starten Sie dann direkt das Brennen des Bildes

所以我选择正确的按钮并“继续刻录”。然后我可以在图像上传时看到进度条:


进度条最终达到 100%。固件刷写成功!
在记事本上,将带有 Android TV 映像的固件从 Banana Pi 站点上传到开发板即可立即完成。一切都很顺利,正如你所期望的那样。如果您有计算机和 Windows,那就没问题了。在我看来,Senary 工具在这里有点挑剔。
我想我一开始就有点运气不好。但最终它成功了。走迂回路线的好处是我学习并学到了很多关于Banana Pi BPI-6的知识。
例如,复位后使用 SPI 按钮通过调试消息。顺便说一句,如果您同时按住复位、USB 和启动,即进入启动模式,调试输出将保持为空;然后释放reset,然后释放USB。没有输出表明您现在处于启动模式或类似的情况。本来是相当实用的,但在技术上可能不太可能。

结果,上传图片测试

现在重要的时刻来了:我的Banana Pi BPI-M6工作正常吗?闪现有效果吗?M6会开机吗?Android 镜像是什么样的?你能用它做什么?
因此,我断开 Banana Pi 与笔记本电脑的连接,然后将其再次连接到我的 HDMI 显示器。然后我给它通电。Synaptics 徽标短暂闪烁(我认为您可以使用 Senary 工具自行设置,但我还没有尝试过),然后出现 Android TV 徽标,最后我的 Banana Pi 显示以下屏幕 :这里以视频形式为您再次处理:

大约 30 秒后,Android TV 加载完毕,Banana Pi 即可启动。
您将在我的下一篇文章中了解 Android TV Image 的功能、您可以使用它做什么以及 Banana Pi BPI-M6 如何使用它执行操作。

这篇关于Banana Pi BPI-M6(Raspberry Pi 5 替代品)初始设置及固件烧录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/385060

相关文章

PyCharm如何设置新建文件默认为LF换行符

《PyCharm如何设置新建文件默认为LF换行符》:本文主要介绍PyCharm如何设置新建文件默认为LF换行符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录PyCharm设置新建文件默认为LF换行符设置换行符修改换行符总结PyCharm设置新建文件默认为LF

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4

如何关闭 Mac 触发角功能或设置修饰键? mac电脑防止误触设置技巧

《如何关闭Mac触发角功能或设置修饰键?mac电脑防止误触设置技巧》从Windows换到iOS大半年来,触发角是我觉得值得吹爆的MacBook效率神器,成为一大说服理由,下面我们就来看看mac电... MAC 的「触发角」功能虽然提高了效率,但过于灵敏也让不少用户感到头疼。特别是在关键时刻,一不小心就可能触

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

grom设置全局日志实现执行并打印sql语句

《grom设置全局日志实现执行并打印sql语句》本文主要介绍了grom设置全局日志实现执行并打印sql语句,包括设置日志级别、实现自定义Logger接口以及如何使用GORM的默认logger,通过这些... 目录gorm中的自定义日志gorm中日志的其他操作日志级别Debug自定义 Loggergorm中的

前端 CSS 动态设置样式::class、:style 等技巧(推荐)

《前端CSS动态设置样式::class、:style等技巧(推荐)》:本文主要介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外,还可以结合计算属性来生成复杂的类名或样式对象,详细内容请阅读本文,希望能对你有所帮助...

MySQL8.0设置redo缓存大小的实现

《MySQL8.0设置redo缓存大小的实现》本文主要在MySQL8.0.30及之后版本中使用innodb_redo_log_capacity参数在线更改redo缓存文件大小,下面就来介绍一下,具有一... mysql 8.0.30及之后版本可以使用innodb_redo_log_capacity参数来更改

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

mybatis和mybatis-plus设置值为null不起作用问题及解决

《mybatis和mybatis-plus设置值为null不起作用问题及解决》Mybatis-Plus的FieldStrategy主要用于控制新增、更新和查询时对空值的处理策略,通过配置不同的策略类型... 目录MyBATis-plusFieldStrategy作用FieldStrategy类型每种策略的作