边界条件之场
66 subscribers
680 photos
4 videos
10 files
1.03K links
Do you hear the sirens sing?

main: @cvf_cha
group: @cvf_gro
forwards: @cvf_for
Download Telegram
尝试从 vim 换到 neovim ,想要最小化配置所以没用 plugin manager,结果第一步装主题就死活装不上 🤡

搞了大半天才弄明白我其实使用了正确的手动安装方法,一大堆报错只是因为 debian 软件仓库里的 neovim 版本实在太老 🫠

upstream/tumbleweed: v0.9.5
debian: v0.7.2
Forwarded from DBin_K 🤯 Tingle 灵光一闪 💡 (DBin_K ∣ 人工智矿👾)
学习单片机太难了!可怕得像一场灾难。

翻了后一页,就忘了前一页的内容,因为每一页都有无数细节,根本记不住。也不知道哪些重要哪些不重要,作者只是一股脑都告述你。玲琅满目的新名词,看起来完全不像中文,读起来像生造词。每一个概念又牵扯出一大堆其他概念,好像永远没有尽头。我们这本看不懂,就看那本,但都差不多。

书里事无巨细罗列的各种细节,好像把你当成一个计算机,疯狂地给你输入知识点。如果我们当时了解机器学习的话,会发现这个过程很像监督学习,只是被训练的是人脑而不是机器。

我想,我们的教育里,有很多东西是非常先进的,它仿佛早就知道神经网络的重要性,于是提前用训练机器的方式,来训练人脑。遗憾的是,大多学生的大脑(比如我和老杨),不像人工神经网络那样先进,这当然不怪我们的教材和教育方式,怪我们的大脑不行 :)

树莓派社区热情而友善。 那些爱好者写的教材,都有这个气质,他们没有傲慢地板着个脸,像我跟老杨读到的教科书那样,让你一会儿解着这道题,一会儿解那道题; 他们告诉你可以用手中的玩意儿,找点乐子,别管是不是恶作剧,玩得开心就好; 他们给你提供无微不至的引导,努力用人话跟你解释点亮一个LED的过程看似微不足道,但发生了什么了不得的事情; 他们不会丢给你一堆读不懂的名词, 让你永无止境记东西; 最重要的是,他们传递想法和乐趣 …


来源 种瓜 (@wwj718) 的博客 :
- 从 MicroBlocks 开始你的硬件编程之旅
- 给老杨的礼物🎁
Making my own usb to usb keyboard mapper, just learned that you need to PAY THE FUCKING USB-IF to get a vendor id and a product id, which are needed to uniquely identify your usb device to the host.
边界条件之场
Making my own usb to usb keyboard mapper, just learned that you need to PAY THE FUCKING USB-IF to get a vendor id and a product id, which are needed to uniquely identify your usb device to the host.
成功让 raspberry pi pico 作为 usb hid 键盘设备向电脑周期性输出 "quick brown fox" 了!
接下来……需要学习 usb host-side spec、研究怎么用 pico 的 pio block 实现一个额外的 usb 控制器 (?),然后才能写一个 usb host 实现来接收实体键盘输入,映射后传给电脑 🫠

大概还要搞懂 microcontroller interrupts 怎么工作、如何使用 🫠
👍1
尝试使用别人写的 c 代码:

变量名全是缩写
不写注释
没有文档

🥴🥴🥴
🤯1
边界条件之场
成功让 raspberry pi pico 作为 usb hid 键盘设备向电脑周期性输出 "quick brown fox" 了! 接下来……需要学习 usb host-side spec、研究怎么用 pico 的 pio block 实现一个额外的 usb 控制器 (?),然后才能写一个 usb host 实现来接收实体键盘输入,映射后传给电脑 🫠 大概还要搞懂 microcontroller interrupts 怎么工作、如何使用 🫠
读了 RP2040 datasheet,了解到这颗 mcu 内置的一个 usb 控制器能工作在 host device 模式,不能同时(符合预期)。

读了 USB Made Simple ,知道了实现一个 usb 控制器意味着从最底层的 线上电压 开始 -> Serial Interface Engine (SIE) 转换电压变化为 usb packet -> 不同种类的 packet 构建 transaction -> 不同种类的 transaction 构建 transfer -> 各种 transfer 再组成一次次 usb 协议通信。

