分类 博客文章 下的文章

Freenom域名注册的常见问题与自动续期

前言:

最近突然想再注册一个Freenom域名,发现遇到一些问题,此处记录,以免日后再注册时候不记得,再次踩坑。另外记一下 Freenom 的自动续期,看到本文的人也能知道还有这种好事儿!

常见问题:

Freenom不显示注册页面

Freenom 只有登录按钮,点进去的登录页面也没有注册按钮。这个情况是因为 Freenom 页面提供了Google和Facebook 登录的选项而没提供直接的邮箱注册页面,不幸的是它们在中国大陆被屏蔽了。这个问题只需要先检查域名就可以了,选好域名最后 Checkout 时是会给出邮箱注册账号的页面的。

注册域名提示无法使用

一般出现在第一次注册时,或者是浏览器IP变化时候,Check Availability 查找域名后点击 Get it now! 时提示域名无法使用(Not available)。这种情况一个可能是没有账号先检查域名的注册流程中,这种情况填写域名时需要将域名后缀一起填入。另一个有账号的情况可能是登录失效了,如果已经注册账号,刷新重新登录即可。没有账号就前面方法注册一个账号。

注册域名提示技术错误

注册域名时遇到提示技术(Tech)错误,此问题是因为你浏览器当前的IP和你账号资料里面填写的区域国家不一致,从而触发了 Freenom 的反欺诈。可考虑修改资料中的国家地区,或更换与注册地相同的IP代理访问。(不建议使用代理注册域名)

点击 完成订单 提示不能确定你是人或没有反应

使用中国大陆网络访问 Freenom 注册域名可能会在最后一部点击 Complete Order 时网页没有反应、或是提示不能确定你是人。这是因为 Freenom 使用了 Google 的 reCAPTCHA 人机验证,而Google因为某些原因被大陆屏蔽。所以,国内无法正常连接位于 www.google.com/recaptcha 的 reCAPTCHA 服务。可以使用浏览器插件 Gooreplacer 拦截重定向到 recaptcha.net/recaptcha 就可以正常使用该服务了。

以Chrome 为例,只需要在浏览器扩展程序中搜索安装 Gooreplacer ,打开其配置页面并新增一条规则,匹配模式为 www.google.com/recaptcha ,目标地址为 recaptcha.net/recaptcha ,匹配类型为 通配符 。最后确定规则启用就可以了。

经过以上设置后,回到 Freenom 的网站,Ctrl + F5 刷新网页,重新登录,应该就可以正常注册域名了。

自动续期:

Freenom 域名可以免费注册,但是最多只能注册一年。在到期前的两个星期内为免费续订期,如果错过了这几天,域名可能就需要付费注册抑或是与你无缘了。为了保证域名一直在自己手中,我在Microsoft 日历中添加了相关的提醒事项,并且使用大佬 @luolongfei项目 进行自动续期。

因为考虑腾讯云提供了免费的云函数服务,而自动续期检查使用的资源开销很小,完全不会超出腾讯云的免费额度,所以本人使用了腾讯云的云函数运行了自动续期脚本。只需要去腾讯云注册个账号,然后十分钟左右时间部署一个云函数项目就可以了。相关的使用与部署方法大佬在README中写的非常详细了,此处提供个小建议,不必设置每天检查,一个星期检查两次就可以了。其他具体部署本文不再赘述。

参考:

斐讯N1刷CoreELEC实录

前言:

斐讯的挖矿盒子N1质量不错,配置相对不低。可玩性很高,可以刷的系统很多,比如:Android电视盒子、Kodi电视盒子、CoreELEC电视盒子、EmuELEC游戏盒子;也可以刷成Armbian、CentOS7等Linux系统;还可以刷网心云分享宽带赚取收益。考虑缺一个专业的电视盒子看4K影片,于是笔者决定为其刷入CoreELEC系统做一个电视盒子。整个过程中还是踩了不少坑的。

机器配置:

机型: 斐讯(Phicomm)N1
CPU: 晶晨(Amlogic) S905D
GPU: Mali-450 MP
RAM: 2GB DDR3
ROM: 8GB eMMC
以太网: RTL8211F 1000Mbps

据说,它的 CPU 是 ARM Cortex-A53 四核 1.5G,带有的 ARM Mali™-450 GPU 支持 4K60fps硬件解码,能提供 HDMI 2.0 输出。

注意:目前N1 使用 CoreELEC 19.x 版播放HDR10片源会直接崩溃,然后数秒后复位重启。9.2.7 版本目前无此问题,考虑稳定建议使用9.2.7。刷入方式网上教程很多。

警告:刷写固件是一件危险的操作,它不同于常见的计算机安装系统。操作失误可能会导致无法挽回的损失,甚至因此报废您的硬件,请谨慎操作!

刷入 CoreELEC:

降级、刷入改版固件:

因为笔者器在以前已经刷过webpad大佬的官改2.2系统了,此处大致讲一下刷Android盒子的方法。首先,插鼠标快速点击四次固件版本以解锁ADB,注意不要再锁上。然后使用大佬提供的降级工具对机器进行降级。完成降级后使用双A口USB线连接靠近HDMI的USB口到电脑,使用晶晨线刷工具对其进行刷机。注意:只有官方和官改等盒子类固件的存储分区结构可以刷 CoreELEC。具体可参考:斐讯N1探索手记#1 – 降级并刷入armbian系统斐讯天天链N1 官改v2.2N1刷完ARMBIAN想恢复EMMC超级简单线刷法,还可救砖.

更换启动画面:

