14383|9

9

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

Kindle PaperWhite作为树莓派的命令终端 [复制链接]

其实网上已经有人做过类似的事情了,不过国外的好像用的而是老旧的Kindle3,国内的好像一般都是Kindle PaperWhite吧!参考了网上的一片教程,不过原作者是在Mac系统下完成的,我就写写在Win下实现的教程吧!大体上是一样的,不过有些小细节不太一样!



准备工作:
1,Raspberry Pi一台
2,已越狱的Kindle PaperWhite一台(越狱教程我不写了,网上大把,越狱文件在这里
3,USB转microUSB数据线2根,一根给Raspberry Pi供电,一根作为Kindle和Raspberry Pi的连接线


安装USBNetwork
USBNetwork工具可以通过usb数据线连接kindle和另一台电脑,实现ssh登录。
安装步骤如下
下载Kindle-usbnet-0.1.5N.zip,解压以后仔细阅读README_FIRST.txt文件
将update_usbnet_0.15.N_install_touch_pw.bin拷贝到Kindle根目录
Kindle里工具栏菜单[设置]–> 工具栏菜单[更新您的Kindle],安装完成后会重启




安装完成以后Kindle更目录会多出一个usbnet目录和extensions\usbnet目录
编辑usbnet\etc\config文件,修改如下
[Shell] [color=rgb(51, 102, 153) !important]纯文本查看 [color=rgb(51, 102, 153) !important]复制代码

USE_WIFI="true"USE_OPENSSH="true"

开关USBNetwork模式
[AppleScript] [color=rgb(51, 102, 153) !important]纯文本查看 [color=rgb(51, 102, 153) !important]复制代码
在Kindle的搜索框内,输入;usbnetwork或者;un。再输入一个可以切换。

查看网络状态
[AppleScript] [color=rgb(51, 102, 153) !important]纯文本查看 [color=rgb(51, 102, 153) !important]复制代码
在Kindle的搜索框内,输入;711。可以查到当前无线网卡的IP地址

记下当前的IP地址!


如图,我的IP地址是192.168.1.104,后面需要用到!
接下来打开Kindle目录下的/usbnet/etc/config文件,找到KINDLE_IP=XXX.XXX.XXX.XXX这一行,并记下IP地址,后面也要用到


如图,我的IP是192.168.15.244

通过USB线登录Kindle

用USB线连接Mac和Kindle
默认Kindle会被挂载成存储设备,先弹出该设备
然后开启Kindle的USBNetwork模式

Win8.1j下的RNDIS/Ethernet Gadget驱动肯能会有些问题,其实Win7就已经自带驱动了,只是需要告诉系统这是一个网络设备,具体教程看这里
如果成功,网络连接那里会多出一个本地连接!

接下来配置这个以太网:
IP地址填写通过;711查到的那个,我的而是:192.168.1.104
子网掩码:255.255.255.0
默认网关填写config文件里面查到的那个:192.168.15.244
如图:

接下来我就可以用Putty通过SSH登陆Kindle了,IP地址填写192.168.15.244。但是问题来了,密码和用户名!!!用户名应该是root无疑,但是密码怎么破?!国外有大神用Python写了个脚本通过Kindle的序列号可以算出登陆密码,但是那个脚本是针对Kindle4和Kindle3的,我亲自试过已经不能用于Kindle PaperWhite了!怎么办?!没关系,Putty里面不是有个叫做PUTTYGEN.EXE的东西嘛~用它可以生产两个随机的密钥文件,一个放Kindle里吗,另一个放PC上,用这两个文件即可登陆!具体做法如下:
打开PUTTYGEN.EXE,点击 Generate,然后根据提示随机移动鼠标来产生随机密钥(不依靠外借的话,电脑CPU无法产生真正的随机数~)


把生成后的 Public key for pasting into OpenSSH authorized_keys file 里面生成的文本复制下来,打开/usbnet/etc目录,将该目录下的config文件复制多一个,用记事本打开,把刚才复制的内容黏贴过去,并将文件重命名为authorized_keys不要有后缀,authorized_keys.txt是错误的),这个是公钥!
技巧:到etc的目录里,采用复制一个config文件的方式,重命名为authorized_keys,然后打开将公钥中生成的内容复制保存进去,不要用下面的按钮生成,也不要新建文本。(那些存出来的不是LINUX格式的文本,否则login的时候总提示你连接超时不要说俺没提醒你)。
然后点击软件的 save private key 按钮,取个名字(例如Private_keys),保存到本地硬盘,这个是私钥,运行Winscp程序时会使用这个文件。

打开WinSCP,主机名:192.168.15.244,用户名是root,密码空着,密钥文件用刚才保存在电脑上的那个PPK文件!


点击登录,应该就能登录到Kindle了!

安装KUAL和Kterm
KUAL是Kindle Unified Application Launcher的缩写,其作用是为越狱的Kindle启动第三方应用。简单的说通过一本特殊的书籍来统一实现启动触发器。
下载kindle-mkk-20140214
解压后将Update_mkk-20140214-k5-ALL_install.bin文件拷贝到Kindle根目录,Kindle安装.bin文件的方法都是一样的,Kindle里点击[更新您的Kindle],然后会显示安装进度,自动重启后完成。
下载KUAL V2.3
解压后将KindleLauncher-2.0.azw2文件拷贝到Kindle的/documents目录
断开连接后Kindle里多了一本《Kindle Launcher》的书,点开有一排可以启动的应用列表。




