问题标签 [dfu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
156 浏览

android - 如何将此库添加到我的项目中?

链接 我想将dfu 库添加到我的项目中。它有一个下载 oètopn,但没有直接下载,它说使用 Gradle 来添加它。
无论如何,文档说要执行此步骤。

将项目或仅将 DFULibrary 文件夹(使用 sparse-checkout)克隆到临时位置。

将 DFULibrary 文件夹复制到您的项目根目录,例如 AndroidstudioProjects。

将 dfu 模块添加到您的项目中:

将 '..:DFULibrary:dfu' 添加到 settings.gradle 文件中:include ':app', '..:DFULibrary:dfu'

打开项目结构 -> 模块 -> 应用程序 -> 依赖项选项卡并添加 dfu 模块依赖项。您还可以通过添加以下依赖项手动编辑应用程序模块中的 build.gradle 文件: compile project(':..:DFULibrary:dfu')

但我在这个项目中找不到 DFULibrary 文件夹。

0 投票
0 回答
367 浏览

objective-c - 运行 podspec 时动态框架目标 c 和 swift 依赖项 DFU 库错误

我有一个用objective c 制作的.framework,我使用cocoapods 制作了一个私有存储库,一切都运行良好。

但是现在......我不得不在我的 .framework 中添加 DFU 模式更新功能,为此我使用了这里提供的库 [ https://github.com/NordicSemiconductor/IOS-Pods-DFU-Library/blob/master/ README_OBJC.md][1]

为了能够将此库与可可一起使用,我必须使用 cocoapod install 将我的项目传递到工作区,并将依赖项放入我的目标 c 代码中。

我的代码可以编译,看起来一切都很好。但是当我运行 pod spec lint 时,出现以下错误,

我可以看到2个错误...

错误 | [iOS] 未知:遇到未知错误(用 Swift 编写的 Pod 只能集成为框架;将 use_frameworks! 添加到您的 Podfile 或目标以选择使用它。正在使用的 Swift Pod 是:Zip 和 iOSDFULibrary

[!] 由于 1 个错误,规范未通过验证。[!] Swift 项目的验证器默认使用 Swift 3.0,如果您使用不同版本的 swift,您可以使用 .swift-version 文件为您的 Pod 设置版本。例如,要使用 Swift 2.3,请运行:echo "2.3" > .swift-version。

我的规范

我的 pod 版本

0 投票
1 回答
240 浏览

dfu - 如何使用 Nrf Connect 将 Movesense 置于 DFU 模式

我可以使用 Nrf Connect 应用程序直接将如何?

0 投票
2 回答
589 浏览

android - Movesense 无法进入 DFU 模式,因为它没有通过 Movesense Android 应用程序连接

我想使用最近在 BitBucket 上更新的新示例代码(plippo/c85e1ba - 将 Movesense Core Lib 更新到版本 0.3.1.105 - 将 Movesense 示例应用程序更新到版本 0.3.1.105)。

新代码正确编译和构建。成功将置于 DFU 模式并上传此固件后,我无法使用 Movesense android 应用程序读取特征。

Movesense 被 Android 应用程序以及其他 BLE 工具(例如 nRF 连接应用程序)检测到。Movesense 应用程序在连接到设备时卡住。因此,我无法读取任何内容,或将设备置于 DFU 模式以对其进行重新编程。但是,通过 nRF 连接应用程序,我可以连接到它。

比较嵌入式代码的先前版本和当前版本,我注意到示例应用程序已被拆分。但是在 app_root.yaml 文件中的部分

保持不变。我上传了 HelloWorld 服务不再可用的示例应用程序“accelerometer_app”(与旧代码相比)。但仍列在 yaml 文件中。我想知道这是否是我无法再连接 Movesense 应用程序的原因。

Android 监视器中最后记录的行如下

对于正在运行的旧代码:

在新代码的情况下,它不起作用:

它停在这条线上D/BleEnumeratorImpl: getDevices 1

这是一个问题,因为我无法将 movesense 置于 DFU 模式并对其重新编程,所以基本上“它坏了”;)。

问题1:yaml文件中描述的服务是否是这个问题的问题。

问题 2:我可以通过 nRF connect App 看到并连接到它,并且能够手动将数据写入 WRITE 特性,有没有一种方法(命令)可以发送到 movesense,使其进入 DFU 模式.

问题 3:我无法找到代码卡住的位置,因为我无法跟踪/跟随BleEnumeratorImpl(请参阅日志行)。在整个android项目中,BleEnumeratorImpl 位于哪里?

我感谢您的帮助 ))

0 投票
0 回答
1201 浏览

bluetooth-lowenergy - 如何使用 BlueNRG 升级我的设备固件?

我目前正在开发 BLE 设备。该设备没有屏幕也没有键盘。它使用 STM32L0 并连接到 android 上的应用程序。