刷写固件后可能有人会对开机启动画面不满意。和安卓系统的手机类似,电视机顶盒也有两个启动画面。最开始通电时显示的叫做第一屏,系统启动中显示的动画叫第二屏。第一屏可以通过Amlogic Customizationtool 修改固件包的方式或通过文件刷入相关分区的方式修改。第二屏则是通过替换文件 /system/media/bootanimation.zip方法修改。

此处因后期刷入CoreELEC,第二屏使用CoreELEC的即可。所以此处仅修改第一屏。

方法一:使用DD刷入

logo.PARTITION文件存储在方便的位置,然后插上键盘,打开终端,执行以下命令。

su
cd /XX/XX/  # cd 到 logo.PARTITION文件的目录
dd if=logo.PARTITION of=/dev/block/logo
reboot

这样就可以看到第一屏启动画面变更了。笔者用的此方法,比较简单。

方法二:ADB方式:

Android系统下打开ADB网络调试,然后PCB端使用ADB工具连接,执行以下命令重启至fastboot。

adb connect 盒子IP  #即类似:adb connect 192.168.1.1:5555
adb shell reboot fastboot

然后使用双公头USB线连接电视盒子与计算机,执行以下命令检查设备连接,不行的话可能要检查下驱动。

fastboot device #查看是否连接到设备

设备如果存在,则继续,请注意,logo.PARTITION文件应该提前放置于fastboot相同目录。

fastboot flash logo logo.PARTITION

fastboot reboot

方法三:使用Amlogic Customizationtool

此工具可以更换固件的第一屏,重新打包后再刷入即可更换第一屏,但是需要刷机,不太推荐。具体不在本文讨论范围内!

写 CoreELEC 启动盘:

Core ELEC 是一个以启动 Kodi 为主设计的一套方案,它基于一个精简的 Linux 系统。网上能找到大佬编译好的固件,将其下载下来,使用镜像写入工具写入U盘即可。项目在此:RuralHunter/CoreELEC ,文件在Releases中,这次我使用的19.2版本。

设置从U盘启动:

将制作好的启动盘插入靠近HDMI的接口,执行以下命令将重启并从U盘启动,可以在终端模拟器中,也可以远程ADB调试中。

reboot update

注:此命令正常执行后会重启从U盘启动。如若重启后进入 Recovery,则可能是U盘故障、写盘软件异常、Bootloader 异常等。建议使用带有验证功能的软件(如Etcher)写盘,不建议使用 win32_disk_imager 。故障依旧建议更换U盘。

基本设置:

重启后启动U盘中的CoreELEC系统,第一次启动会出现设置向导。第一页的语言设置中没有中文选项保持默认的英语,然后点击 Next ;第二页这里设置主机名称,我没有修改直接点击 Next ;第三页等待网络信息加载完成,网线会自动获取,WIFI需要自行在此页连接一下,然后点击 Next 。第四页是分享和访问控制,需要把SSH打开,这样才能远程连接shell 。点击 Next 会提示配置完成,再次点击 Next 即可进入系统界面。

进入系统后首先修改中文界面。首先需要在 Interface > Skin 下将 Fonts 修改为 Arial based ,否则修改中文语言后会无法正常显示中文字体。接下来需要在 Interface > Regional 下将 Languages 修改为 Chinese(Simple) ,系统会开始在线安装语言包,等待其完成安装后界面就会变成中文。然后回到此界面,将下面的时区国家修改为China,这样时间就正常显示了。

如果分辨率不合适需要修改,可以去 系统 > 显示 下按实际需求修改分辨率和刷新率。

将固件刷入EMMC:

注意:将固件刷入 EMMC 会清空其中原有的系统和用户空间数据,有重要资料请注意提前备份!

警告:以下操作将清空 EMMC 中原有的系统和用户空间数据!

此方法来自恩山大佬整理,原帖在此。下载大佬准备好的脚本文件包,将其解压。使用WinSCP或其他SCP工具通过root用户连接N1,密码前面如果没有修改默认应该是 coreelec ,将解压后的文件上传到 root 用户目录。

使用SSH通过 root 用户连接到N1,连接后默认应该位于 root 用户目录,使用 ls 命令检查文件存在,然后执行命令 bash installtoemmc 开始安装。如下所示回显信息可供参考,完成后会自动关机,SSH连接会提示中断。此时拔电拔下U盘,重新上电即可从EMMC引导CoreELEC启动。

CoreELEC (RuralHunter): 19.2 (Amlogic-ng.arm)
CoreELEC:~ # ls
backup         log.sh         music          screenshots    tvshows
installtoemmc  lost+found     pictures       scripts        videos
CoreELEC:~ # bash installtoemmc
rootfs: /dev/system, storage: /dev/data, root_part: 11
This script will erase BOOT, SYSTEM, DATA and DTB on your device
and install LE that you booted from SD card/USB drive.

It will create a backup of device tree and recovery partition on your boot media.

The script does not have any safeguards!

Formatting SYSTEM partition.../dev/system contains a ext4 file system
        last mounted on /system on Xxx Xxx xx xx:56:18 2021
done.
Copying SYSTEM files...done.
Formatting DATA partition...done.
Stopping Kodi...done.
Copying user data...
All done!
WARNING: If your internal memory layout is different from standard Amlogic, you have to perform this operation again!
Your system will reboot from internal memory.

配置 CoreELEC

获取、检查 IPTV 源

IPTV 源的获取可以去网上搜索一番,恩山能找到专门的板块,也可以去某些论坛或Q群找,一般保存为m3u 或 m3u8格式。使用 IPTV Checker 软件可以快速检查保存为 m3u 格式的 IPTV 源是否有效。经过检查后点击Online筛选出有效的,然后保存到新的文件即可完成检查。

