2019年12月19日

chromebook install s3-extend

記錄一下
維護者模式,學生用不到可以省略,從1.開始即可
0.把chromebook進入維護者模式,參考網址:
https://tw.begin-it.com/5606-how-to-enable-developer-mode-on-your-chromebook
chromebook關機,按著esc鍵+重新整理鍵不放,再按 下電源鍵開機(注意不是上鎖鍵),會看到下圖
 按下Ctrl+D會看到下圖
 按下Enter
 按下Ctrl+D
 再等待一段時間,會重開機,開機時會看到警告畫面,按下Ctrl+D,加速啟動。
再來就和平常開機相同。

 做好後可以按下ctrl+alt+t開啟終端機模式
使用sudo -s(免密碼)成為 root身份
1.登入chromebook,在設定中更新作業系統至最新版本。
2.開啟linux beta



3.設定共用資料夾,把Downloads和linux beta共用,啟動檔案總管,在下載處按右鍵/share linux
4.啟動chrome,網址列輸入:chrome://flags
搜尋"usb",把Crostini Usb Allow Unsupported設成enable,重啟chrome
重啟chrome後,把arduino uno插入USB孔,右下角會跳出設備,選擇連線至linux。

5.下載安裝s3-extend-install.sh:https://drive.google.com/open?id=10J7IR32ceIPc3G1JJQNOn9m-se5qZEEi

在linux beta中執行下列指令
sudo apt-get update
sudo apt-get dist-upgrade
做完更新建議重啟chromebook,再進入linux beta

cd /mnt/chromeos/MyFiles/Downloads/
cp s3-extend-install.sh ~/
cd
sudo apt-get install -y xz-utils zenity
bash s3-extend-install.sh
6.安裝完成後執行s3a

7.開啟chrome ,連線至網站:https://mryslab.github.io/s3onegpio/


2019年11月21日

s3e安裝記事

參考網址:https://mryslab.github.io/s3-extend/
需求
python3.7

安裝
python3-pip xterm
sudo apt-get install python3-pip xterm
安裝s3-extend 
sudo pip3 install s3-extend 

燒入硬體
需要esptool
sudo pip3 install esptool
 
清除韌體
esptool.py --port /dev/ttyUSB0 erase_flash
 
下載韌體
http://micropython.org/download#esp8266
 
燒入韌體
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect -fm dio 0 esp8266-20170108-v1.8.7.bin

安裝連線軟體
sudo apt install picocom
sudo pip3 install adafruit-ampy 
sudo pip3 install mpfshell
 
下載s3-extend(如果s3a已裝可免)
git clone https://github.com/MrYsLab/s3-extend.git 
cd s3-extend 
python3 setup.py
cd esp_8266_micropython
上傳main.py
ampy --port /dev/ttyUSB0 put main.py
ampy --port /dev/ttyUSB0 put esp_8266_min.py 
wifi連上AP
使用vim編輯boot.py
vim boot.py
插入
# This file is executed on every boot (including wake-boot from deepsleep)
#import esp
#esp.osdebug(None)
import uos, machine ,time ,network
#uos.dupterm(None, 1) # disable REPL on UART(0)
import gc
#import webrepl
#webrepl.start()
gc.collect()
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect('<essid>', '<password>')
while not sta_if.isconnected():
    time.sleep(1)
    pass
print('network config:', sta_if.ifconfig())
 
 
上傳boot.py
ampy --port /dev/ttyUSB0 put boot.py
連上esp8266看wifi IP並複製起來 
echo "Ctral+c再按Ctrl+D重啟(可以取得IP).Ctrl+A 再按 Ctrl+Q 離開";picocom -b 115200 /dev/ttyUSB0 
按下Ctrl+A再按Ctrl+Q離開。如果連線一段時間才執行指令,會看不到ip資料,可以按下reset鈕。
執行s3e
這時esp8266藍燈長亮
只要有重新啟動esp8266(插拔USB或是按下reset鈕),就要重新執行s3e 
開啟scratch3
https://mryslab.github.io/s3onegpio/

