极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: 邓维安

google adk 与mega2560

[复制链接]
 楼主| 发表于 2012-10-8 08:09:34 | 显示全部楼层
这个是打通ADK的条件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2012-10-8 09:41:02 | 显示全部楼层
谢谢邓兄,我还有一块IOIO,这几天试试三星i9100g能否支持,如也不成,就考虑换手机(或者平板)了。现在我的内核版本是2.6.37.5,安卓是2.3.4。
回复 支持 反对

使用道具 举报

发表于 2012-10-13 02:34:13 | 显示全部楼层
本帖最后由 沧海笑1122 于 2012-10-13 02:36 编辑

邓兄,我的手机已经刷了CM9(4.04),基带 i9100gzclp7 内核是3.0.33-cm-g6f8e729
demokit下载顺利。
现在插入板子,就可以认到(可以理解为打通吧),并且在确认后自动启动demokit。可惜,随即出现“很抱歉,demokit已经被中止(原文为英文)”。如果不连接板子,直接调用demokit,也会出现同样的信息。我试过USB调试状态开(关),结果都是一样的。

我也打算尝试CM7,但是CM7没有支持i9100g的版本。我把demokit 的apI提升到google api 14(4.0),生产APK后也没有改善。
出现这样的告警信息,是什么原因呢?
非常感谢。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-13 11:38:02 | 显示全部楼层
沧海笑1122 发表于 2012-10-13 02:34
邓兄,我的手机已经刷了CM9(4.04),基带 i9100gzclp7 内核是3.0.33-cm-g6f8e729
demokit下载顺利。
现在 ...


给你一个可以打开的方法:这个名字为“城市天气预报apk(我没有改名)”支持任何android手机和google adk连接





这是需要下载的apk和arduino库:

arduino 代码如下:

//Connect an LED to D12 and a variable resistor(POT) to A0

#include <SPI.h>
#include <Adb.h>

// Adb connection.
Connection * connection;

// Elapsed time for ADC sampling. The rate at which ADC value is sent to Android device.
long lastTime;

//State of LED. Initially OFF.
uint8_t LEDState=0;

// Event handler for the shell connection.
// Any data / command to be sent to I/O of ADK has to be handled here.
//
// For eg: 1.Controlling an ouput port 2.Interacting with a device connected
// to ADK via IIC or Serial Port.

void adbEventHandler(Connection * connection, adb_eventType event, uint16_t length, uint8_t * data)
{
  
  // In this example Data packets contain one byte and it decides the state of a LED connected to D12
  // The size of data is predetermined for this application. Android device also uses the same size.

  if (event == ADB_CONNECTION_RECEIVE)
  {
     if(LEDState != data[0])
     {
         digitalWrite(9, data[0]);   // Change the state of LED
         Serial.println(data[0],DEC);
                LEDState = data[0];          // Store the State of LED
     }       
  }

}

void setup()
{
  //Serial port debug purpose
  Serial.begin(57600);
  
  // Note start time
  lastTime = millis();

  // Set Digital pin 12 (LED is connected) as output
  pinMode(9,OUTPUT);

  // Initialise the ADB subsystem.  
  ADB::init();

  // Open an ADB stream to the phone's shell. Auto-reconnect. Use any unused port number eg:4568
  connection = ADB::addConnection("tcp:4568", true, adbEventHandler);  

}

void loop()
{
  //Check if ADC needs to be sampled.
  if ((millis() - lastTime) > 20)
  {
    //Read ADC value
    uint16_t data = analogRead(A0);

    //Send the ADC value to Android device as two bytes of data.
    connection->write(2,(uint8_t*)&data);
    lastTime = millis();
  }

  // Poll the ADB subsystem.
  ADB::poll();
}
希望这个可以帮到你

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-13 11:40:44 | 显示全部楼层
CM9只支持adk 2012
回复 支持 反对

使用道具 举报

发表于 2012-10-13 23:04:36 | 显示全部楼层
邓兄,非常感谢,明天就试,看来我是因为刷了CM9的原因才会出错吧。我看您的机器也刷了4.04,不是CM9吗?
回复 支持 反对

使用道具 举报

发表于 2012-10-30 22:05:37 | 显示全部楼层
大神啊,我我开始用自己的华为手机不行,又搞了个G5,还是不行,一直停留在连接一个domekit板子,就没动静了。我刷的cm7的2.35,内核2.6.37.求大哥指点。

还有你提供的天气预报。apk 已经不能下载了呢
回复 支持 反对

使用道具 举报

发表于 2012-10-30 22:15:54 | 显示全部楼层
CONFIG_USB_ANDROID_ACCESSORY=y
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-31 08:53:31 | 显示全部楼层
逍遥无忌 发表于 2012-10-30 22:15
CONFIG_USB_ANDROID_ACCESSORY=y

CM7肯定支持G5,你看一下我发的贴子上面也是用的G5加android,CM7,另外你有没有在手机中设置——开发——USB调试上面划勾?CM9不支持demokit2011(demokit现在有两个版本,一个是adk2011,一个是2012),你把你的操作方法和相亲图片传上来我帮你看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-31 09:09:32 | 显示全部楼层
另外,据我所知,现在国内网上有很多CM7的版本。被剪裁过的CM7版本,我是无法确定能不能打通google官方的demokit,因为我现在不用demokit来跟android通讯,我用的是后面那个我改过的天气apk,因为它支持任何android手机,任何版本(android1.6以上都可以打通),但是demokit还是有用的,因为他的android app和arduino的例子很不错。可以用来参考写一些程序,比如PWM。如果你只要打通usb功能,你将上面那个,test.rar和lib...rar下载来用就行了,它支持任版本,包括android4.0以上,是一个传感器和一个LED的demo通过android手机控制,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-31 09:17:46 | 显示全部楼层
如果你认为你的是可以打通demokit的CM7 ROM,请看一下这里,是不是有MOD版本和版本号这一栏,如果没有,这一栏,那么你那个版本是被剪切过的CM7版本,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-31 11:33:18 | 显示全部楼层
我的android4.04CM9不是CM团队开发的ROM,我测试ADK的时候是无法运行demokit这个app的,我现在将nexus one 重新刷回
CM7最新版本CM7-20121028-NIGHTLY-passion。重新测试如下图:

/////////////////////////////////////////////////////////////////////////////////





完毕,收工,深藏功与名

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2012-10-31 20:47:17 | 显示全部楼层
1、我在手机上安装了domekitlunch,就是你帖子上的那个。同时也试用了https://dlssl.google.com/android/adk/adk_release_0512.zip生成的APK。

2、在电脑上安装ADK的驱动,使用的是anduino 开发工具提供的驱动。按照你帖子中提到的教程,\firmware\arduino_libs下的两个文件夹拷贝到arduinoIDE安装目录下的\libraries中,然后打开IDE,从IDE中打开ADK包中的\firmware\demokit\demokit.pde,编译出错。发现少了<CapSense.h>。
然后在http://zwz94.blog.163.com/blog/static/32060395201222111254654/的教程中找到CapacitiveSensor,把CapSense替换为CapacitiveSensor。成功编译上传。

板子用的是淘宝上买的
http://item.taobao.com/item.htm?id=15366794644
3、开始连接,无反映。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2012-10-31 20:50:30 | 显示全部楼层
anduino 开发ide 使用的0022。如果是用1.0,我使用你文中提到的教程,替换Usb_host_shield_2.0的教程,仍然没通过
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-11-1 10:30:17 | 显示全部楼层
逍遥无忌 发表于 2012-10-31 20:50
anduino 开发ide 使用的0022。如果是用1.0,我使用你文中提到的教程,替换Usb_host_shield_2.0的教程,仍然 ...

你少了一个模块即sensor扩展板,所以你无法打开demokit.具体是个什么东西,你对比一下我那个图片,就知道了。如果你不需要加这个扩展板,你必须更改demokit的源码,(据我所知,demokit首先会判断USBhost+sensor,才能打开,如果手机ROM不支持或者没有sensor它就会提示"please connect a demokit board")goolge adk是以google标准的kit(google adk=mega2560 adk+mega2560 sensor kit)你是用了mega2560 adk其中之一的功能,如果你要用demokit这个应用程序来开发你的应用,你必需还要加上一个 sensor kit,
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-16 18:55 , Processed in 0.042008 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表