打开某位无名大佬的EPG频道列表服务,将上面保存的 m3u 文件上传到该网站,可以快速为频道列表添加台标。这样导入Core ELEC后就可以看到台标了。最后把文件放到CoreELEC能访问的位置,等待使用。比如,可以通过 U 盘或 SCP 传到N1的存储空间中,也可以放到 NAS 上,然后在 CoreELEC 的文件管理中通过 SMB 协议添加到挂载中。

安装、配置 IPTV 插件

在 CoreELEC 的主界面上点击齿轮状的 设置 图标,选择 插件 。点击 从库安装 > 所有库 > PVR客户端 > PVR IPTV Simple Client ,点击安装。等待其联网安装完毕,点击 设置 ,在常规中设置 IPTV 源列表的位置(上文准备的),在 电子节目单 中配置 EPG 频道列表源,列表源上文中的网站提供了,可以按需求添加。完成配置后点击右侧 确定 即可完成插件配置。

此时回到主界面,将左侧光标移动到电视处,就可以看到添加的节目了。日后就可以在此看电视了。

安装字幕插件和影视信息刮削器

回到插件的所有库中,选择 字幕 ,选择 OpenSubtitles.org 并安装。去电脑上使用浏览器打开 OpenSubtitles 的官网,注册一个账号。然后将账号密码填入插件的设置中保存。然后去 设置 > 播放器 > 语言 处,将 首选字幕语言 改为 用户界面语言 。然后向下滚动找到下载字幕语言,将其原始的 English 取消掉(光标选中按确认),向上滚动选中 Chinese 和 Chinese(Simple),点击右侧 确定 保存设置。最后将默认剧集服务和默认电影服务都选为 OpenSubtitles 完成字幕插件的设置。

同样是在插件的所有库中,选择信息提供者 > 电影信息 ,安装 The Movie Database(默认应该已经安装,注意不要使用Python版本,笔者测试发现其不稳定)。然后进入其设置,将 首选语言 修改为 zh-CN ,点击右侧 确定 保存。然后在信息提供者 > 剧集信息中,同样也是这个插件(默认应该已经安装),设置成zh-CN。

确保N1已经联网且打开SSH,在设置里面看一下IP,在电脑上使用SSH连接。使用 vi /storage/.config/hosts.conf 命令打开host文件,添加如下内容:

13.224.161.117 api.themoviedb.org
13.33.144.120 api.themoviedb.org
13.33.144.2 api.themoviedb.org
65.8.80.24 api.themoviedb.org
13.33.144.88 api.themoviedb.org
13.33.144.74 api.themoviedb.org
13.226.254.58 image.tmdb.org
13.227.73.57 image.tmdb.org

保存退出即完成添加HOST内容。然后就可以去文件管理里面添加视频目录,设置视频类型,分别使用电影和电视剧的刮削器获取信息了。观看过程中,在播放器中可以搜索下载字幕。

安装天气插件

依然是在插件的所有库中,选择天气目录,安装 Gismeteo 插件。然后点击设置,在 Location setup 中设置位置,一般是地名的拼音。如果搜不到,可以手动去网站搜索所在地,搜到当地天气后记住浏览器地址中的数字部分,将其输入到天气插件设置的 Expert 选项中的 Location * ID 中,点击右侧保存按钮进行保存。最后回到上一层菜单,点击 启用 即可完成天气插件的配置。

其他:

重启蓝牙遥控器连接失效?

看大佬们分析说原因貌似是文件系统权限问题。笔者没有蓝牙遥控器,以下提供帖子参考:

参考:

Windows系统下载安装 Blackmagic Disk Speed Test

为何会有本文?

看到很多大佬做评测会用一个名为 Blackmagic Disk Speed Test 的软件对某个“媒体位置”测速。与常见磁盘测速软件相比,它的特点是可以选择某个目录开始测速,于是它便可以很方便对网络位置进行测速。通过使用该工具测试存储媒体,我们可以直接了解到其能录制的视频。该工具可以很方便的在Mac的商店中找到,但笔者百度了一番,没有找到 Windows 下载指导。经过一番研究,发现此软件属于 Blackmagic Design的 Desktop Video 软件包 ,该软件包可以看作是其视频采集卡的驱动程序(上位机)。我们虽然没有购买其硬件,但不影响安装此软件包获取这个测速工具。

如何获取?

  1. 访问 Blackmagic Design 官网,在Support中选择 Capture and Playback

  2. 在左侧的 Latest Downloads 中下载最新版本的 Desktop Video 软件包。

  3. 安装下载 Desktop Video 软件包。

  4. 在 开始菜单 中找到 Blackmagic Disk Speed Test 应用程序。

  5. 运行程序,点击齿轮图标,在弹出的菜单中选择 Select target drive ,选择要进行读写测试的目录。

  6. 在主界面点击 SPEED TEST START 即可开始测速。

如果觉得安装这个软件包太大,而且没有相关硬件主程序毫无用处,可以将测速软件的文件夹单独拷贝出来,然后将软件包卸载。

此处提供笔者从 Desktop Video 12.1 中提取的 Blackmagic Disk Speed Test V3.3 版本下载,链接失效不补。

为路由器刷入第三方固件——以ASUS ACRH17刷OpenWrt为例简述其思路

前言

最近翻出一个之前不知放在哪的ASUS ACRH17路由器,而且K2P、新三之类的路由器已经用了很多年了,是时候换一换了。同时感觉华硕原厂的固件功能太少,于是有了刷OpenWrt系统的想法。很多人都知道给电脑重装系统、给手机刷机,但不一定听说过给路由器刷机。那么给路由器刷第三方固件这项活动是因何而起的呢?