選擇擴充套件


執行積木,此時藍燈會熄滅,連線程式會顯示連線成功
 
亮起LED燈(LED接在D6),D6的腳位是12程式碼如下:
許惠美老師提供的資料圖
 
 
   

2019年11月17日

python arduino 記事

https://pypi.org/project/pyFirmata/
韌體要燒入範例檔standfirmata

install pyfirmata

git clone https://github.com/tino/pyFirmata
cd pyFirmata
sudo python3 setup.py install
 
sudo pip3 install pyfirmata


python3
//載入
from pyfirmata import Arduino, util

board = Arduino('/dev/ttyUSB0')
//讀取類比信號A0
it = util.Iterator(board)
it.start()
board.analog[0].enable_reporting()
board.analog[0].read()
 
//寫入數位信號D13
board.digital[13].write(1)
 
 

2019年11月8日

picoboard燒入uno


感謝吳志文老師提供方法,把改picoboard韌體方法記錄一下。
先用一塊uno板燒範例中的ArduinoISP.ino使uno成為一台Bootloader燒錄器,後將uno的D13->PicoBoard J1(3),D12->PicoBoard J1(1),D11->PicoBoard J1(4),D10->PicoBoard J1(5)


再燒錄Bootloader,則PicoBoard就變成一塊UNO了

燒錄bootloader成功後,就可以使用uno方式(s2a s3a...)來執行scratch了。

2019年11月2日

s3a記事

https://github.com/MrYsLab/s3-extend

1.python3.7以上

python3 –version
Python 3.6.8
sudo apt-get install build-essential checkinstall
sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev \
    libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev
cd /usr/src
sudo wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz
sudo tar xzf Python-3.7.4.tgz
cd Python-3.7.4
sudo ./configure --enable-optimizations

make -j -l 4
sudo make altinstall


python3.7 --version
Python 3.7.5

安裝需要套件
sudo apt install python3-pip
sudo apt install xterm
sudo pip3 install s3-extend
sudo pip3 install awscli
sudo pip3 install adafruit-ampy
下載s3-extend
git clone https://github.com/MrYsLab/s3-extend.git
安裝
cd s3-extend/
sudo python3.7 setup.py install
終端機執行
s3a -l a.log -c devttyUSB0

scratch3_online:https://mryslab.github.io/s3onegpio

 
 
燒入韌體 
https://mryslab.github.io/s3-extend/#arduino/
安裝arduino擴充套件,讓arduino ide有FirmataExpress檔案,要安裝

打開範例檔firmataExpress,燒入arduino uno板子。
 
cd  s3-extend
python3 setup.py install
 
 
執行s3a
 
 
要指定連接埠
s3a -c /dev/ttyUSB0
 
scratch3_online:https://mryslab.github.io/s3onegpio

 
arduino 直接燒錄韌體
http://ykarduino.blogspot.com/2014/05/hex-codearduino.html
 
http://coopermaa2nd.blogspot.com/2011/06/arduino-ide-tweak.html
 
燒錄FirmataExpress.ino.hex
avrdude -v -patmega328p -carduino -P/dev/ttyUSB0 -b115200 -D -Uflash:w:FirmataExpress.ino.hex:i
 

2019年10月31日

webbit記事

mpf連線(linux)
安裝mpfshell
pip install mpfshell

執行mpfshell
mpfshell

mpfs [/]>

連線 usb0
mpfs [/]> open ttyUSB0

可以執行指令
ls
rm 
 ------------------------------------------
下載原始檔
git clone https://github.com/llk/scratch-gui
 安裝
npm install

執行
npm start
使用瀏覽器開啟http://0.0.0.0:8601/