我想通过蓝牙进行 DFU(设备固件更新),这样我就可以以简单的方式更改我的产品版本。我想让我的应用程序通过新版本固件的 BLE 数据包提供。

我该如何处理呢?

我必须从游戏的每一方做些什么?(安卓和我的产品)

我想先将固件(为了尝试)升级到带有 L073RZ 和应用程序(NRF 连接)的 Nucleo IDB05A1,但仍然没有结果

我查看了很多不同的网站,但没有任何有效的结果...... 这个视频是我想要的,但它与我的产品完全无关......

0 投票
3 回答
1216 浏览

c - 如何使用主应用程序和引导加载程序中的一项功能?(嵌入式)

首先我要说的是我开发了基于 cortex m4 的嵌入式设备应用程序。

我有引导加载程序和主应用程序常用的功能。现在我为引导加载程序和应用程序编译源文件 2 次。但是我的双库 dfu 空间不足,我希望这些功能在 ROM 中只具有一次。知道如何实现这一目标吗?

编辑:

在某些情况下使用函数指针可能会有危险,请检查我的问题 -使用指针函数 - 1 个设备上的 2 个单独的应用程序

0 投票
1 回答
252 浏览

android - movesense-mobile-lib 的正确版本

使用 DFU 更新固件时,哪个版本的 movesense-mobile-lib 可与随附的 Movesense 传感器配合使用?

0 投票
1 回答
414 浏览

android - 固件更新后 Movesense 传感器不广播

我已经使用来自 bitbucket 的最新版本固件更新了传感器,该固件发布在 bin 文件夹中。我没有自己构建固件,而是使用了 plain_app 固件。在我使用 movesense 示例应用程序进行更新后,我似乎再也找不到传感器了。这是一个常见问题,我该如何解决?

如果看到这个问题: https ://bitbucket.org/suunto/movesense-device-lib/issues/4/plain_app-doesnt-connect-via-ble 但是当我下载固件时问题已经解决了。

我下载的固件链接

0 投票
0 回答
54 浏览

swift - 在 MTPasswordRequireBlock 中出现错误

我正在使用 beaconplus、zip 和 dfu 框架,但出现此错误。

无法将类型“((String?)-> Void)-> Void”的值转换为预期的参数类型“MTPasswordRequireBlock!” (又名 'ImplicitlyUnwrappedOptional<(Optional<(Optional) -> ()>) -> ()>')

我的代码是:

0 投票
2 回答
2003 浏览

python - 尝试在 STM32F4Discovery 上实现 MicroPython 时未检测到 DFU 设备

我正在尝试在 STM32 微控制器系列上使用 Python,并且正在使用 STM32F4 Discovery 板和 STM32F429 MCU 进行实验。

MicroPython Github 自述文件对 STM 进行了演练,但我在部署步骤中一直失败,它不断提高值 error 'No DFU device found'。(这发生在 Windows 主机上 Virtualbox 内的 Manjaro 上)

现在,我尝试简单地将主板识别为 Linux 和 Windows 主机上的 DFU 设备,但无济于事。Windows 确实在硬件管理器中显示了该板,但它始终显示为“STM32 STLink”。它也不被文件系统识别为大容量存储,与我也尝试过的 STM32F103 Nucleo-64 板相反,它是(在 Windows 和 Linux 上)。再说一次,F103 Nucleo 也没有被识别为 DFU 设备(尽管我可能没有正确的引导引脚向上/向下拉那个)。

我尝试在此处使用 DfuSe 遵循官方教程:https ://www.youtube.com/watch?v=Kx7yWVi8kbU 但是在大约 3:45 设备被识别为“DFU 模式下的 STM 设备”时,它不适用于我。并且它在 DfuSe 的相应下拉列表中没有显示任何“可用的 DFU 设备”。我尝试寻找一个名为“DFU 模式下的 STM 设备”的驱动程序,但没有找到任何官方或鼓舞人心的驱动程序。

我的设置:

  • boot0 引脚通过与 VDD 桥接来上拉
  • 通过 mini-USB-to-USB 电缆将板 (CN1) 的 STLink 部分连接到 PC
  • CN4 处的跳线均已连接
  • Idd (JP3) 处的跳线已连接
  • Windows 10 Pro(以及 Virtualbox VM 上的 Manjaro)

到目前为止我已经尝试过:

  • 安装 DfuSe
  • 手动安装随附的 DfuSe 驱动程序
  • 从 STMicroelectronics 官方网页下载和安装 USB 驱动程序
  • 在 Linux 上使用 dfu-util
  • 从 ST 网页安装虚拟 COM 端口驱动程序
  • 安装 ST-Link 实用程序

到目前为止,我唯一的成功是让 STLink Utility 识别电路板并能够用它上传 .hex 文件。遗憾的是,就 MicroPython 而言,这并没有真正帮助我。

所以我真正的问题是如何将 MicroPython 安装到 STM32F4 上,重要的问题可能是如何让开发板被识别为 DFU 设备。