当Linksys在2002年发布了使用Linux作为系统内核设计的WRT54G路由器,就为后来第三方固件的流行埋下了种子。转眼2003年3月Cisco收购Linksys。同年6月,Linux内核开发组听说WRT54G固件使用了包含GPL开源协议的Linux代码,遂要求Linksys开源相关部分代码,为此FSF还因此起诉Cisco,最终7月Cisco迫于外界压力开源了WRT54G的固件。至此,极客行动了起来,各种定制的固件和给路由器刷机的行为就流行了起来。后来大浪淘沙,其中OpenWrt、DD-WRT、Padavan、Asuswrt-Merlin(梅林)、Tomato、PandoraBox等固件成为了主流第三方固件项目。

注意:本文主要记录路由器刷入第三方固件的思路,以备日后刷其他型号路由器时参考,而刷固件的操作是因机而异的,随着相关项目的更新,某些操作可能会有变化。为路由器刷入第三方的固件的操作是个需要细心的活。您可能因为误操作、意外等情况损坏设备,所以务必小心操作!笔者不承担您的任何相关风险。

软件和硬件的准备:

  • 连接shell的终端软件:用于通过SSH协议或串行口连接到路由器shell,可以使用PuTTY或其他熟悉的工具。
  • SCP客户端或一个U盘:备份出厂数据或固件时,用于通过网络传输文件到本地,使用scp(Linux),WinSCP (Windows)或其他自己熟悉的软件。或存储到U盘中(需要路由器有USB接口)。
  • 网线、USB TTL转换器:通过网线连接以支持SSH登录、SCP传输文件等。USB TTL线可用于连接路由器主板的TTL调试接口,以访问Shell。

步骤

  1. 准备固件映像
  2. 建立到路由器的shell连接
  3. 备份原厂数据
  4. 刷入新固件

准备固件映像

刷机自然是要先把新固件准备好,这一般来源于论坛或Q群,比如恩山、OP大群、OpenWrt官方Wiki;也可以自己从GitHub拉取项目代码编译,这需要Linux系统并且有些难度。

根据不同机型,我们可能需要准备:

  • 最终使用的系统固件(一般为后缀包含squashfs-sysupgrade的固件)
  • 中转固件(一般是类似Linux Live CD那种RAM加载的临时系统固件,后缀为initramfs-kernel.bin;或是专用于从官方固件过渡到OpenWrt的系统固件,后缀包含factory字样)
  • Bootloader固件(某些情况下我们需要刷入新的Bootloader,比如不死Uboot、Breed等)

并非在所有情况都需要准备以上所有固件,具体选择哪些文件,需要视情况而定。

比如,之前接触的Cisco Meraki Z1,其原厂固件非OpenWrt,不支持直接刷入sysupgrade,便有大佬编译了initramfs-kernel固件供大家使用DD指令刷入作为中转,然后通过该固件中提供的sysupgrade指令支持刷入最终的squashfs-sysupgrade固件。

而像ACRH17,虽然该机器保留原厂的Bootloader可以使用原厂提供的救援工具刷回原厂,但网友大多都是要刷第三方的Bootloader以实现通过Bootloader随意刷机的需求。需要注意的是,Bootloader对于路由器这类嵌入式设备是非常重要的 ,所以无论原厂固件还是一般的OpenWrt固件都是不允许重写Bootloader区域的,于是有网友编译了解锁Bootloader的squashfs-flash-factory固件。通过在原厂固件的固件升级页面中直接刷入该固件,便可以在Shell中执行重写Bootloader的命令了,最后便可通过第三方的Bootloader进行刷固件或一些其他的高级功能。

建立到路由器的shell连接

建立到路由器的Shell连接的方法,可以分为免拆机法和拆机法。不同型号能使用的方法不同,因为拆机法对于动手能力和工具有一定要求,所以优先选择免拆机的方法。

路由器的主板在设计时大多会留出四个排在一起的焊盘,这时为硬件调试留出的TTL串口,需要通过一定的电路分析经验找出其GND、TXD、RXD,然后通过USB-TTL转接器连接到电脑,在电脑的设备管理器中确认其串口号,然后使用Putty或SecureCRT等工具通过端口号连接。根据不同机型,有的可能需要提升Root权限,有的可能需要登录。

有些路由器厂商屏蔽了开启SSH远程登录的功能,但它的固件是使用OpenWrt固件定制的,这类便有机会通过浏览器注入等方式打开屏蔽的SSH。然后利用IP地址和端口号(默认22)使用Putty、Xshell等工具建立Shell连接。

而像ACRH17,华硕官方本身提供了打开SSH的设置,我们在系统管理->系统设置中将启用SSH选项设置为是即可打开SSH。然后利用IP地址和端口号(默认22)使用Putty、Xshell等工具建立Shell连接。

备份原厂数据

备份原厂数据也有拆机和免拆机两种方法。

目前路由器存储固件采用的存储器通常是SPI Flash或NAND Flash。SPI Flash一般会是8MB或16MB,容量较小;而NAND Flash容量相对大一些,比如ACRH17的NAND Flash容量为128MB。拆机取下存储器,通过烧录器连接电脑直接读取整个存储器的二进制映像以备份的方法是一种可靠的方法,但其需要的技术和工具也是个麻烦,SPI Flash的烧录器约20元左右即可买到,而NAND Flash的烧录器价格几百上千,这绝不是电子爱好者可以承受的。

