首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >avrdude的包装器库

avrdude的包装器库
EN

Stack Overflow用户
提问于 2018-11-01 18:26:54
回答 2查看 392关注 0票数 2

问题:通过Android应用程序,能够以编程方式验证arduino flash的内容,以确保它没有被恶意更改

我可以在android adb shell中使用下面的命令,使用avrdude来完成这项工作

代码语言:javascript
复制
avrdude -C/data/data/com.myapp.avrdude/local/etc/avrdude.conf -v -patmega2560 -cstk500v2 -P/dev/ttyACM0 -b115200 -D -Uflash:v:firmware.hex:i

这在arduino上工作得很好,但当我想对使用FTDI芯片的电路板做同样的事情时,问题就来了。当它连接到android设备时,它不会显示在/dev/ location中。

在linux机器上,arduino设备显示为/dev/ttyACM0,FTDI设备显示为/dev/ttyUSB0。问题是,FTDI设备不会出现在android上,因此上面的avrdude命令变得无用。

我不想按照指定的here为FTDI构建内核驱动程序

我认为最可行的方法是为avrdude找到/构建一个简单的java包装器,它可以在更高的级别上与usb设备交互,这样我就可以利用FTDI java library来执行命令来验证闪存。

这种方法可行吗?如果不是,解决这个问题的最好方法是什么?

EN

回答 2

Stack Overflow用户

发布于 2018-11-11 03:59:49

查看FTDI站点,看起来可能有一些FTDI in的驱动程序:FTDI Android Driver,然后您很可能会再次在java ha中构建avrdude。

我经常使用avrdude时,使用arduino...mainly远程重新格式化/升级3D打印机上的固件从raspberrypi...

我会去的

1)查看Arduino驱动程序...

2)如果fail...Maybe尝试在java中运行C程序?这样你就可以在你的应用中打包avrdude了?

3) XY问题->为什么不看看其他avenues...The真正弹出恶意固件的唯一方法是通过对设备的物理访问和具有先前源代码的用户(您可以设置锁定位以防止读取EEPROM)。甚至可以在启动时使用时间戳和UUID 1024位AES令牌/JWT之类的东西来验证构建?

代码语言:javascript
复制
https://en.wikipedia.org/wiki/Java_Native_Interface
票数 1
EN

Stack Overflow用户

发布于 2018-11-12 01:46:09

avrdude不是由FTDI支持构建的时候,为JNI构建将不会有任何帮助。

我已经下载了avrdude-6.3.tar.gz并运行了./configure --enable-linuxgpio

代码语言:javascript
复制
Configuration summary:
----------------------
...
DON'T HAVE libftdi1
DON'T HAVE libftdi
...

在寻找它的时候:

代码语言:javascript
复制
$ sudo yum whatprovides */libftdi1

它给了我:

代码语言:javascript
复制
libftdi-devel-1.1-4.el7.x86_64 : Header files and static libraries for libftdi
Filename : /usr/include/libftdi1

sudo yum install libftdi-devel还会安装libconfuse。它还需要flexbison

甚至还有针对D2XXFT4222H的驱动程序。

参见AN_357 Android D2XX Demo Application for FT4222H

还有一些针对ARM libft4222-linux-1.4.1.231.tgz的构建

..。它将进入jniLibs/armeabi目录。

这取决于它是哪种芯片组,但TN 134 FTDI Android D2XX Driver声明:

JNI提供了一个

类和一个包装器,它们可以轻松地包含在应用程序中。该类提供了对所有经典D2XX函数的访问,包括EEPROM函数。

它甚至还附带了一个video install guide

还找到了用于avrdude的Arduino build-script

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53099360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档