B 站硬件大佬又在 GitHub 上开源了一款神器...

2023-05-16

公众号关注 “GitHubDaily”

设为 “星标”,每天带你逛 GitHub!

转自量子位

这次,野生钢铁侠稚晖君带着他的硬核项目又来了。

上次自制纯手工打造 AI 小电视,播放量就超过 300 万,还登上了 b 站首页。

可能有些朋友对他还有点陌生。

他毕业于电子科大生物医学工程,大学期间就自学计算机,现为 OPPO 算法工程师,还是 Arduino 中文社区版主。

那么「稚晖君」这次带来的是什么样的新奇项目呢?

如何让门禁卡做成你用不起的样子?—— 纯手工自制智能卡片,公司小区门禁通刷,还带电子墨水屏,将自己的头像显示卡片上。

还延续了上次的传统,野生钢铁侠的「铁律」—— 足够迷你

它是这样的。

就是那个 UP 主手里小小的,写着「稚晖」二字的 DIY 卡片。

视频上传不过一天,播放量就逼近 100 万

这个项目也在 GitHub 上开源,短短两天就收获 1.3k 星。

不过开源又怎么样,网友表示还是做不出来。

开源很了不起吗?说的好像你开源了,我就能做出来似的。

那么这样一个「就算开源也做不出来」的项目到底是怎么样的呢?

我们就来好好了解一下。

这张卡公司小区门禁通刷

让稚晖君萌生这种想法的原因是,每天出门要携带各种卡片,非常不方便。

有了这张自制卡片,稚晖君就能优雅地打开公司大楼和办公室门禁。

你也许会说,现在很多手机不是也支持模拟门禁卡了吗?

没错,手机的确能实现模拟门禁卡,但是只有一部分 NFC 手机支持,而且现在大部分门禁卡都是加密卡,手机门禁卡不能复制这类卡片。

所以稚晖君希望能自制一个便携式卡片,具有以下能力:

首先是可以存储多张卡片信息,当然包括对加密卡的存储。

其次,还要具有随时可擦写的能力,让设备可以修改、添加、删除卡片。

最后是具备 NFC 标签功能,比如通过苹果手机上的 NFC 捷径设置,实现一些快捷功能。

为了方便在各种卡片之间切换,稚晖君在卡片侧面加入了一个拨轮,只要轻轻拨动即可,是不是有当年黑莓手机、Walkman 线控内味了?

可以当记事本的万能门禁卡

你以为稚晖君的 L-ink 仅仅支持模拟 NFC 卡片吗?显然不是,否则又怎能称得上 “你用不起的样子”。

L-ink 支持用电子墨水(E-ink)屏幕把各种图片显示在卡片上,这恐怕也是 L-ink 名字的来源,ink 即取自电子墨水屏。

不过,这款门禁卡的电子墨水屏因为成本问题,比亚马逊的 Kindle 简陋得多。它只支持黑白两色的显示,不支持显示黑白之间的各种灰色。

稚晖君用自己的一张照片直接显示在屏幕上,效果总感觉怪怪的。

怎么办呢?解决方案是用图像抖动的方法:控制某一片区域中黑点的密度来实现灰阶显示。经过这一番处理后,人像照片就显得自然多了。

卡片屏幕还有一个更实用的功能,显示二维码。这样你就可以把自己的电子名片或者收款码随身携带啦。

或者你是个健忘症患者,也可以把自己待办事项同步到这个电子墨水屏上。

以上功能都是通过稚晖君开发的手机 App 实现的,只要把卡片往手机背后一贴,几秒内就能完成图像的同步。

但是这么做也带来一个问题。稚晖君发现,这个功能在手机上使用不太稳定。

原因是 NFC 卡片的电力来自手机 NFC 发射的电磁波能量,但是不同手机的 NFC 发射功率差异很大,有些手机能达到 30mW,而有些手机只有 10mW,不足以给卡片供电。

稚晖君最初的想法是使用电容来蓄电,但是操作过程需要等待几十秒的时间,因为不够优雅最终改成用纽扣电池供电。

经过稚晖君的计算,每天用手机和卡片之间传输图像 10 次,一节 CR2032 纽扣电池足够用 3 年。而且只有按住卡片正面的按钮才从手机取电,所以电池应该可以用得更久。

现在手机 App 还处于一个早期的阶段。稚晖君承诺,未来还会加入风格迁移这些计算机视觉功能,让拍摄的照片更适合显示在墨水屏上。

