2022年10月23日 星期日
MYST VPN
2021年12月4日 星期六
Raspberry Pi 7 inch touch screen
因為專案需求需要一個 大一點的觸控螢幕
本來想買一般外接的HDMI 螢幕
但後來想想價差不大 , 於是買了原廠的 7 寸觸控
此螢幕可以相容於最新的 4B 機種
但有些需要注意的
如果使用 4B , 那只需要接 power 跟 Gnd 即可
I2C 可以不用接 , 但舊版的一定要接
另外要記得把 overscan 跟 GL driver 關掉
可以用 sudo raspi-config disable overscan 與 GL
否則觸控定位會出錯
如果要轉換螢幕方向
要修改 config.txt
sudo nano /boot/config.tx
加入
lcd_rotation = 2
千萬不要用 screen config 中的設定
否則觸控會出問題
另外一個是觸控 右鍵功能
照原廠文件究改 script 但 4B 無法動作
後來看到下面這文章才解決
https://fmirkes.github.io/articles/20190827.html
2021年9月5日 星期日
使用 Mesh AP (D-Link Covr-1100) 讓樓上樓下都有無線網路
現在基本上所有設備都需要無線網路上網
此次朋友家整棟 3層 都要使用無線網路
之前自己家是使用 PLC 來連 , 但 朋友家太老舊了
使用 PLC 可能速度不會很高
於是想說試試 Mesh AP
此次 pchome D-Link 有優惠 , 就買 3 台 Covr-1100 來試試
本來想買 ax 機種的 , 但想想 ac 就夠他們用了
就改買較便宜的 ac 機種
應此就選擇 Covr-1100
原以為 Mesh AP 設定會很麻煩
但沒想到 , 只要把第二台 AP 先接到 router 下面
他自動會把 config 設好
不需其他動作
之後只要把機器擺到適當位置即可
測試幾個擺放位置 , 為了讓大部分位置訊號都不錯
把機器放在 樓梯間是最好的方案
於是 1F , 2F , 3F 玄關都放一台是最好的方案
很多人說 D-Link 是 Do not Linking
但此次購買經驗跟實測 D-Link Mesh 讓我很滿意
2021年6月27日 星期日
樹莓派安裝常用軟體最容易的方式
之前安裝樹莓常用軟體 如 anydesk or teamviewr , or pycharm 等 都是自己下載 source compile ..
但遇到了不少坑 , 每次都要花不少時間
如 obs 有時能成功, 但大都失敗
直到昨天看到有人做好了 script
只要執行下面script 之後就換安裝 pi-app , 再點選 pi-app 選擇要安裝的 app 即可
省下不少時間
wget -qO- https://raw.githubusercontent.com/Botspot/pi-apps/master/install | bash-
2021年6月26日 星期六
樹莓派安裝 ubuntu
ubuntu 推出了 21.04 版 for 樹莓派 , 因為 ubuntu 的資源比較多
且 obs studio 在原生 os 一直無法 compile 成功
於是決定改用 ubuntu 的樹莓派版
但一開始就遇到一個難題
anydesk teamviewer 等遠端工具都裝不了
teamviewer 雖然安裝成功 , 但跑不起來很容易 crash .
且 gpis picamera 等制都有點不同 obs studio 雖然ok , 但跑起來有問題
看起來 還是要等一下 資源才會完整
2021年6月22日 星期二
PysimpleGUI 安裝與簡介
安裝 pysimplegui 很簡單
pip install pysimplegui or pip3 install pysimplegui 即可
Linux, Mac, Windows 樹莓派 都支援
先說一下 pysimplegui 與其他 GUI 如 pyqt5 等的最大差異在於
pyqt5 的基本視窗宣告完時 本身視窗就可以想像是一個 while loop , 他會一直執行
但 pysimplegui 比較像一個 function
自己需要加入 while loop 讓 program 變成一個無限迴圈
這樣 windows 才會一直顯現
下面是官網的sample code ..
import PySimpleGUI as sg sg.theme('DarkAmber') # Add a touch of color # All the stuff inside your window. layout = [ [sg.Text('Some text on Row 1')], [sg.Text('Enter something on Row 2'), sg.InputText()], [sg.Button('Ok'), sg.Button('Cancel')] ] # Create the Window window = sg.Window('Window Title', layout) # Event Loop to process "events" and get the "values" of the inputs while True: event, values = window.read() if event == sg.WIN_CLOSED or event == 'Cancel': # if user closes window or clicks cancel break print('You entered ', values[0]) window.close()
一開始當然是 import package ,
sg.theme 主要是定義主題顏色 從字面上就可以看出是深底字是 琥珀色
layout 就定義 windows 內的元件有哪些
每一行就用 [] 匡起來
如第一行 就 sg.text 一個元件
第二行 有兩個 sg.text , sg.InputText
第三行就兩個 button
window = sg.Window('Window Title', layout)
就是定義一個 windows , 使用 layout 中的元件
再來就 用 while loop 讓這windows 一直跑
window.read()
此時 windows 就會出來了
但 windows 還是要能做互動啊
event, values 這兩個就是 windows 互動用的
當 button 被按下了這時有 event 時 才會往下一行執行喔
如果是 輸入 text 此時 還是不會往下作 , 但如果是按下任何一個 button , 就會觸發 event
此事程式就會往下跑
如果是 cancel被按下,event == 'Cancel'
就會結束
python 簡易的 UI module - pysimplegui
之前使用的 pyqt5 功能很強大, 但針對某些主要是做機器學習的應用.只是要簡單UI
而不想花太多時間在 GUI 設計上的人來說 pysimplegui 是很棒的選擇
我的應用會用到很多 opencv , 但之前測試 tkiner 顯示 frame 時 即使使用 multi-threading 還是會有不順的狀況, pyqt 也是 , 且對很多人來說 multithread 有點小麻煩
而pysimplegui 我測過再 macOS , raspberry pi 下opencv 的 imshow 都很順
code 也簡單好讀很多
不過如果你的 UI 設計 位置要要自訂 , 那 pysimplegui 的建置就會很多了
之後會做一些簡單的教學
Bloomberg Markets Wrap 2025-08-15: 股市因美國數據下漲,川普與普丁會議獲關注
Bloomberg Markets Wrap 2025-08-15: 股市因美國數據下滑,川普與普丁會談受關注 發佈日期:2025-08-15 本篇文章翻譯與整理自 Bloomberg Markets Wrap(經 SWI swissin fo.ch 彙整),該報111導回顧了...
-
Timer 是 UI 很重要的一個功能, 因為UI 常常會因為時間定期自己更新畫面, 如camera camera 可以想像成 每幾個 ms 會產生一個圖案 (image) 所以需要每幾個 ms 去處理一次畫面 另外一個更常用的是計時器, 下面我先demo...
-
imagezmq 套件 讓人輕易的可以將遠端的影像串流傳送到server 上 目前有一個專案 , 需要將 Tx2 上處理過的影像傳到 座位上以方便監控 使用 imagezmq 開發讓事情變得很間單 架構如下 Tx2 (imagezmq client) --...
-
安裝 pysimplegui 很簡單 pip install pysimplegui or pip3 install pysimplegui 即可 Linux, Mac, Windows 樹莓派 都支援 先說一下 pysimplegui 與其他 GUI 如 pyqt5 等...