建立擴充套件
在scratch-gui/node_modules/scratch-vm/src/extensions目錄下建立scratch3_bpibit資料夾
在scratch-gui/src/lib/libraries/extensions/建立bpibit資料夾,裡面放svg圖檔
編輯index.js
加入(參考micro:bit,配合資料夾內的圖檔名稱)
import bpibitIconURL from './bpibit/bpibit.png';
import bpibitInsetIconURL from './bpibit/bpibit-small.svg';
import bpibitConnectionIconURL from './bpibit/bpibit-illustration.svg';
import bpibitConnectionSmallIconURL from './bpibit/bpibit-small.svg';


在下面加入(參考micro:bit)
{
        name: 'bpi:bit',
        extensionId: 'bpibit',
        collaborator: 'bpi:bit',
        iconURL: bpibitIconURL,
        insetIconURL: bpibitInsetIconURL,
        description: (
            <FormattedMessage
                defaultMessage="Connect your projects with the world."
                description="Description for the 'bpi:bit' extension"
                id="gui.extension.bpibit.description"
            />
        ),
        featured: true,
        disabled: false,
        bluetoothRequired: true,
        internetConnectionRequired: true,
        launchPeripheralConnectionFlow: true,
        useAutoScan: false,
        connectionIconURL: bpibitConnectionIconURL,
        connectionSmallIconURL: bpibitConnectionSmallIconURL,
        connectingMessage: (
            <FormattedMessage
                defaultMessage="Connecting"
                description="Message to help people connect to their bpi:bit."
                id="gui.extension.bpibit.connectingMessage"
            />
        ),
        helpLink: 'https://scratch.mit.edu/microbit'
    },













scratch-gui/node_modules/scratch-vm/src/extension-support/extension-manager.js

const builtinExtensions = {
下增加
bpibit: () => require('../extensions/scratch3_bpibit'),



翻譯
scratch-gui/node_modules/scratch-l10n/locales/extensions-msgs.js
interface-msgs.js
editor-msgs.js
加入
    "bpibit.buttonsMenu.any": "任何",
    "bpibit.clearDisplay": "清空畫面",



2019年6月5日

syslinux.cfg中文化

使用linux系統開機選單可以有中文嗎?
使用syslinux.cfg開機調校記錄
查了一些資料使用github解決問題
https://github.com/liuyug/hzpsf/
下載後解壓縮
自行編譯
mkdir build
cd build
cmake ../
make
 
 
syslinux.cfg檔案中要加入字型設定
FONT /syslinux/myfont.psf 
 
把syslinux.cfg放在hzpsf資料夾中
 
因為hzpsf它是把簡中轉到開機選單中,所以syslinux.cfg要轉成gbk檔案格式,裡面的中文也要請google翻譯成簡體
 
把syslinux.cfg轉成gbk/ISO-8859
sudo iconv -f 'utf-8' -t 'gbk' syslinux.cfg > syslinux.cfg.gbk

産生字型檔和syslinux.cfg檔 
./build/hzpsf -e fonts/SWISS.F16 -z fonts/hzk16f -c myfont.psf -i syslinux.cfg.gbk -o syslinux.cfg.ok
把myfont.psf和syslinux.cfg.ok拷貝到隨身碟中的syslinux目錄中,記得要把syslinux.cfg.ok改成syslinux.cfg


2019年4月19日

雷雕做四邊型的盒子

感謝其宏老師提供,要做四邊形的盒子,快速産出svg檔。
試了一下真的不錯用,把參數設定一下,匯出即可以有svg,再進入inkscape去加工,方便多了。
https://www.makercase.com/

2019年3月27日

用vlc看youtube直播

sudo pip3 install streamlink

tvbs直播
streamlink https://www.youtube.com/watch?v=Hu1FkdAOws0 best
東森新聞
streamlink https://www.youtube.com/watch?v=dxpWqjvEKaM best
中天新聞

streamlink https://www.youtube.com/watch?v=wUPPkSANpyo best
台視新聞
streamlink https://www.youtube.com/watch?v=NbjI0cARzjQ best