网友:up 主量产吧,我买!

怎么样?看完之后,是不是觉得就算开源也做不了。而他本人说,这只是工作繁忙之余,抽空填坑。

但做不了也没关系,可以用就够了呀!于是就有网友给他建议:

UP 主量产吧!买它!

还有网友直接问,这个多少钱,我买一个。

甚至「家里有矿」的盆友看到了商机,直接说:这个项目我投了。

甚至网友还为其集思广益:众筹,淘宝开店等等。

玩笑归玩笑,毕竟「量产」的实现还有一定的距离。

那不如就瞅着最近的。

在视频的最后,up 主说,下次抽奖我可能会送出一个 L-ink 卡片

我就帮到这里了。

传送门

视频演示:
https://www.bilibili.com/video/BV1Cf4y1y7KT

项目地址:
https://github.com/peng-zhihui/L-ink_Card

---

由 GitHubDaily 原班人马打造的公众号:GitCube,现已正式上线!
接下来我们将会在该公众号上,为大家分享优质的计算机学习资源与开发者工具,坚持每天一篇原创文章的输出,感兴趣的小伙伴可以关注一下哈!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

B 站硬件大佬又在 GitHub 上开源了一款神器... 的相关文章

  • C++创建信号量 CreateSemaphore

    一 定义 Semaphore也是一个线程同步的辅助类 xff0c 可以维护当前访问自身的线程个数 xff0c 并提供了同步机制 使用Semaphore可以控制同时访问资源的线程个数 xff0c 例如 xff0c 实现一个文件允许的并发访问数
  • OpenGL ES之GLSurfaceView学习一:介绍

    原文地址 http 120 132 134 205 cmdn supesite uid 5358 action viewspace itemid 6527 GLSurfaceView是一个视图 xff0c 继承至SurfaceView xf
  • C++之STL迭代器

    一 背景 迭代器 iterator 是一种抽象的设计理念 xff0c 即迭代器模式 xff0c 通过迭代器可以在不了解容器内部原理的情况下遍历容器 除此之外 xff0c STL中迭代器一个最重要的作用就是作为容器 vector queue
  • C++make_shared的使用

    一 使用 make shared是标准库函数 xff0c 此函数在动态内存中分配一个对象并初始化它 xff0c 返回指向此对象的shared ptr 由于是通过shared ptr管理内存 xff0c 因此这是一种安全分配和使用动态内存的方
  • cmkae命令set_target_properties

    一 介绍 命令的格式如下 set target properties target1 target2 PROPERTIES prop1 value1 prop2 value2 Sets properties on targets The s
  • cmake的install

    一 介绍 一般使用cmake xff0c 常用命令就是 mkdir build amp amp cd build cmake make make install install命令为项目生成一系列的安装规则 在执行make install时
  • cmake命令之list

    一 介绍 cmake的list命令即对列表的一系列操作 xff0c cmake中的列表变量是用分号 分隔的一组字符串 xff0c 创建列表可以使用set命令 xff08 参考set命令 xff09 xff0c 例如 xff1a set va
  • Cmake之ExternalProject_Add

    一 介绍 ExternalProject命令可以很好的解决项目中使用第三方库 提高项目的可用性 ExternalProject Add 函数创建一个外部工程可以驱动下载 更新 补丁 配置 构建 安装和测试流程的自定义目标 语法 xff1a
  • POI导入Excel,获取公式的值

    直接POI导入Excel中的数据的时候 xff0c 直接获取表中的值 xff0c 如果表中单元格的值时由公式计算得出的话 xff0c 获取到的会是公式 所以需要对获取的单元格的值进行处理 xff1a 导入数字时 导入公式的计算结果而非公式
  • navicate连接远程数据库

    远程主机的3306端口一般是不允许外网直接访问的 xff0c 但是开发过程中 xff0c 使用navicate工具进行数据库操作会方便超级多 xff0c 那么要怎么配置navicate连接远程数据库呢 超简单两步走 xff1a 1 使用se
  • idea中Gradle项目控制台中文乱码

    我使用的是IEDA2021 xff0c 之前跑maven项目一切正常 今天导入了一个Gradle项目 xff0c debug的时候控制台中文乱码了 之前直接用idea控制台中文乱码做关键词搜索 xff0c 改了file settings e
  • @RequestMapping value值置为““

    我们通常用 64 RequestMapping来映射请求 xff0c 比如 xff0c 写一个方法 xff1a span class token annotation punctuation 64 RequestMapping span s
  • Android多媒体学习十:利用AudioRecord类实现自己的音频录制程序

    AudioRecord类相对于MediaRecorder来说 xff0c 更加接近底层 xff0c 为我们封装的方法也更少 然而实现一个AudioRecord的音频录制程序也很 简单 本实例代码如下 xff1a 可惜 xff0c 本实例测试
  • ROS系统SLAM基础学习:运行gazebo仿真建立保存地图

    ROS系统SLAM基础学习 xff1a gazebo仿真建立保存地图 使用gmapping建立并保存地图使用hector slam建立并保存地图遇到的问题解决以及总结 软件版本Ubuntu16 04LTSROSkineticgazebo7
  • 软件安装时窗口出现在屏幕左上角而且拖不出来

    今天在安装MYSQL是出现如下问题 xff1a 安装助手出现在屏幕左上角而且拖不出来 xff0c 导致安装没办法完成 用一个很简单的方法解决了问题 xff1a 桌面空白处右键 xff0c 点屏幕分辨率 把方向改成纵向 xff0c 左上角的窗
  • DELL笔记本插入耳机没反应

    新入的戴尔燃7000 xff0c 上午因为CPU占用飙升 xff0c 关掉了笔记本上的几个自启动项 xff0c 下午插入耳机就无响应了 xff0c 耳机插进去 xff0c 还是外放 百度原因 xff0c 很多都提及了Realtek这一声卡驱
  • the server responded with a status of 404 (Not Found)

    使用ajax跳转方法时 xff0c 页面ctrl 43 shift 43 i调试报告了一个404错误 xff0c 说找不到方法 页面地址栏直接指向方法的地址跳转也是404 目标方法是新增的 xff0c 于是使用复制黏贴 xff0c 确定各处
  • select设置只读

    根据需求 xff0c 需要根据后台传来的参数 xff0c 动态设置select标签是否可以选择 xff0c 因此 xff0c 当判断某个select应当设为只读时 xff0c 使用 span class hljs variable span
  • java:程序包XXXX不存在

    使用idea导入maven项目 xff0c 编译时报错 xff1a java 程序包XXXX不存在 如图 xff1a 百度到的诸如右键libraries所在文件夹 xff0c 选择add to libraries 等方法没有作用 后来去查看
  • tomcat启动报错:java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.Lifec

    tomcat启动报错 xff1a java lang IllegalStateException ContainerBase addChild start org apache catalina Lifec 百度的结果一般都是让修改web