ACRH17采用的128M NAND Flash方案,笔者家贫,没有NAND Flash烧录器,上文种已经获建立了SSH的连接,本文主要介绍的便是通过Shell备份。

  1. 使用以下命令查看分区结构,从回显的信息我们可以得知有mtd0~8共九个分区,以及其对对应的名字。
admin@RT-ACRH17:/tmp/home/root# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00400000 00020000 "Bootloader"
mtd1: 07c00000 00020000 "UBI_DEV"
mtd2: 0005d000 0001f000 "nvram"
mtd3: 0001f000 0001f000 "Factory"
mtd4: 0001f000 0001f000 "Factory2"
mtd5: 03013000 0001f000 "linux"
mtd6: 02e11440 0001f000 "rootfs"
mtd7: 03013000 0001f000 "linux2"
mtd8: 02e11440 0001f000 "rootfs2"
  1. 使用 dd if=/dev/mtd* of=/tmp/mtd*_NAME.bin 命令依次备份各分区,备份文件的名字建议使用分区序号加名称。例如备份Bootloader的命令如下:

    admin@RT-ACRH17:/tmp/home/root# dd if=/dev/mtd0 of=/tmp/mtd0_Bootloader.bin
    8192+0 records in
    8192+0 records out
  2. WinSCP使用SSH的连接信息登录,然后从 /tmp 目录复制到本地进行妥善保存即可。需要注意的是, /tmp 目录是存在于路由器的RAM中的,断电后会丢失,所以在操作完毕前不要断电或重启路由器。

  3. 实践发现因为UBI_DEV分区太大,临时分区的剩余空间不足以存储其备份文件,这时我们可以借助一个U盘来存储备份的文件。插入U盘后可以在 /mnt/ 目录下看到U盘,使用U盘存储空间的路径替换上文命令的 /tmp/ 即可将文件备份到U盘中。此方法便不需要WinSCP来传输备份文件了。

  4. 虽然备份的文件大概率我们是不会用到,但是有了备份后我们便可以更放心的为其刷入固件了。

注意:ACRH17较重要的便是Factory区,其称为ART分区。据说其存储了该机器的无线校准数据,此为备份的重点关注对象。将所有分区全部备份后, 我们可以根据其名称和大小分析其具体的功能,有经验的大佬甚至能将其切割拼接做成编程器固件(可使用WinHex工具处理)。

刷入新固件

这次刷的是ACRH17,参考多数大佬的方案,刷不死OpBoot和OpenWrt。因为原厂系统以及默认的OpenWrt固件均不允许修改Bootloader,所以需要先刷入允许写入Bootloader的特殊OpenWrt固件,此功能是在OpenWrt固件编译时配置的。

  1. 在ACRH-17原厂固件升级页面上传并刷入解锁Bootloadder的 squashfs-flash-factory 固件并重写启动。

    用户名:root 密码:password

  2. 使用U盘或WinSCP将opboot文件传输到路由器的 /tmp 目录下,参考使用以下格式命令计算其MD5并核对是否损坏,如有损坏切勿刷入。

    md5sum /tmp/rt-acrh17-opboot-XXX.bin
  3. 校验无误后参考使用以下命令格式解锁Bootloader并使用OpBoot覆写。

    mtd unlock /dev/mtd0
    mtd -r write /tmp/rt-acrh17-opboot-XXX.bin Bootloader
  4. 按住WPS键接通电源,即可通过浏览器访问OpBoot固件更新页面,按页面提示上传固件即可刷入。

不同机型会有不同的方法。其他机型,有可以在原厂Bootloader中直接通过命令刷入新固件的,这种机型一般可在连接TTL串口时通过特定按键中断以进入Bootloader,也有可通过按键组合进入Web固件更新页面,但大多数的厂商会限制Bootloader只能刷入或引导原厂固件,这类情况一般通过更换第三方的Bootloader解决。具体可以参考Installing OpenWrt

如何将ACRH17刷回官方固件:本文方案已经将Bootloader和系统都刷写成了第三方,如果只需要将系统刷回第三方可直接在华硕官网下载该路由器的最新固件,然后解压并在OpBoot页面刷入即可。如果需要将Bootloader也刷会原厂,可通过OpBoot的高级功能刷写Boot loader实现,mleaf大佬在此处提供了相关文件。

参考

HP39gs计算器改装锂电池供电

前言:

简而言之,就是切断电池仓正极连接,换成锂电池。为锂电池并联一个充电模块,充电模块供电从MINI USB接口取电。ADC电压采样电阻是R17和R18,把R17 换成 1MΩ 、R18 保持 2MΩ 不变,这样修改后,使用锂电池时电压高于3.85V,应当不会再提示Low Bat。按照这个核心方案干就完了,下面全是废话。

(回忆···)

首先说明,下文讲述的笔者是5年前干的事情的,前端时间看见欠陥電気大佬写的搞机贴,觉得此事我可以水一篇博文。那时我还是在校学生,是校电协成员。记不清是哪位朋友发现这款型号为HP 39gs的计算器在某宝以非常便宜的价格销售,仅27.58元。从来没有接触过图形计算器的我,通过搜索引擎了解到这款计算器属于图形计算器,2006年上市,当时售价千元。里面是一枚SAMSUNG S3C2410A ARM处理器,该处理器最高频率约200MHz,在该计算器中,官方设计为75MHz。据说可使用HP Basic编程语言编写程序以在此计算器上运行,另外其不支持CAS,这些我不懂。我们几位社员一合计,咱们也从来没用过图形计算器,现在有机会必须试试。好家伙,这计算器值!于是大家就入手(Keng)了。注:经简单了解,目前此计算器价格有所上涨;另外因年代久远且其设计理念不佳(S3C2410A上运行的Saturn CPU模拟器,然后模拟器上运行SysRPL),所以在当今看来,功能少,运算慢,据说其根本不适合日常工程计算使用。购(Ru)买(Keng)需谨慎!当然,笔者拿来当普通计算器算个加减乘除感觉还是可以的。算的数多了也慢。

