You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jetson Orin AGX上FTD2XX_NET.cs无法获取FTDI设备序列号与描述

在Jetson Orin AGX(ARM64 Ubuntu 22.04)上使用FTD2XX_NET.cs封装无法获取FTDI设备序列号和描述

问题背景

我使用FTDI官方提供的FTD2XX_NET.cs封装,该封装通过#IF WINDOWS和#IF LINUX条件编译指令分别加载ftd2xx.dll(Windows)或libftd2xx.so(Linux),实现跨平台支持:

  • Windows x64环境(ftd2xx.dll版本2.12.36.4):所有功能正常,可正确获取设备序列号和描述
  • Jetson Orin AGX环境(Ubuntu 22.04 ARM64,libftd2xx.so版本1.4.27):无法获取设备序列号、描述及其他字段,所有目标字段均为空

复现步骤

  1. 搭建两个.NET7项目:类库项目包含FTD2XX_NET.cs封装,控制台项目用于测试功能
  2. 在Jetson上执行发布命令:
    dotnet publish -c LINUX -r ubuntu.22.04-arm64 --self-contained -o ./publish
    
  3. 运行发布后的测试程序:Windows端正常显示设备信息,Jetson端序列号和描述字段为空

调试发现

修改封装中的GetDeviceList方法后观察到:

  • Windows平台下,存储序列号的sernum数组和存储描述的desc数组有正常内容
  • Jetson平台下,上述两个数组全为0

但使用FTDI Linux驱动自带的1.4.27版本ARMv8 hard-float示例程序,可正确显示设备序列号和描述,说明问题出在FTD2XX_NET.cs封装与libftd2xx.so的交互逻辑上

疑问与求助

  • 为何官方示例程序正常,但FTD2XX_NET.cs封装在Jetson Orin AGX上失效?
  • 是否与ARMv8和x64架构的内存处理、字符串编码差异有关?
  • 是否存在Jetson/Ubuntu特定的依赖缺失?
  • 封装对ARM64非托管资源的管理方式是否存在问题?

求有类似问题经验的开发者提供调试方向或解决方案

更新

尝试添加sudo执行发布命令后,结果无变化


内容的提问来源于stack exchange,提问作者Ultegra12vDi2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 17:03:09