随机推荐

  • UE4 音乐的播放与停止--基于蓝图

    要实现的功能非常简单 xff1a 点击按钮 xff0c 播放音乐 这个功能非常基础 xff0c 就两步 xff1a 1 将音乐源文件拖到context文件夹中 注意 xff0c 这里的音乐文件必须是 wav格式的 2 在按钮的onclick
  • UnityEditor.BuildPlayerWindow+BuildMethodException

    unity3D安卓打包报错 xff1a UnityEditor BuildPlayerWindow 43 BuildMethodException 61 errors at UnityEditor BuildPlayerWindow 43
  • AI 入门怎么学?这份学习指南请收好!

    万事开头难 xff01 AI 入门对很多初学 AI 的同学来说是一大难题 搜集了一大堆入门资料 xff0c Python 数学 深度学习应有尽有 xff0c 但就是无从下手 xff0c 总是在第一章与放弃之间徘徊 那么 xff0c AI 应
  • 为什么越厉害的大厂,校招越不看重考试成绩?

    前几天赵同学告诉我 xff0c 他没有通过那家心仪的公司笔试 赵同学成绩不错 xff0c 每次都是专业前五 xff0c 但笔试中有一道 银行家算法实现 题 xff0c 他一点也没写出来 这就是大厂招聘不看重成绩单的原因 xff1a 招人是为
  • 我的2011——毕业之年的总结与彷徨

    题记 眼看2011即将成为过去 xff0c 难得在这最后的时刻 xff0c 抽点时间 xff0c 倒上一杯热茶 xff0c 回忆这一年的浮浮沉沉 这一年 xff0c 我和所有毕业生一样 xff0c 离开了呆了四年的大学校园 呆腻了校园的生活
  • centos安装anaconda教程

    1 更新yum 命令 xff1a sudo yum update 2 安装anaconda 2 1 查看anaconda对应python版本 我选的3 8版 Old package lists Anaconda documentation
  • Android布局 -- Navigation实现底部导航栏

    底部导航栏加页卡的切换 xff0c 很多App采用这种布局设计 xff0c 在以前的开发中 xff0c 需要自定义底部导航栏以及使用FragmentTransaction来管理Fragment的切换 xff0c 代码量较大 xff0c 而使
  • ViewModelProviders is deprecated

    原有的创建ViewModel的方法 xff1a viewModel 61 ViewModelProviders of this get ViewModel class 提示ViewModelProviders过时 改为 xff1a view
  • Android Fragment退出 返回上一个Fragment与直接退出

    例如应用底部有两个导航按钮A与B xff0c 刚进入的时候显示为第一个AFragment xff0c 点击B切换到BFragment 如果需求是在BFragment点击返回键回到AFragment xff0c 需要配置 app defaul
  • Android基础 -- 子线程可以修改UI吗?

    子线程可以修改UI吗 xff1f 为什么会产生这样的问题 xff0c 可能是因为在开发过程中遇到了 34 Only the original thread that created a view hierarchy can touch it
  • leetcode 417. 太平洋大西洋水流问题

    https leetcode cn com problems pacific atlantic water flow 思路是从海洋开始逆流 如果可以逆流到 就标记为1 然后检查两个海洋都可以逆流到的区域 DFS public List lt
  • Android模拟器检测常用方法

    在Android开发过程中 xff0c 防作弊一直是老生常谈的问题 xff0c 而模拟器的检测往往是防作弊中的重要一环 xff0c 接下来有关于模拟器的检测方法 xff0c 和大家进行一个简单的分享 1 传统的检测方法 传统的检测方法主要是
  • RecyclerView 隐藏部分分割线

    在项目中遇到复杂点的RecyclerView xff0c 可能会有隐藏部分分割线的需求 xff0c 例如item1和item3之间的分割线隐藏 xff0c item4和item5之间的分割线隐藏等 在看了文档里的ItemDecoration
  • 浅谈去中心化应用

    1 中心化应用 现在我们所使用的应用基本上都是中心化的应用 xff0c 什么是中心化应用呢 xff0c 举个栗子 xff0c 我们在天猫买东西的时候 xff0c 需要先付款给支付宝 xff0c 然后卖家发货 xff0c 我们确认收货之后 x
  • Java二分搜索树及其添加删除遍历

    对于树这种结构 xff0c 相信大家一定耳熟能详 xff0c 二叉树 二分搜索树 AVL树 红黑树 线段树 Trie等等 xff0c 但是对于树的应用以及编写一棵解决特定问题的树 xff0c 不少同学都会觉得不是一件简单的事情 xff0c
  • 游戏平台SDK设计和开发之旅——XSDK功能点梳理

    做游戏开发或者相关工作的同学 xff0c 可能都知道 xff0c 在游戏上线之前 xff0c 需要将游戏分发到各大渠道平台 xff0c 比如九游 xff0c 百度 xff0c 360 xff0c 华为等等 其中和技术相关的事情 xff0c
  • 谈谈 GitHub 开放私有仓库一事的影响

    GitHub 此次宣布免费开放私有仓库 xff0c 在我看来有以下几点影响 xff1a 缓和与同类产品间的竞争压力小部分个人项目由开源转闭源微软在技术社区中的企业形象进一步强化为未来的企业服务预热 下面根据以上几点 xff0c 我来简单谈下
  • 每天坚持刷 LeetCode 的人,究竟会变得有多强... 学习技巧都藏在这几个公众号里面了......

    信息爆炸时代 xff0c 与其每天被各种看过就忘的内容占据时间 xff0c 不如看点真正对你有价值的信息 xff0c 下面小编为你推荐几个高价值的公众号 xff0c 它们提供的信息能真正提高你生活的质量 人工智能爱好者社区 专注人工智能 机
  • 超酷炫!智能无人机中文教程重磅上线!

    前 言 对于大多数无人机爱好者来说 xff0c 能自己从头开始组装一台无人机 xff0c 之后加入 AI 算法 xff0c 能够航拍 xff0c 可以目标跟踪 xff0c 是心中的梦想 并且 xff0c 亲自从零开始完成复杂系统 xff0c
  • B 站硬件大佬又在 GitHub 上开源了一款神器...

    公众号关注 GitHubDaily 设为 星标 xff0c 每天带你逛 GitHub xff01 转自量子位 这次 xff0c 野生钢铁侠稚晖君带着他的硬核项目又来了 上次自制纯手工打造 AI 小电视 xff0c 播放量就超过 300 万