基本规格:

*
型号: 惠普 HP 39gs 图形计算器
CPU: Samsung S3C2410A(ARM920T单核) @75MHz (实际最高约200MHz)
Memory: 256KB RAM (用户实际可用约200KB) ,1MB Flash
通信接口: USB Mini-B(Kermit 或 XModem协议) , IrDA ,4PIN 3.3V异步串口
供电: 4×AAA电池作为主电源 ,CR2032纽扣电池用于数据保持
屏幕: 131×64 像素+上方状态条 单色LCD,对比度可调
语言: sRPL , HP-Basic
其他: 内置蜂鸣器,带有硬质保护壳,不支持CAS
上市时间: 2006年 06月

注:上表信息来自维基百科

准备工作:

实践本文内容需要如下硬件准备:

  • HP 39gs 计算器
  • 合适大小的锂聚合物电池
  • 锂电池充电模块
  • 导线若干(建议线规约22AWG)
  • 螺丝刀(十字 1.0左右)
  • 薄型撬片(或撬棒)
  • 万用表(选配)

需要在技能树中点亮如下技能:

  • 电子产品拆卸技术
  • 基础电路知识
  • 基本锡焊技术

警告:电子DIY需要有一定的相关知识与技能,操作过程有静电损坏元器件风险,使用烙铁焊接有烫伤风险。请谨慎操作,避免受伤或损坏设备。笔者不会对您的改装行为所造成的任何损失负责!

改装:

我们在使用一周后发现了这一问题,耗电太快了。四枚普通AAA电池,使用一个星期就低电警告了。这对于我们这种穷苦学生怎么承受的了,所以大家想改锂电。原有供电系统为6V,考虑S3C2410A为3.3V IO系统,外围器件也多为3.3V供电,所以考虑单节锂电池供电是可能的。那年正是MPOS火爆推广的时候,1元即可买到一个MPOS还包邮,里面可以拆出拇指电池、4055单节锂电池充电IC、3.3V LDO、高精度运放IC、蓝牙模块、单片机(运气好可能是STM32)。这便给改装提供了思路,杀一只MPOS即可提供电池和锂电池充电IC,如果嫌一节电池容量太小,可以杀两只POS鸡。整个改装过程主要分为以下几步:

  1. 拆机
  2. 验证实际工作电压范围
  3. 查找并改装电压采样
  4. 制作充电电路
  5. 装配以完成改装

1.拆机:

该机器拆机简单,首先取下硬质塑料保护壳,使用薄撬片小心取下屏幕保护盖,避免划伤。使用螺丝刀拆下两颗螺丝,然后使用撬片沿机身四周撬开并取下底壳。需小心注意底壳上有电源与蜂鸣器的连接线,避免失手扯断连线。必要可使用烙铁拆焊部分连接线。请牢记各连线焊接位置,必要可拍照记录,以确保在装配时能正确复原

2.验证工作电压范围:

拆下主电源(电池仓)连接线,临时焊接测试线,连接到数控电源,使用数控电源输出模拟锂电池电压变化。经过粗略测试,电压需要保持在3.68V以上计算器才能正常工作。虽然锂电池可以放电到更低的电压,但是计算器不能在那个电压下正常工作。这表示,虽然使用单节锂电池方案不能完全使用电池的电量,但也是可行的。

3.查找并改装电压采样:

首先检查主板上的所有IC,发现没有ADC。猜测低电检测是使用CPU内置的ADC实现的,4枚AAA电池电压高达6V以上,必有分压电路进行电源电压采样后再输入ADC。一般来说,电压采样电路可能更靠近ADC,此处即应靠近S3C2410A。考虑专业设计一般会引出测试点,先对周围测试点进行电压测量,如果能测到一个会随电源电压变化而变化的电压,大概就是电压采样测试点,如果测不到那就该对周围的电阻两端进行测量,找出会随电源电压变化的点。经过测量发现,S3C2410A右上角的测试点明显符合预期。观察PCB走线,发现与R17和R18有连接。测量两颗电阻阻值分别为1.8MΩ和2MΩ,皆在兆欧级别,也符合电压采样分压电阻的规格。至此,便成功的找到了分压电路。

理论上,接下来通过数控电源提供各种电压进行测试,确定ADC输入的电压低于多少时触发低电提醒。测量后我们确认到的是2.4V,实际电池低电电压与ADC触发电压的差与ADC触发电压的比值即为R17和R18的比值。经过估算,R17 = 1.5MΩ 、R18 = 3.9MΩ应当是个不错的组合。但是实际更换后并不能按照预期提示低电,无论电量多低都没有低电提示,直到电压低至无法开机也没有低电提示。鄙人学艺不精,无法理解什么原因,但这是无法接受的。经过多次实际测试,最终我们选择将R17 换成 1MΩ 、R18 保持 2MΩ 不变,这样计算器大约会在低于3.84V提示低电,充电至高于此电压后便不会出现低电提示。

4.制作充电电路:

