投稿者「kako」のアーカイブ

Visual Studio 2017でlibcurlを使おうとして、libcurlのソースからビルドして動かした

Visual Studio 2017でlibcurlを使おうとして、libcurlのソースからビルドして動かした。

Google MapsのGeolocation APIを叩くために、curlコマンドから動かす代わりに、libcurlというライブラリを使って自分で書いたプログラムの中からAPIを使うというのをやりたい。
というか、前に既にやってた

しかしVisual Studio 2017だと古いlibcurlをリンクできなくてエラーになってしまう。最新のlibcurlを使う必要があるようだ。
続きを読む

Windows 10でGoogle Maps Geolocation APIを使ってみる

Windows 10でGoogle Maps Geolocation APIを使ってみる。

Windows 10のcurlを使った。

だいぶ以前にもGoogle Geolocation APIを試したことがあるのだが、APIが変わってしまった。
API Keyが必須になってしまっているので、取得しないといけない。
Google MapsのAPI v1の時代にAPI Keyを取得してあったのだが、古いAPI Keyは新しいAPIでは使うことができない。(できなかった)

まず準備として、API Keyを取得する。
Get API Key  |  Maps JavaScript API  |  Google Developers

英語だが特に難しいことは無かった。上記のGoogleのページのGET STARTEDというところから始めて、Google Cloud Platform Consoleというサイトでフォームに情報を埋めていけばAPI Keyを取得できる。
Google Cloud Platformは、Googleのクラウドサービスのことで、クラウドの計算資源とか各種アプリを利用することができるサービスだ。
Google Mapsの利用はクラウドサービスとはちょっと違うのだが、ユーザー管理とか課金のサイトを別々に作るのが面倒なのか、統合されているみたいだ。
クレジットカード情報も登録するので、ちょっと緊張するのだが、こちらが有料サービスに切り替えないかぎり課金は発生せず、無料分のサービスのみということなので、登録した。

次に、Google Cloud Platforn Consoleという設定などを管理するページで、API Keyを有効にするGoogle Mapsのサービスを設定する。
自分はGeolocation APIと、Static Maps APIを使うつもりなので、この2つのみでAPI Keyが使える設定にした。

API Keyは各ユーザー個人の固有のものなので、他に漏らさないように管理する。
続きを読む

Windows 10でcurlを使うには

Windows 10でcurlを使うには、特にWindows版のcurlを探してインストールとかをしなくても最初からcurlが使えるようになったらしい。

Windows 10のApril 2018 Updateから入っているのだそうだ。
WindowsのコマンドプロンプトからOS標準のsshやtarやcurlコマンドを使う そど


続きを読む

Raspberry Pi 3でWindows 10のARM64版が動くらしいので、試そうとして失敗した

Raspberry Pi 3でWindows 10のARM64版が動くらしいので、試そうとして失敗した。

Windows 10 IoT Coreではなく、Windows 10がRaspberry Pi 3で動くらしい。この記事を見て、試そうと思った。
誰でも簡単にRaspberry Pi 3へ64bit ARM版Windows 10をインストールできるツールが登場 – GIGAZINE

リンク先にあるgithubのページを見て、作業をした。(2019-02-19にこの記事を書いている時点で、もうこのプロジェクトはdiscontinueになってしまっている)
WoA-Installer-RpiRaspberry.md at master · WOA-ProjectWoA-Installer-Rpi · GitHub
続きを読む

モバイルバッテリーを4つ直列つなぎで5V×4で20Vを作って実験していたら、1つ壊れてしまった – その2

モバイルバッテリーを4つ直列つなぎで5V×4で20Vを作って実験していたら、1つ壊れてしまった、という話の続き。

さらにもう1つの大容量モバイルバッテリーも調子が悪くなってしまっているようだ。

残量表示のインジケータの表示が点灯せず、ボタンを長押ししてもLED懐中電灯モードにならない。
USBケーブルでmicroUSB接続のスマートフォンなどを繋いで給電すると5Vが出てくるので、そこまでの故障していないのかと最初は思った。
しかし、LightningケーブルでiPhoneを繋いだ場合に反応せず、5Vが出ない。

microUSBケーブルだと5Vは出ているので、しばらく放電させてみたら、残量が残りわずかな状態で1/4のLED表示が点滅するようになった。
そして、ボタン長押しで反応してLED懐中電灯モードにも移行するようになった。
そしてiPhoneにもLightningケーブルで使えるようになった。

どうやら復活したようだ。


追記

復活したのかと思ったが、ひとつ困った症状が出ている。充電に異常に時間が掛かるようになってしまった。1日充電器用のUSB用電源アダプタに繋いでおいてもインジケーターの半分くらいまでしか充電できていない。

階下からのタバコの煙への対策 2019 – その7

先週に引き続いて、やる気が出ず、特に何もしていない。
寒くてやる気が起きないというのもある。

新しいガスマスクを買って試しているのだが、わりと具合がよい。

前にガスマスクを改造して、外の空気を取り入れてマスクで呼吸できるようにホースで繋いだものがあるのだが、それもこのマスクをベースに作り直した方がよさそうな気がする。

FlashAirで、周囲のWiFiのアクセスポイントを検索して、そのログを取るソフトを作ってみた – その2

FlashAirで、周囲のWiFiのアクセスポイントを検索して、そのログを取るソフトを作ってみた、という話の続き。

前回のものはBSSIDも記録しないといけないということを失念していたので、ちゃんとBSSIDも記録するように作り直してみた。

local file = io.open("/log.txt", "a")
file:write("WiFi SSID Logging data\r\n")
file:write("---\r\n")
file:close()
fa.SetCurrentTime(0x2821,0)
hh=0
mm=0
ss=0
sleep(100)
while true do
	file = io.open("/log.txt", "a")
	file:write("time , "..hh..","..mm..","..ss.."\r\n")
	count = fa.Scan()
	for i=0, (count-1), 1 do
		ssid, other = fa.GetScanInfo(i)
		if ssid ~= "" then
			file:write("SSID,"..ssid.."\r\n")
			for key, val in pairs(other) do
				if key=="BSSID" then
					file:write(" BSSID,"..val.."\r\n")
				elseif key=="RSSI" then
					file:write(" RSSI,"..val.."\r\n")
				end
			end
		end
	end
	file:write("---\r\n")
	file:close()
	fat_time = lfs.attributes("/log.txt")
	hh = bit32.band (bit32.rshift(fat_time.modification, 11),0x1F);
	mm = bit32.band (bit32.rshift(fat_time.modification, 5),0x3F);
	ss = bit32.band (fat_time.modification,0x1F)*2;
	sleep(1000*30)
end

続きを読む

モバイルバッテリーを4つ直列つなぎで5V×4で20Vを作って実験していたら、1つ壊れてしまった

モバイルバッテリーを4つ直列つなぎで5V×4で20Vを作って実験していたら、1つ壊れてしまった。

AIKOVEというマークの入ったバッテリーが稼働しなくなり、ボタンを押しても反応せず、表示が付かないし、電圧が出なくなってしまった。

とりあえず、分解して基板を見てみたが、基板の外観上は問題が見つからない。