边界条件之场
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
磕磕碰碰好几天终于把 tinyusb device stack 跑通了。
不仅是第一次写 c ,还要学 cmake 。
然后又因为 tinyusb 文档网站上没有文档,不得不在六七个头文件之间跳来跳去尝试理解它的 api 怎么用。 tusb 作者让人去看样例,但样例里面非常离谱地写着 TODO。 changelog 里写着新 api 代替了旧 api,但实际上新 api 不工作 😤

P1: 被 tinyusb 骗(
P2: 样例里写着 TODO
边界条件之场
磕磕碰碰好几天终于把 tinyusb device stack 跑通了。 不仅是第一次写 c ,还要学 cmake 。 然后又因为 tinyusb 文档网站上没有文档,不得不在六七个头文件之间跳来跳去尝试理解它的 api 怎么用。 tusb 作者让人去看样例,但样例里面非常离谱地写着 TODO。 changelog 里写着新 api 代替了旧 api,但实际上新 api 不工作 😤 P1: 被 tinyusb 骗( P2: 样例里写着 TODO
跑通了以后写了段测试代码,向电脑键入 the quick brown fox ,但是每次都是打了两个字母 th 就一直卡在 h 键上,想了半天以为是逻辑想错了,但重写一遍问题依旧。

掏出 print debug 一看,我用来 index 列表的变量从 0 增加到 1 以后就一直停在 1,回代码里马上就发现应该是 size_t 的 index 变量不知道为什么被我写成了 bool 🤪

Anyway,终于赶上了之前用 rust 实现的进度。接下来折腾 tinyusb host stack,能够获取按键输入以后就可以开始写映射了!
边界条件之场
刷了 eea 版 hyperos ,尝试打开 install via usb (允许 adb 安装): "Sign in to your Xiaomi Account first" W T F ... 原来欧洲用户用 hyperos 也要吃屎啊 💩 那我只能祝小米海外市场生意兴隆了 🙃 #trash #china #phone
Wait ... 没开 "允许 adb 安装" 的情况下不能 adb install ,但是如果我先 adb push 把 apk 传到手机上,再 adb shell 然后 pm install 则没有任何问题 🤨

不知道 cn 版 hyperos 是不是一样的行为。总之一股浓浓的智障草台气息(
傻逼 miui 虾寄巴改 android 通知系统,竟然把 "最小化通知" 的功能给砍了? #trash #china #phone

类似 代理软件运行状态 这类常驻型通知,在 aosp 上就是设置一下最小化,这样通知栏上没有图标、锁屏不显示、在下拉通知面板里会折叠。

寄巴 miui 瞎改后,这类常驻通知 必定显示状态栏图标、在通知面板里折叠了跟没折叠差不多高。智障 miui 目前提供的几种通知管理方案:
- 限制通知栏上可显示的图标数量,1 个或 3 个……
- 禁止 app 显示任何常驻通知
- 关闭 app 的特定通知 channel
…… AOSP 里有的特性你寄巴小米样样没有。再买国产我是傻逼(这次已经感觉自己挺傻逼了 #trash #china #phone #xiaomi
- 锁屏密码手指摁快了会漏键
- 锁屏密码按键动画无法关闭。aosp 给的设置「Enhanced PIN privacy: Disable animations while entering the PIN」在 eea 版系统中存在,但是没有任何效果。
- 锁屏密码位数直接以小圆圈的方式显示在锁屏界面上。残留的 aosp 设置「Auto-confirm unlock」没有任何效果。

🥴 #china #phone #xiaomi
🤡1
令人难以置信的壁纸更换体验:

系统设置 -> 壁纸
-> 弹出使用条款,点拒绝。看似进入了一个简化的壁纸设置界面
-> 点击 "本地图片"
-> 再次弹出使用条款,必须同意否则无法继续
-> 同意使用条款后弹出权限申请,允许访问照片、视频、音频

然后令人匪夷所思的事情发生了:
Couldn't open this page. Wait a minute or two and try again.


W T F ???

清除「Themes」应用数据后再试一次,这次一开始就同意使用条款
-> 进入了一个内容更丰富的壁纸设置界面
-> 有 在线壁纸、编辑精选 等一堆乱七八糟的选项,但就是没有 "本地图片" ?!?

Side note: 虽然我用 Nova Launcher 可以直接设置桌面加锁屏壁纸,但锁屏壁纸不知道为什么一段时间后会被重置为默认。所以尝试通过系统自带入口设置壁纸。
#trash #china #phone #xiaomi
🤯1💩1
边界条件之场
故障换机最大考验:在旧机不可用的情况下给新机登录微信 🖕 #trash #china #tencent #wechat #weixin
微信登录后只能收到最早三天前的未读消息,查了一下也就比 SMS (48h) 稍微长那么一点 💩 #trash #china #tencent
微信在 hyperos 上冷启动 非常快 ,差不多只要半秒 🤔
是因为刚登录数据加载量小?还是国产系统给软件擦屎进行了预加载?
之前在 pixel 5 上是稳定两三秒加载,然后主界面会话列表再卡个几秒。
#tencent #wechat
notification history 也给砍了……但实际功能还在
真的受不了这些国产傻逼系统,自己写一套 ui 缺斤少两的 🥴
#trash #china #phone
媒体控制键 play/pause, next, previous 竟然不属于 hid 键盘按键 🤔
初步 ctrl+f 了一下 hid 标准里好像没有,但是 hid usage table 的 *Consumer Page (0x0C)* 小节里面给了相关的 usage id 。就是不知道从哪、以什么形式发这些 usage id (
不用 rtos 在 mcu 上写程序有种手动 async/await 的感觉。但是 pico 有两个核,感觉还得手动弄个 rwlock 🤔
tinyusb 真的让我高血压,host stack 跟 device stack 一样写了一通刷上去一跑不亮 🤷。根本就不知道为什么,只能对着样例把不一样的地方全部复制过来再逐行排查,看看自己原来漏了哪个关键指令……
边界条件之场
tinyusb 真的让我高血压,host stack 跟 device stack 一样写了一通刷上去一跑不亮 🤷。根本就不知道为什么,只能对着样例把不一样的地方全部复制过来再逐行排查,看看自己原来漏了哪个关键指令……
浪费了非常多时间排查问题,最后干脆直接编译样例,发现样例也跑不起来。

插拔数据线时多看了一眼面包板上的接线,发现用来充当 host 的接口的 vbus 实际上没接电……才突然想起来上周好像临时改了接线,忘记改回来了。

很想扇自己两巴掌 🤡