可充电的锂电池装到计算器里面,当然不能没有充电电路。大家可以某宝购买TP4055、TP4056等充电模块,价格很便宜。笔者当年使用了中指甲盖大小的一片单面洞洞板,将MPOS机中拆出的4055充电IC整到了上面。4055充电IC为SOT23封装,以左下角为起点1脚,逆时针旋转依次为2~5脚。1脚接充电指示LED负极,LED正极过1K电阻上4脚,与其一同连接至输入+;2脚接GND;5脚为充电电流编程脚,过一个电阻接地,阻值大小视电池容量决定;3脚为输出,连接到电池+。

5.装配:

最后我们需要将计算器装起来,前面如果都能搞定,这个并不难。把电池的正负极与充电模块的输出正负极分别连接,然后连接到计算器的主电池输入。从USB口附近或其他方便的地方引出5V电源和GND到充电模块的输入。切断电池仓正极的连接,把电池粘在底壳合适位置以保证能盖好底壳,然后把充电模块粘在电池仓缝隙处,保证能从外面看到充电指示灯。最后把底壳装回去就大功告成了。

参考:

HP 39gs --惠普官网

hpcalc.org

The HP HOME view

将 HP 39gs 升级为 HP 48gII--欠陥電気

计算器自检/HP-39GS

HP39gs 从入门到精通(完全教程)

我该用什么词典?——翻译工具的选择

前言

在研究电子技术和计算机技术的过程中,大家都不可避免的需要接触英文资料;如果英语水平不够,遇到不懂的单词、甚至成段看不懂的情况,那便需要翻译了。传统的纸质词典、电子词典等使用相对低效,在我们使用电脑看英文文档的当下,翻译这件事自然也是用电脑完成。通常,我们会通过浏览器使用谷歌、必应、百度、有道等提供的在线翻译网页查单词、整段翻译,也会在电脑上安装翻译工具程序进行翻译。而后者,作为一个应用程序,通常能提供比通过浏览器工作的在线翻译更好的使用体验。本文前部分会使用较小的篇幅记录笔者翻译工具使用史,后面的部分则介绍笔者如何配置、使用商业词典欧路词典和开源词典GoldenDict。

笔者的翻译工具使用史

说起笔者最开始使用的翻译工具,那应该是有道,那时我刚接触电脑时间不长,只是偶尔用词典软件查过几个单词,安装词典可能只是为了体验通过电脑查单词的这个过程。那时有道有鼠标取词的功能,闲暇时刻我会用鼠标胡乱指向一些中文的词语,将其翻译成英语。

后来笔者入了电子技术这个坑,阅读Datasheet的困难便随之而来,虽然我英语从未挂科,但只满足不挂科的英语水平的确不足以阅读Datasheet,更别提里面很多专业的词汇上课也不会学。可能那时比较流行使用破解版商业软件,又可能是因为PDF文档中取词的需求。看了百度上众多网友的推荐,我选择了使用破解版的金山词霸企业版,因为里面多个词库看起来蛮专业的,而且它有Adobe Reader取词插件,可以很方便的在PDF文件中拖动光标选取内容进行整段的翻译,翻译结果会自动显示。而有道不支持Adobe Reader,自然不会再使用它。

转眼来到2021年的某一天,我秃然发觉金山词霸是用了那么多年,想来这么多年过去,翻译工具是否会有更好的选择呢?一番搜索之后发现很多人都推荐欧路词典,下载安装后发觉界面不错,自带词库查词返回内容也挺多,支持整段的翻译,甚至它还有一个截屏取词的功能。取词与划词默认配置可能不适合所有人,其选项可以根据个人需求进行更改。虽然是商业软件,它的免费版本也没有广告,这点值得称赞。欧路词典可以挂载第三方提供的词库扩展,支持常见的Mdict和灵格斯格式。针对扩展词库,免费版本只能显示前两个。其实对于非英语专业来说,两个可能也够了。如果需要挂载更多扩展词库,欧路词典的价格也不贵,也就三箱桶面的样子。

通过对欧路词典几天的使用,我发现它经常出现划词翻译失灵的现象,这个问题也有可能是和其他翻译工具冲突的原因。抛开此问题不谈,我还发现它的鼠标取词功能识别率略低,之前使用金山词霸几乎没有的识别错误问题,短短几天欧路发生了好几次,但是后来的几天错误率降低了。但是软件版本并没有更新,这个表现很迷,难道是后台直接更新了部分文件还是什么其他的东西自动改变了?这些表现可能与我电脑软件环境有关,但我还是对欧路词典的稳定性抱有怀疑。

在发现欧路词典可能不稳后,开始寻找其他替代方案。想起前面看到的Mdict格式,便打算去了解了一下Mdict是什么,通过搜索引擎搜索后了解到这也是一款词典,功能不是很强,但是很多权威大辞典都是打包成这种格式。然后看到有人对Mdict、欧路词典和GoldenDict进行了简单对比,我了解到了GoldenDict是一款开源软件,它支持的词典格式较多,同时它也支持Mdict格式。然后发现了nonwill大佬优化过后的GoldenDict++OCR,这是支持OCR取词的GoldenDict版本。下载简单使用了一下后发现,功能确实挺不错,它还有一个称之为构词法规则的功能很实用。但它没有欧路词典这种商业软件那么美观的界面,配置也会比较复杂,想要使用它需要一定的折腾能力,但它是免费的。

目前我主要尝试使用欧路词典,而GoldenDict为辅。因为我不是英语专业类工作,也不是英语研究爱好者。我只是需要一个翻译工具用来翻译我无法读懂的文档。这种情况,一个简单易用美观的翻译工具是有必要的。如果欧路词典的划词稳定性没有问题,我可能会考虑购买付费版本;如果有问题,则会考虑换用GoldenDict。

词典的配置与使用

以下记录笔者使用时的配置,系统为Windows10,其他系统没有测试。仅供参考。

