linux 路由表 pps,Linux PPS NTPD
ubuntu 12.04 整合了Linux pps driver。听说和 NTPD 配合能得到很好的系统时间。
于是就在板子上装了个ubuntu server 12.04 试试,参看:
1.安装ubuntu server 12.04
2.Trimble GPS 链接串口/dev/ttyUSB1 9600 8N1 NMEA GGA协议 only
(配置串口:
#stty -F /dev/ttyUSB1 -a (查看)
#stty -F /dev/ttyUSB1 ospeed 4800 ispeed 4800 cs8 -cstopb
-icrnl -icanon -isig -echo -echoe -clocal(设置)
)
(一旦发现设备,串口自动设置:创建文件/etc/udev/rules/10-yourname.rules
# Trimble GPS setting:
# NMEA on ttyUSB1 9600 8n1
SUBSYSTEM=="pps", MODE="0664" GROUP="tty"
KERNEL=="ttyUSB0", RUN+="/bin/stty -F /dev/ttyUSB0 ospeed 9600
ispeed 9600 parenb parodd cs8 -cstopb -icrnl -icanon -isig -echo
-echoe -clocal"
KERNEL=="ttyUSB1", RUN+="/bin/stty -F /dev/ttyUSB1 ospeed 9600
ispeed 9600 -parenb cs8 -cstopb -icrnl -icanon -isig -echo -echoe
-clocal"
KERNEL=="ttyUSB1", SYMLINK+="gps1"
)
3.pps 信号 接 并口ACK。 没串口了,只能用并口。听说并口比串口响应快。
4.载入 Linux pps driver:
# modprobe parport_pc
# modprobe pps_parport clear_wait=0
可使用 modinfo pps_parport 查看模块的参数。 assert
是上升沿,clear是下降沿
#ls /dev 看到设备 /dev/pps0
5. 安装工具ppstool:
解压: #tar -xzvf *.gz
编译安装:#make && make install
(可能你要装Linux头文件包 和编译工具:
#apt-get update
#apt-get upgrade
#apt-get install linux-headers-$(uname
-r)
#apt-get install make gc
)
注意: timepps.h 这个必须有, ntpd需要。不知道Linux kernel怎么搞的,没有此头文件。
检测:#ppstest /dev/pps0
trying PPS source "/dev/pps0"
found PPS source "/dev/pps0"
ok, found 1 source(s), now start fetching data...
source 0 - assert 1333040090.999603804, sequence: 8631 - clear
0.000000000, sequence: 0
source 0 - assert 1333040091.999709923, sequence: 8632 - clear
0.000000000, sequence: 0
source 0 - assert 1333040092.999797692, sequence: 8633 - clear
0.000000000, sequence: 0
source 0 - assert 1333040093.999884565, sequence: 8634 - clear
0.000000000, sequence: 0
6. ntpd编译安装,由于ubuntu的ntpd不带pps,只能自己编译
# ./configure --enable-all-clocks
# make
# make install
注意: config.h 中含有 #define
HAS_PPSAPI 1
7.
conf文件:/etc/ntp.conf
server
127.127.22.0 minpoll 3 maxpoll 3 # PPS ATOM
iburst
fudge
127.127.22.0 flag2 0
server
127.127.20.1 mode 18 prefer minpoll 3 maxpoll 3
fudge
127.127.20.1 time2 0.0000
driftfile
/var/lib/ntp/ntp.drift
8. 产生ntpd 的gps 设备
#ln -s /dev/ttyUSB1
/dev/gps1
9.调整系统时间,使之尽可能准。多运行几次。
#ntpdate
0.ca.pool.ntp.org
9. 运行ntpd
#ntpd -D 2 (debug mode 2) 显示
GGA信息.如果没有,看看串口有没有#cat /dev/ttyUSB1
10. ntptime
显示ok,没有Error
11. ntpq
-p
要有如下结果
# ntpq -pn
remote refid st
t when poll
reach delay offset jitter
==============================================================================
*127.127.20.1 .GPS. 0
l 52 64 377 0.000 0.516 0.011
o127.127.22.0 .PPS. 0
l 3 16 377 0.000 -0.001 0.001
但我就如论如何都没有这么好的结果:
# ntpq -p
remote refid st t when poll reach delay
offset jitter
==============================================================================
xGPS_NMEA(1)
.GPS. 0 l 44
64 377 0.000 -217.78
22.159
xPPS(0)
.PPS. 0 l 11
16 377 0.000 -177.46
4.882
12. degub:
a)有人说ntpd要运行一段时间才能算好时间。我给它3天,结果更糟。
b)修改conf:
server 127.127.22.0 minpoll 3
maxpoll 3 # PPS ATOM iburst
fudge 127.127.22.0 flag2 0
flag3 1
server 127.127.20.1 mode 18
prefer minpoll 3 maxpoll 3
fudge 127.127.20.1 time2
0.0000
driftfile
/var/lib/ntp/ntp.drift
还是那样糟。
c) 不用
driver 22 , 参照网站linux pps NTPD
修改参数,参照 type20, type22
试过各种参数,不好使。
d)不用ATOM PPS (22), 只用NMEA 内置的pps
修改conf:
server 127.127.20.1 mode 18
prefer minpoll 3 maxpoll 3
fudge 127.127.20.1 time2
0.0000flag1
1flag2
0flag3 1
driftfile
/var/lib/ntp/ntp.drift
结果等明天
还是不好用!
n 天后,不知道哪里出了问题,ntpd
就是不好用。改用chronyd:
详见下一篇
linux 路由表 pps,Linux PPS NTPD相关推荐
- linux路由表命令,Linux的路由表详细介绍
Linux的路由表详细介绍 一 在Linux下执行route命令 [root@localhost backup]# route -n Kernel IP routing table Destinati ...
- linux 路由表 文件,Linux路由表
Linux系统中可以定义从1-252个路由表,系统本身维护了4个路由表: table number Description 0 系统保留表 253 default表,没有指定的默认路由都放在这个表里面 ...
- linux路由表命令,linux下路由表详解
主机想要发送数据的时候,参考的对象就是路由表. 如果两个不同网段的主机想要发送数据,经过的具体的经过: 1.查询IP数据包的目标IP地址,主机会查阅Ip数据包报头的目标IP地址. 2.查询是否存在与本 ...
- Linux路由表失效,linux路由表问题一则
问题表现 10.10.1.109这台云主机(centos 2.6.32内核), 无法ping通另一台云主机:10.19.255.192 问题分析 1. route命令看路由表信息: [root@10- ...
- linux路由介绍,Linux的路由表详细介绍
Linux的路由表详细介绍 一 在Linux下执行route命令[root@localhost backup]# route -nKernel IP routing tableDestination ...
- linux路由表命令
转自此大神http://www.cnblogs.com/gunl/archive/2010/09/14/1826234.html 留在好查阅 linux 路由表维护 查看 Linux 内核路由表 使用 ...
- linux 路由表 的一些相关资料
=============================================================================== linux 路由表维护 查看 Linux ...
- linux内核 默认路由表,[Linux] linux路由表-Go语言中文社区
路由表用于决定数据包从哪个网口发出,其主要判断依据是目标IP地址 Linux路由表其实有2个主要概念:按顺序走路由策略,在路由策略对应的路由表中匹配规则 路由策略(rule) 路由表(table) 查 ...
- Linux 路由表和静态路由
路由表和静态路由 Linux 内核路由表 查看Linux内核路由表 使用下面的route 命令可以查看Linux 内核路由表. $ route Kernel IP routing table Dest ...
- 【博客611】linux路由表机制
linux路由表机制 场景: linux是支持多路由表的我们可以通过创建不同的路由规则,在路由规则来挂载带有不同路由条目的路由表来定制化路由的匹配过程.并且路由规则的匹配条件可以由我们自由来决定,比如 ...
最新文章
- java显示位图_java – 大图标位图在通知中显示为白色方块?
- android 请求方式有哪些,Android中的几种网络请求方式详解
- linux下修改网卡接口名称
- linux命令查看cpu架构,Linux下如何查看CPU信息
- python中的特殊成员
- VS 2010的一些常用问题
- EntityFramework Core进行读写分离最佳实践方式,了解一下?
- [Java基础]类和接口的关系
- html5 字母索引,jQuery建立一个按字母顺序排列的友好页面索引(兼容IE6/7/8)
- iOS开发隐藏tabBar的问题
- 省地县级联操作 http://www.popub.net/script/pcas.html
- dls 深度受限搜索java_JAVA深入学习(栈和队列)之栈
- 开局崩盘!IDEA 2020 无法启动的解决办法|赠送 IDEA 2020 新功能
- opencv3 与opencv2不同之处
- 中国支付清算发展简史
- 高一计算机会考英语作文,高一考试英语作文常考题目及范文
- android-Intent,Injector,Template,Adapter,Validation,Gesture,Game,Game Engine,Bluetooth...
- 改造家里的开关成为智能开关,保留原有开关控制,零火版,射频遥控器篇(二)
- 管理类书籍读后感(散落在外的那些)
- 基于JavaWeb+Mysql的网上销售管理系统