从头实现怎么看都是一个 tedious manual labor ……好在有人已经把这事做了: Pico-PIO-USB 。不得不说 RP2040 的 PIO 模块真的太强了,能凭空给开发板多搓出一个 usb 控制器来 🤔
今天有人提到 Lasse Collin 对于 xz 项目早就疲惫不堪,Jia Tan 是极少数愿意真正贡献代码的“开发者”,这都是这场悲剧不可或缺的背景条件。

在无人关心的角落,Florian Westphal 最近辞去了内核 netfilter co-maintainer,所以现在 nf 只剩 Pablo Neira Ayuso 一人维护。这可是无数人每天使用的 netfilter。

在无人关心的角落,我最爱的工具之一 strace 依然只由一个捷克人 Dmitry V. Levin 默默维护。

在无人关心的角落,tcpdump/libpcap 在由 the-tcpdump-group 持续更新,其中一位 Denis Ovsienko 的自我介绍是 sometimes I work jobs for living, sometimes I contribute pro bono to free and open source software projects, often I do both,给人一种很孤独的感觉。

在无人关心的角落,bash group 只有三位 active members,其中一位 Bob Proulx 有个古典博客,里面有记录他和妻子的平静生活。

我以前赞美人月神话,但我现在更关心默默无闻的开发者们,就像 vim 作者 Bram Moolenaar 一生没有和任何人建立亲密关系,我只想问,你这一生过得开心吗?

你们这些伟大的开发者们过得开心吗?
艹!买了台小米 13,想着出场预装 miui 不用搞恶心答题解锁
结果到手开机第一幕:
Xiaomi HyperOS
😨😨😨😨😨😨😨😨😨😨😨
边界条件之场
艹!买了台小米 13,想着出场预装 miui 不用搞恶心答题解锁 结果到手开机第一幕: Xiaomi HyperOS 😨😨😨😨😨😨😨😨😨😨😨
用了 8 年 google 原厂 android + lineageos ,期间夹杂着一些一加 氢/氧,我知道这次选择国产绝对会让我后悔,但我没想到后悔来得如此迅猛 😭
故障换机最大考验:在旧机不可用的情况下给新机登录微信 🖕
#trash #china #tencent #wechat #weixin
💩2
边界条件之场
android 上怎么用 rsync 啊,adb push/pull 不保留时间戳很烦
wait, what?? is this new?

$ adb --help
file transfer:
pull [-a] [-z ALGORITHM] [-Z] REMOTE... LOCAL
copy files/dirs from device
-a: preserve file timestamp and mode


"-a: preserve file timestamp and mode" 🤔
边界条件之场
wait, what?? is this new? $ adb --help file transfer: pull [-a] [-z ALGORITHM] [-Z] REMOTE... LOCAL copy files/dirs from device -a: preserve file timestamp and mode "-a: preserve file timestamp and mode" 🤔
好像想起来了,当时调查的时候看到过这个 -a flag,但是因为 push 指令没有对等的保留时间戳选项,所以我继续找了其它方案。
这个 -a flag 从来没用过,所以这段记忆被大脑 gc 了(
读完 https://docs.tinyusb.org/ 我都震惊了,就这???这哪能叫文档,简介差不多 🥴
网站上告诉我需要写一个 tusb_config.h 文件,但只字不提这文件里该写些什么,没有 api reference ……
作者的意思好像是让人去看 examples ……
#c_lang
边界条件之场
艹!买了台小米 13,想着出场预装 miui 不用搞恶心答题解锁 结果到手开机第一幕: Xiaomi HyperOS 😨😨😨😨😨😨😨😨😨😨😨
掏出一个 apk 准备安装,
进入安装界面看到半屏广告、半屏未备案/安全警告,
点击继续,竟然弹出密码框让我输入小米账号密码???

受国产系统震惊之余,掏出一条数据线准备 adb install ,
[INSTALL_FAILED_USER_RESTRICTED: Install canceled by user]???
查了下发现要先去开发者选项里允许 adb 安装。
打开开关,再次 adb install,手机上竟然对 adb 安装也有确认框,不过这次没有要求输入小米账号密码。

真是见够了,等解锁了立即换成欧版系统 🙄
usb 标准里说 endpoint address 是 4 bit ,应用样例里面却冒出来 0x810x82 ???
查了下才知道使用 8 bit 表示 endp addr 是一个常规操作,其中最高位 bit 用来表示 endpoint direction。

0x        8        2
0b 1 0 0 0 0 0 1 0
^ <----->
| |
| address 4 bit
|
direction 1 bit, 0 for OUT, 1 for IN