打开后是这样的

Extend
Extend是一组扩展的预编译好的linux命令行工具,让Kindle可以运行一些常用的linux命令,如:openssh,nano,screen,irssi,php,bash,rsync等。
下载optware_img_60m.zipkindle_extend-1.1.zip
解压kindle_extend-1.1.zip到kindle_extend-1.1目录
解压optware_img_60m.zip将optware.img文件替换kindle_extend-1.1/extend/optware.img文件
将kindle_extend-1.1目录下的extend和extensions子目录拷贝到Kindle更目录
然后打开WinSCP通过SSH登录Kindl,命令——终端,执行如下命令:

[Shell] [color=rgb(51, 102, 153) !important]纯文本查看 [color=rgb(51, 102, 153) !important]复制代码
[color=white !important][backcolor=rgb(108, 226, 108) !important]
[color=white !important]?

1

2

3

4

5

6

mntroot rw
mkdir /mnt/us/circles
cp /mnt/us/extend/mountd /mnt/us/circles
mntroot ro
/mnt/us/extend/install.sh
/mnt/us/extend/mount.sh






Kterm
Kterm是一个内置虚拟键盘的GTK+的Kindle终端模拟器
下载Kterm
解压后将此文件替换kterm/bin/kterm文件。
然后将kterm文件夹拷贝到Kindle的extensions目录下
断开Kindle与电脑的链接,通过KUAL打开Kterm,随便Ping台机器试试。



配置Raspberry Pi的USB网络连接

安装了USBNetwork,Kindle已经可以通过数据线和Mac电脑连网,接下来配置Raspberry Pi的USB网络链接,使Kindle插入Raspberry Pi以后可以自动建立网络连接。
[Shell] [color=rgb(51, 102, 153) !important]纯文本查看 [color=rgb(51, 102, 153) !important]复制代码
[color=white !important][backcolor=rgb(108, 226, 108) !important]
[color=white !important]?

1

sudo vim /etc/network/interfaces






添加如下内容
#USB tethering
allow-hotplug usb0
iface usb0 inet static
    address 192.168.15.1
    netmask 255.255.255.0
    broadcast 192.168.15.255
    up iptables -I INPUT 1 -s 192.168.15.1 -j ACCEPT
    up eject /dev/sda1

allow-hotplug usb0表示插入USB后自动加载网络配置

up eject /dev/sda1表示弹出Kindle自动挂载的磁盘分区


重启网络

[Shell] [color=rgb(51, 102, 153) !important]纯文本查看 [color=rgb(51, 102, 153) !important]复制代码
[color=white !important][backcolor=rgb(108, 226, 108) !important]
[color=white !important]?

1

sudo service networking reload





见证奇迹的时刻断开Raspberry Pi和路由器的连接
使用数据线连接Kindle和Raspberry Pi
开启USBNetwork模式,Kindle的搜索框内,输入;un然后回车
打开Kterm键入
[Shell] [color=rgb(51, 102, 153) !important]纯文本查看 [color=rgb(51, 102, 153) !important]复制代码

[color=white !important][backcolor=rgb(108, 226, 108) !important]
[color=white !important]?

1






如果你的Raspberry Pi仍然连接这路由器,那么就把后面的IP地址改成Raspberry Pi当前的IP地址即可
若提示输入密,说明大功告成。



最后奉上美图一组:





























最后亚马逊说送我一台Kindle Fire HD平板让我继续折腾。。。。好吧,亚马逊竟然对工程师这么好,有点感动~


最新回复

IP  到底是 192.168.1.104 还是192.168.15.104  详情 回复 发表于 2014-6-15 13:55

赞赏

1

查看全部赞赏

点赞 关注
 

回复
举报

9161

帖子

6

TA的资源

管理员

沙发
 
  楼主这个大作一定要上头条了
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
 

回复

565

帖子

5

TA的资源

纯净的硅(中级)

板凳
 
顶一个
 
 
 

回复

200

帖子

1

TA的资源

一粒金砂(中级)

4
 
谢谢分享,就是里边排版有些乱啊
 
 
 

回复

1181

帖子

0

TA的资源

五彩晶圆(初级)

5
 
不错
 
 
 

回复

19

帖子

0

TA的资源

一粒金砂(中级)

6
 
本来想转到人人上去的,我也用paperwhite。不过觉得kindle太慢了,大一点的影印版PDF跑不了,键盘处理也慢,写这个手感不会很好。不过还是赞一个!!!

点评

嗯,确实卡翔,没什么实用价值,也就是折腾来玩玩儿~  详情 回复 发表于 2014-5-7 22:05
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(中级)

7
 
cool!
个人签名读万卷书,行万里路
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

8
 
laxch123 发表于 2014-5-7 12:52
本来想转到人人上去的,我也用paperwhite。不过觉得kindle太慢了,大一点的影印版PDF跑不了,键盘处理也慢 ...

嗯,确实卡翔,没什么实用价值,也就是折腾来玩玩儿~
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

9
 
楼主,kindle paper white 2 可以吗
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

10
 
IP  到底是
192.168.1.104
还是192.168.15.104
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表