這是個很奇怪的問題,還是寫一下當作記錄,在工作坊的時候都是以windows開發
因為firmware以windows高度相依,所以開發firmware用windows比較不會撞牆
由於手上的mac是使用boot camp跑windows,也發現一連串的操作後,windows開始愈來愈肥大,128G的SSD也快爆了
工作坊結束後,重新整理電腦,決定換回mac os開發
照著MTK的說明,在preference 輸入
http://download.labs.mediatek.com/package_mtk_linkit_7697_index.json
開始進入mac安裝7697的板子的時候,出現以下問題
居然 Error downloading!!! 這真的是非常奇特! 通常這會是網路出了問題
但換了2個網路都不行,只能重灌mac,結果正常
可以下載Linkit7697,但在download firmware時發現以下圖片的問題
照著MTK的說明,在preference 輸入
http://download.labs.mediatek.com/package_mtk_linkit_7697_index.json
請參閱MTK網站上的說明
開始進入mac安裝7697的板子的時候,出現以下問題
居然 Error downloading!!! 這真的是非常奇特! 通常這會是網路出了問題
但換了2個網路都不行,只能重灌mac,結果正常
可以下載Linkit7697,但在download firmware時發現以下圖片的問題
安裝後還是不會動,想想會不會是python要新版,結果安裝了3.x版還是沒用
後來想到在工作坊有朋友也出現了這個問題,是抓了某一個非官方下載的driver才可以驅動Linkit7697
先刪除silicon lab的driver,再安裝以上driver,Linkit7697再度出現,而且可以download firmware
然後選了一個LWiFi的'AccessPoint' Example燒進去後,又發現serial
monitor無法print任何東西
看了網上的討論,再灌入FDTI與CH340的driver,這兩個ESP8266、Arduino與USB to TTL都能用,就先安裝吧 ~ 記得要重開機
最後,總算可以在mac上正常開發Linkit7697,真是關關難過但關關不說啊!
或是像小弟一樣將舊的mac os安裝在SSD上,Windows安裝在USB3.0的128G隨身碟上,這樣兩種系統開發都很順利,Windows會稍稍慢一點...點
但記住在mac os要把mac的driver製作好,在Windows下裝,這樣Windows才有辨法正常使用
(其實應該是安裝完下載的DMG檔重開機就可以了
當初應該是忘了做這一步才多安裝了兩個Driver)
工作坊有朋友的mac照著上面做也不能動,因為灌了最新的mac os,許多問題無法解決
只能用VMWare去跑Windows,或是用boot camp分割一個Windows出來開發了
或是像小弟一樣將舊的mac os安裝在SSD上,Windows安裝在USB3.0的128G隨身碟上,這樣兩種系統開發都很順利,Windows會稍稍慢一點...點
但記住在mac os要把mac的driver製作好,在Windows下裝,這樣Windows才有辨法正常使用
小弟手上mac系統是10.10.5,希望此文章未來可以幫助到mac開發Arduino IDE的高手們
再來是Simple
Care的資料庫是以MySQL導入,如果你像我一樣直接將Github的code clone,然後在Terminal輸入以下command
python
/Users/Apple/Documents/GitHub/Simple-Care/pythonMQTT/python27/simple_care_py27.py
會發現出現錯誤,首先是因為沒有安裝paho,所以要在Terminal輸入
sudo
pip install paho-mqtt
然後再輸入一次
python
/Users/Apple/Documents/GitHub/Simple-Care/pythonMQTT/python27/simple_care_py27.py
又發現錯誤,這次應該是ImportError: No module named MySQLdb
其實需要先到這裡下載DMG檔安裝,過程中記得左下角要選擇自定
然後取消勾選最後一個
5、安裝XAMPP
然後取消勾選最後一個
再來於Terminal輸入sudo pip install mysql-python
結果會跳出這個來(太恭喜啦! 離成功愈來愈近了!)
安裝完之後重新開機,應該就ok了,如果還不行,就再key一次
sudo easy_install mysql-python 與 sudo pip install mysql-python
如果還是不行,手動安裝吧!
首先,要安裝brew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
接下來
1、先brew install mysql-connector-c
2、下載https://pypi.python.org/packages/source/M/MySQL-python/MySQL-python-1.2.5.zip#md5=654f75b302db6ed8dc5a898c625e030c
3、cd MySQL-python-1.2.5 修改site.cfg
將#mysql_config = /usr/local/bin/mysql_config 改成 mysql_config = /usr/local/mysql/bin/mysql_config
4、python ./setup.py build 與 sudo python ./setup.py install
簡單測試一下我們Github的MySQL與python相連
import MySQLdb
db = MySQLdb.connect(host="localhost",
user="root", passwd="", db="simple_care")
cursor = db.cursor()
cursor.execute("SELECT * FROM log_peripheralwithcentral")
results = cursor.fetchall()
for record in results:
col1 = record[0]
col2 = record[1]
print "%s, %s" % (col1, col2)
db.close()
存成test.py,在Terminal輸入 python test.py
過程中如果碰到libmysqlclient.18.dylib找不到,在Finder找找看在哪裡
例如我是在XAMPP中找到的,就在Terminal輸入
sudo ln -s
/Applications/XAMPP/xamppfiles/lib/libmysqlclient.18.dylib
/usr/lib/libmysqlclient.18.dylib
再次輸入python test.py,應該就可以取出資料庫的值了
接下來brew install mosquitto,發現我的Mac版本只有10.10.5,它居然說brew和apple不支援
只能說我認了,os升級到最新版再brew install mosquitto一次
完成後輸入python simple_care_py27.py,出現[Errno 61] Connection refused
a、重開機按下command+r,在Terminal輸入csrutil disable
接下來brew install mosquitto,發現我的Mac版本只有10.10.5,它居然說brew和apple不支援
只能說我認了,os升級到最新版再brew install mosquitto一次
完成後輸入python simple_care_py27.py,出現[Errno 61] Connection refused
a、重開機按下command+r,在Terminal輸入csrutil disable
b、開機後在Terminal下輸入brew services start mosquitto
Mac開發Firmware、MySQL與MQTT實在太厚工了!
But! 如鄉民所說! 用Mac就算是只拿來打報告,潮能代表一切!!!
或許又碰到坑的時候,是真的要考慮用舊版或裝個VMWare用Windows開發,是時候找時間玩Mbed了!
沒有留言:
張貼留言