Android7.1 移植 GPS Ublox HAL

  • 找到 Ublox 的 驱动包。

    网上找了很久没有找到,后面随便在网上搜索了一个 3.1版本的。

    放入 Android 源码的 hardware 目录下

  • 在 Android 板级文件里面添加文件添加GPS 的驱动。

    主要是如下两个文件

    device/rockchip/common/BoardConfig.mk

    310 BOARD_HAS_GPS ?= true
    311 BOARD_GPS_TYPE ?= ublox
    

    device/rockchip/rk3288/system.prop

    persist.sys.gpsTTY=/dev/ttyS1
    
  • 修改 ublox 的配置文件。

    hardware/u-blox/gps/u-blox.conf

    39 SERIAL_DEVICE                    /dev/ttyS1
    
  • 编译 ublox

    cd hardware/u-blox/gps/
    mm -B
    

    这个Android 版本里面,直接编译有一个小错误,类似 DATA 这个值找不到,把有这个错误的两行注释掉就好了。

    大致在 hardware/u-blox/gps/supl/suplSMmanager.cpp 这个文件

    编译完成之后, 复制文件

    cp out/target/product/rk3288/obj/lib/gps.default.so out/target/product/rk3288/system/lib/hw/ -rf
    cp hardware/u-blox/gps/gps.conf  out/target/product/rk3288/system/etc/ -rf
    cp hardware/u-blox/gps/u-blox.conf  out/target/product/rk3288/system/etc/ -rf
    

    然后重新编译Android

    烧录新系统,安装 u-center

原文地址:https://www.cnblogs.com/chenfulin5/p/12580356.html

时间: 2024-11-05 00:36:50

Android7.1 移植 GPS Ublox HAL的相关文章

Android深度探索(卷1)HAL与驱动开发 第一章 Android系统移植与驱动开发概述 读书笔记

Android深度探索(卷1)HAL与驱动开发 第一章 Android系统移植与驱动开发概述 读书笔记 本章是 Android系统移植与驱动开发概述性的具体讲解.首先,Android被分为了四层架构.在最底层的是Linux内核 .然后分别是C/C++代码库.Android SDK A和应用程序.而Android的移植又分为系统移植和应用移植.系统移植要实现Android操作系统在其他硬件平台上运行起来,其中的关键是Linux的内核.内核必须要完成对平台上运行的各个硬件的识别.所以这就需要Linu

【分享】iTOP4412开发板-Bluetooth移植文档

最近须要把Bluetooth移植到iTOP-4412 开发平台.查阅了相关资料,经过一段时间的研究.调试,最终成功的将蓝牙功能移植到了开发板上面.这里笔者记录移植过程及注意事项,方便以后工作须要. iTOP-4412开发板的Bletooth模块与板卡之间的连接採用UART接口.Bletooth硬件模块使用的是MTK的MT6620芯片,MTK提供了Android4.0及Android4.4的driver, Porting Guid,有了这些就为我们的移植工作做了整体性的指导. 可是唯独MTK提供的

error: 'LOGE' was not declared in this scope

移植了下HAL,发现编译出现如下错误 error: 'LOGE' was not declared in this scope 比较了一下android4.1的 system/core/include/cutils/log.h和android4.0的对应文件, 发现在4.1当中已经将所有的LOG宏前面加了一个字母A .所以出现上述编译错误. 修改HAL层源码:将LOGE   LOGD等等全部加个A 方法: `grep  LOG  -rl  .` 附上一个linux中的字符串查找替换用法: Lin

【HAL库每天一例】freemodbus移植

例程下载:资料包括程序.相关说明资料以及软件使用截图 百度云盘:https://pan.baidu.com/s/1slN8rIt 密码:u6m1 360云盘:https://yunpan.cn/OcPiRp3wEcA92u密码 cfb6 (硬石YS-F1Pro开发板HAL库例程持续更新\6. 软件设计之Modbus(HAL库版本)\YSF1_HAL_freemodbus_001. freemodbus移植)/**  ****************************************

Android系统移植与平台开发(七)- 初识HAL

1.      HAL的module与stub HAL(Hardware AbstractLayer)硬件抽象层是Google开发的Android系统里上层应用对底层硬件操作屏蔽一个软件层次,说白了,就是上层的应用不用关心底层硬件具体如何工作的,只要向上层提供一个统一的接口即可,这种设计思想广泛的存在于当前的软件架构设计里. 严格来讲,Android系统里完全可以没有HAL硬件抽象层,上层应用层可以通过API调用到底层硬件,但是Android自出现开始一直打着开源的旗号,而一些硬件厂商由于商业因

Android安卓书籍推荐《Android驱动开发与移植实战详解》下载

百度云下载地址:点我 Android凭借其开源性.优异的用户体验和极为方便的开发方式,赢得了广大用户和开发者的青睐,目前已经发展成为市场占有率很高的智能手机操作系统. <Android驱动开发与移植实战详解>分为18章,依次讲解了Android系统的基本知识, Linux内核的基本知识,分析了Android系统的源码,深入分析HAL层的基本知识,GoldFish下的驱动.MSM内核和驱动.OMAP内核和驱动.显示系统驱动.输入系统驱动.振动器系统驱动.音频系统驱动和视频输出系统驱动,多媒体框架

从java层到framework到JNI到HAL到kernel的hello 例子

转载自 http://blog.csdn.net/Luoshengyang/article/category/838604/3 在智能手机时代,每个品牌的手机都有自己的个性特点.正是依靠这种与众不同的个性来吸引用户,营造品牌凝聚力和用户忠城度,典型的代表非iphone莫属了.据统计,截止2011年5月,AppStore的应用软件数量达381062个,位居第一,而Android Market的应用软件数量达294738,紧随AppStore后面,并有望在8月份越过AppStore.随着Androi

《Android深度探索》(卷1)HAL与驱动开发 第九章心得体会

本章主要学习了硬件抽象层:HAL. Android的硬件抽象层,简单来说,就是对Linux内核驱动程序的封装,向上提供接口,屏蔽低层的实现细节.也就是说,把对硬件的支持分成了两层,一层放在用户空间(User Space),一层放在内核空间(Kernel Space),其中,硬件抽象层运行在用户空间,而Linux内核驱动程序运行在内核空间.为什么要这样安排呢?把硬件抽象层和内核驱动整合在一起放在内核空间不可行吗?从技术实现的角度来看,是可以的,然而从商业的角度来看,把对硬件的支持逻辑都放在内核空间

Android深度探索HAL与驱动开发 第四章

Android深度探索HAL与驱动开发 第四章 源代码的下载和编译 读书笔记 一.下载编译和测试Android源代码 1.配置Android源代码下载环境 创建一个用于存放下载脚本文件的目录(可将该文件放到任何一个目录在这里使用-/bin) # mkdir ~/bin # PATH=~/bin:$PATH 2.下载repo脚本文件(用于下载Android源代码) # curl htttps://dl-ssl.google.com/dl/googlesource/git-repo/repo> ~/