2015年2月27日 星期五

Hacking my cleaning robot, replace NI-CD battery to Li-ion battery

因為家裡的地板總是充斥著貓毛、貓沙、灰塵、頭毛,
所以很久以前就買了一台掃地機器人…

http://24h.pchome.com.tw/prod/DMAL47-A73159045?q=/S/DMAX0I

忘記已經買了多久,前一陣子他清掃的時間越來越短,顯然是電池壽命到了


因為是平價機種,這款掃地機器人使用的電池是Ni-Cd電池,電池的記憶效應很嚴重
而且原廠電池賣得很貴…
http://24h.pchome.com.tw/prod/DMAL47-A76257038?q=/S/DMAX0I

所以打算自己改裝電池,改為沒有記憶效應的鋰電池

改動最小情況下,保留原本的變壓器(19v 600mA)
充電電壓約18v,看起來像是定電壓充電,
停充條件有點怪,好像是充到指定電壓後隔多久才會切換為充飽電的燈號
機器運作時,停止運轉的條件為10.9v

鋰電池有很多種類跟規格,經過評估之後,選擇14500的鋰電池
鋰電池的標準電壓為3.7v,停充電壓4.2v,過放停止電壓為2.7v
4 cell串聯,充飽16.8v,過放截止10.8v,剛好可以cover原來電池的電壓範圍

選擇14500則是機構考量,使用一個3號電池雙面的電池盒,剛好可以放進原來的電池室

至於鋰電池串聯,要考慮到鋰電池需要電池管理機制,避免過充或是過放損壞電池
所以搭配一個4串鋰電池的保護板($230,買貴了…)

原本還有買lm2596的降壓模組,但後來想想,就直接用原來的充電迴路
交給保護板作電池管理就好,也不用刻意調整充電電壓到16.8v
(反正原先的變壓器19v 600mA,電流不大,不超過鋰電池1C的充電電流)

成果如下
實際用的材料

  • 4串鋰電池保護板 $230 (在光華買的,買貴了…後來在露天看到最便宜的只要90…)
  • 3號電池4顆電池盒 $12
  • 14500鋰電池電池 x4 + 運費 $245



total不到$500,比原廠電池$800要便宜,壽命應比原廠電池長很多

更換之後第一次使用跑了20min,使用時間比預期的短
拿起來檢查發現其中一個電池已經放到沒電了,所以保護板斷電

再觀察一陣子,看看經過幾次充放電循環後,電池是否有回到正常的表現…

3/13更新:
原先的電池試用了幾次,發現品質真的不太優...
依照原先的規劃,800mAh的電池,應該可以跑到40分鐘,
經過幾次使用,只能使用約20分鐘,估計這個電池的實際容量應該不超過400mAh

上淘寶找一找,發現原來我買的這個電池也是從淘寶淘來的
淘寶價格一顆2.5RMB,台灣賣家賣我一顆45塊台幣(他X的...)
貴也就算了,畢竟從淘寶買電池有點麻煩,結果還不堪用
跟原賣家協議退貨後重新買電池

這次改買日本電池
一顆105塊台幣
前天收到之後裝上去充電
昨天下班驗證效果,第一次使用就跑了57分鐘!!!!!

果然,電池的錢還是不能省,一分錢一分貨
至於中國的便宜電池,是不致於每一顆都是移動型炸彈啦
只是品質比較差,也許總會有適用的地方:D

2017/03/26 更新:
前一陣子發覺,續航力變低了
充飽電後放下去跑
大概只跑了10分鐘就停掉
估計是電池壽命到了
再上露天買了四顆14500,更換了原本的電池
(原先做成電池座形式就是考慮到方便替換)
更換電池後又是一尾活龍
420塊的電池可以用兩年,應該算不錯了XD

2018/06/24 更新:
在露天找到購買的紀錄,原來這台是2013/09買進的阿...


2015年1月12日 星期一

WinSplit Revolution Discontinued!

一直以來,工作用的筆電怪怪的,IE一定要管理員權限才能執行
上週試著修正這個問題,結果變成連工作的tool都沒辦法執行Orz

週末把筆電帶回家重灌,
重新做還原機制,
週一上班時,把平常用的一些小工具裝回去
沒想到WinSplit Revolution的官網掛了Orz

用Wayback machine看了一下,網站的最後一次snapshot是2014/Feb,
之後的snapshot都變成奇奇怪怪的網站= =

screenshot for WinSplit Revolution download page snap shot
撈一個下載頁面的截圖做個紀錄

從techspot下載的安裝檔,md5sum與官方的一致
http://www.techspot.com/downloads/5897-winsplit-revolution.html

之後如果哪天出了問題,
就要另外找新的解決方案了Orz


2014年7月9日 星期三

stream DVBT by vlc on debian

換了新工作,
第六個工作天,發現新工作好像是比原來想像中還要更深的火坑Q.Q
所以開始要來做長期抗戰的準備...
第一個想到的是,我追了一段時間的連續劇,雨後驕陽

如果可以,凡事最好先準備替代方案...
除了先錄起來以外,所以我又回頭研究DVBT串流的方案...
(之前研究過,當初是為了在家裡的時候,可以很方便的用PAD看不同頻道XD)
最初的想法,DVBT的TS本身就是mpeg2或h264的編碼,
不需要重新轉碼,Pad或手機應該都可以輕鬆處理。

那最大的問題就在串流的部分了...
基本上也是東參考西參考來的,就直接整理如下...


  1. FunUV數位電視棒的Linux支援
    Siano MDTV receiver(usb vid:187f pid:0202)
    http://cateee.net/lkddb/web-lkddb/SMS_SIANO_MDTV.html
    Linux Kernel support的範圍2.6.31–2.6.39, 3.0–3.6,基本上都有支援
    但插上去的時候會有錯誤,因為缺少正確的Firmware
    https://forums.mageia.org/en/viewtopic.php?f=23&t=4353
    下載firmware,更名為對應的檔案名稱
    以我的為例
    $cd /lib/firmware
    $sudo wget http://www.steventoth.net/linux/sms1xxx/sms1xxx-hcw-55xxx-dvbt-02.fw
    $sudo mv sms1xxx-hcw-55xxx-dvbt-02.fw dvb_nova_12mhz_b0.inp
    接著掛載對應的module
    $sudo modprobe smsdvb
    重新插拔電視棒應該可以在dmesg看到正確的註冊USB裝置了
  2. 安裝vlc,使用台灣的數位電視組態檔
    $sudo apt-get install vlc
    vlc支援數位電視棒,但是要正確播放需要不少設定,包括頻率、頻寬、編碼、調變等等阿哩不搭的
    所以有好心人士整理了一份!
    http://electronmania.blogspot.tw/2012/07/channelsconf-15sd4hd.html
    但是在這邊只是拿來參考用的XD,因為我並不是要直接看,而是要串流出去
    至於如果將整個頻道一起串流出去我還沒想到怎麼幹,需要再花時間研究研究
  3. 透過cvlc與vlm在console下直接進行串流轉送
    基本上參考這篇網誌
    http://evilshit.wordpress.com/2013/08/10/how-to-stream-multiple-tv-channels-with-a-single-dvb-t-tuner-using-vlc/
    建立dvbstream.vlm時有些地方需特別注意
    new dvbt1 broadcast enabled
    setup dvbt1 input "dvb-t://"
    #第一個電視棒,如果有一個以上的電視棒,這邊需要注意
    setup dvbt1 option dvb-adapter=0
    #指定頻率,因為tuner一次只能設定一個頻道,怎樣才能動態切換這個還要研究研究XD
    #頻率請參考上一段的台灣電視組態檔
    #這裡以台視為例,台視的頻率是581MHz
    setup dvbt1 option dvb-frequency=581000000
    #頻寬,台灣使用的頻寬為6MHz
    setup dvbt1 option dvb-bandwidth=6
    #頻道ID,數位電視當中一個頻道可以放很多節目,以台視為例
    #頻道ID為400,401,402,403 其中403為HD頻道
    setup dvbt1 option programs=400,401,402,403
    setup dvbt1 option ts-es-id-pid

    #這裡使用的是走http通訊協定,http格式的寫法就不多解釋了
    #需特別注意的是,output的設定必須要同一行
    #否則cvlc會有vlm錯誤的訊息
    setup dvbt1 output #duplicate{dst=std{
    access=http,mux=ts,dst=:8080/400},select="program=400",dst=std{access=http,mux=ts,dst=:8080/401},select="program=401",dst=std{access=http,mux=ts,dst=:8080/402},select="program=402",dst=std{access=http,mux=ts,dst=:8080/403},select="program=403"}

    control dvbt1 play
    這部分可以對照著上面參考的網誌來看

    最後執行cvlc來進行串流
    $ cvlc -vvv --extraintf telnet --vlm-conf dvbstream.vlm
    -vvv是verbose,除錯用的參數
    如果功能正常可以移掉這個參數
  4. 最後,用播放軟體,例如vlc、windows media player,或是android上的vlc、mxplayer,開啟網路串流
    輸入網址就可以看到畫面了
    以我的為例,輸入http://192.168.1.10:8080/400
    就可以正常播放!!!!

不過在測試的過程中,播放HD頻道時,
似乎因為我的CPU太虛弱(VIA C7-1500),
第一次還因為verbose的訊息,疑似當掉的現象
第二次移掉verbose後,用不同的播放軟體播放HD頻道時,有各種奇怪的狀況
例如沒有畫面,但網路有在動
或是只有聲音沒有畫面
透過手機、平板的mxplayer播放時,手機是完全不會動
平板的話,使用軟體解碼器播放時,畫面有出現,但是花屏非常嚴重
使用硬體解碼器播放時,則是直接閃退...

但是先前在主要的工作機上(Intel e6420)測試卻沒有這種現象...

以後有空再繼續研究好了
先留個紀錄:)

Racknerd可不可以升級?搬VPS?搬遷的Step by Step (Racknerd 2024 Black Friday 新方案)

 先附上Racknerd 2024 Black Friday 新方案 RAM CPU core 空間 流量 頻寬 價格 1   G 1核 20G 1.5T/月 1Gbps $10.99/年 2.5G 2核 40G 3.0T/月 1Gbps $18.93/年 3   G 2核 60...