欧路词典:

首先是第三方词库的安装,因为免费用户只能加载两个扩展词库,所以需要做一些取舍。如可以安装一部带发音的词频词典和一部权威大词典(或行业词典),排序时把词频词典放第一,自带英汉汉英放第二,权威大辞典放第三以避免长篇幅挡住自带词典内容。如果不使用权威大辞典而是使用词条篇幅较短的行业词典,可以考虑和自带英汉汉英对调。

添加词典的操作过程。单文件的词典直接在词库管理中点击安装词库>选择文件,按照提示添加即可。多文件的词典安装时需要点击安装词库>选择文件夹。包含外观样式文件的词典,需要现在设置中心中点击打开软件配置目录,打开欧路的配置文件目录,复制词典自带的样式文件到这个目录。

欧路词典的划词翻译功能可能有问题,勾选开启划词翻译功能选项,使用光标选择一段内容后会出现翻译按钮,点击此按钮有时会出现无效的情况。但是手动划词快捷键F7按下还是能正常翻译的。这个问题可能是本人系统环境造成,也可能是欧路词典本身的Bug。针对此问题,建议记住快捷键F7,去掉开启划词翻译功能选项勾选,后期使用快捷键调用划词翻译。再记住一个截屏翻译快捷键:Ctrl+Alt+D,必要时可以直接截屏翻译。我个人始终认为:快捷键比点击图标更高效

其他设置就是比较常规的,比如我勾选了关闭窗口时最小化到状态栏。这样就可以缩到通知区域里面,不占用任务栏了。勾选启动Windows系统时自动运行,这样就可以随系统启动。如果不喜欢它的每日一句等在线内容,可以取消这个勾选,主页就会更清爽一些。其他一些快捷键也可以按实际习惯修改。

GoldenDict:

主程序安装与配置官网提供的版本已经太旧了,不支持mdx和mdd格式的词典文件,可以去SourceFORGE下载。建议使用nonwill大佬优化过后功能更强大的GoldenDict++OCR,这个有OCR功能,我也是用的这个。大佬针对Windows编译的版本都是便携版(Portable),根据自己系统下载主程序包解压到合适位置后,可以下载Dictionary文件,里面有一些共享的词典样式表和字体文件。

确保GoldenDict++OCR未打开,在其主目录下,新建portable文件夹和content文件夹。解压Dictionary文件中的dicts目录下的内容到content文件夹,解压portable目录下内容到portable文件夹。然后运行GoldenDict++OCR,点击编辑~~>首选项,打开首选项的设置页面。在此可以设置显示风格(即主题)和附加样式(查词结果显示区域的样式),.该词典上古风格的主题,在现在的审美看来糟糕透了,咱肯定不能指望免费的东西有什么漂亮的主题,但还是有必要按照自己喜好修改一下。我分别选择了灵格斯-蓝色调modern-yeah。如果需要随开机启动,可勾选随系统启动。取词和划词选项卡可以修改相应功能的快捷键,OCR取词默认快捷键是Ctrl+B+B,这个快捷键与Adobe Acrobat冲突,所以我的改成了Ctrl+Shift+C+C

词典的安装:与欧路词典需要付费不同,GoldenDict不需要付费即可加载多本词典,但是加载过多的词典可能带来使用卡顿。如果是对英语进行研究,可能需要查看大量不同词典;如果只是一般应用,建议尽量少装词典,像上文欧路配置两本词典也可以。具体按照操作:将词典文件解压到content目录,点击编辑~~>辞书在来源选项卡的文件选项卡引入前文创建的content目录的路径,然后在辞书选项卡中可以看到已经扫描到的词典。辞书排序栏中不需要的辞书,可以托拽到禁用栏中。

启用构词法规则:学习英语过程中,有时我们可能需要了解这个单词的来源是什么单词,以便更好地记忆、学习、理解单词。如果之前我们正确的将morphology文件夹放到了content目录,那么在来源选项卡下的构词法规则库页面,我们可以勾选需要的构词法(比如英语),应用设置后我们查询单词时如果在构词法库中有记录,则会在单词页面上附加显示来源词的释义。比如搜索sustainable,除了给出此单词释义是形容词可持续的,还会给出sustain的释义是动词维持。这个功能欧路词典是没有的。构词法词库还用于拼写错误时给出拼写建议。比如我听了一个词:algorithm,但我不知道如何拼写,我随手打出:aogerithm,然后GoldenDict便会给出拼写建议:algorithm,而欧路词典的建议是通过联网的网络释义实现的。

整句翻译:与其他商业公司的翻译软件相比,GoldenDict一个很大的缺点就是没有整句翻译。这个需求可以通过调用外部程序实现。因为Google翻译等对自己的翻译API做了限制,经过大佬们的努力,他们通过调用外部的一个Python程序实现,Python程序负责调用Google翻译API并把结果返回GoldenDict。笔者使用的xinebf提供的项目,托管于GitHub,项目页有详细的安装说明。

首先需要安装Python3.7以上版本,然后通过pip3 install google-translate-for-goldendict命令配置这个项目,接下来在GoldenDict中点击 编辑 - 字典 - 字典来源 - 程式,添加如下条目:

类型: Html
名称: Google Translate
命令行: python -m googletranslate zh-CN %GDWORD% -s "translate.google.cn"

图示请从GitHub项目中下载保存到合适位置,然后设置位置。保存设置后尝试使用快捷键对英文句子取词,即可看到整句翻译结果。

到此,本文结束。其他使用技巧大家可自行摸索,如果有什么见解,也可以在下面留言。

参考: