格安wifiモジュール「esp8266」「esp32」 5個目
■ このスレッドは過去ログ倉庫に格納されています
ESP8266でスマホのLINE通知を受信できますか?
通知があればESP8266でLEDとかを光らせたいです。 >>2
ありがとうw
ESPからLINEにメッセージを送るAPIは見つかって動いたんですが、
LINEのプッシュ通知をESP側で受け取ることは出来ないみたいですね プッシュって一体なんだ?
定期的に見に行って拾ってくるんじゃないの? そうですね、1分おきとかに見に行って、未読メッセージを読みに行けば良いんですね
LINEのAPIにそんなのあったかな・・・ LINE Thingsかな?
ググっただけなんだけど、notifyじゃなくてread/write使うと双方向データやり取りできるようだ むかーし、メールが届くと(指定したPOP3先にメールが溜まると)Lチカし始めるルーターがあったけど
あーいうのを作りたいんかい? >>8
ありがとうございます、Bluetooth経由になる時点でESP8266は候補から外れますが、
ESP32も1つ持ってるので調べてみます。
>>9
そうです、7セグで未読数を表示したり、手元にスマホがなくても確認できる物を作りたいです 658円だからなあ
ここの住民なら作った方が安い
もういちいち報告してくれなくていいよ>出品者さん 出品者というより、スマートハレタという商品がすごい。
自宅WiFiがあって、
自宅周辺の天気予報から洗濯を干すのをどうするのかの判断を機械にゆだねる人が対象なんだね。
ハックしてる人がいる。参考になるな…
https://qiita.com/ishiiyasu/items/e985c204f3ac54fe6852 ああ、そんなに機能盛りだくさんか
>>12の値段の件は取り消すわ、済まんかった >>13
出品者乙www
もう、公式のサービスは終わってるから、
fuck専用だね 前スレではお世話になりました。
いくつか報告にきました。
・disabled RF powerupは可能だった。
テスターで測定したがモデムスリープ相当に減っていた。
・ただし、アクセスポイントに繋ぐ手段が見つけられず断念。
モデムスリープの解除はできたが、ネットワークスキャンが上手くいかずAmbientへの送信はできなかった。
ネットワークに詳しい方には当然かもしれませんが、可能ならばスキップしたかったWifiのスキャン等の処理はしなければならず、起動時にするか途中でするかでトータルの電流消費には差が出ないのかなという印象です。 方針を変えてローカルネットワーク側設定をいじるようにしたところ、7.5sec程かかっていたWIFI接続+データ送信が1.5sec迄短縮しました。
構成は以下の感じです。
WAN<->HG(ルーター)<->AP(ルーターブリッジモード)<->esp8266
変更は以下3点。
・esp8266のIPアドレスをHGのDHCP割当範囲外に設定した。DHCP固定割当もしない。
・APのオートチャネルセレクト機能を切り、固定に変更。(デュアルチャネル機能は使用中)
・esp8266側は接続時のwifi.beginにチャネル、APのMACアドレスを渡すようにした。
WiFi.begin( WLAN_SSID, WLAN_PASSWD, rtcData.channel, rtcData.ap_mac, true );
参照:https://www.bakke.online/index.php/2017/06/24/esp8266-wifi-power-reduction-avoiding-network-scan/ これなら、単4電池3本でざっくりdeep-sleepでも16ヶ月くらいの計算になりました。
本当にありがとうございました。 それから、MinEspSDKLibというものがあって、これを使える知識があるなら送信まで100msec送信できるそうです。 >>11
送料別11円で出品者ざまぁだけど、
落札者は結構お得だったかもね☆ >>21
なるほど、Wi-Fiのチャネルを固定割り当てにしてチャネル番号とMACアドレスを入れればスキャンなしでネゴシエーションだけ開始可能なんですね つまり、検索サイトを通さずに、URL直打ち、みたいなこと? IPアドレス直打ちの方が近いかな
移転すると繋がらなくなるココみたいなw ESP32 wroomって「ダブルルーム」っ読むの?
ウローム? Atom Matrixをこうた
もう秋葉原店頭で買えるのかな? >>34
君らなに言ってるの?
あとむ まとりっくすだよ(๑•̀д•́๑)キリッ >>31
ルーム
頭のWは発音しない
writeとかと同じ ESP8266の微妙な不具合について
SoftwareSerialでGPIO5(RX)GPIO4(TX)で使うとswSer.begin直後からGPIO5の内蔵プルアップがONになる・・
TX・RXを入れ替えると問題ない、またswSer.begin後にpinMode(5,INPUT);でプルアップをOFFにすれば問題ないけど
入出力に大きめの保護抵抗(3.3kΩとか)入れてる人は通信障害の原因になると思う 自己レスだけど微妙な不具合と書いたが仕様っぽい
他のピンでも試したら基本的に受信(RX)のピンは自動でプルアップONになるっぽい
回路がOPENやTRI-STATEの時に誤作動しないような仕組なのだろう >>48
何があったのよ
>>46,47の書き込みが原因なら俺のせいだよねごめん スイッチでatom matrix注文しようか中華通販で注文しようか迷うわ…
どうせ一日で飽きて積むのに購入前は一か月ぐらい迷うんだよな
1kぐらいなのに どうせ積むのに中華通販だと5個買うとかなり安いとか考えてしまう
1個しかケース開けないのに5個買おうとしてる
注文すると数週間待たされることになるのにたった数百円程度の差でで国内通販をためらってしまう
要約すると
スイッチサイエンスさんありがとう
だよ…まだしばらく悩んでおこう ATOM MatrixをアリのOfficialで5月に注文したら7月に届いたよ スマホと通信するプログラム作っててなんか動かないと思って
電文をシリアルに出してみたら
リトルエンディアンだった・・・
インテルじゃ無いからビッグだろうとか思い込んでた・・・・
みんなはesp32ってすぐにリトルって気付いたの? >>57
通信系の規格はビックエンディアンしか知らんかったが、リトルエンディアンな世界もあるの?産業系とか? >>58
いや、あんたが正しい
俺は疲れているようだ ここ12、13年くらいに新しく出来たマイコンはリトルエンディアンが多いんじゃない?
RISC-Vはリトルエンディアンだし
ARMは最初はリトルエンディアンでARM-v6あたりからバイエンディアンになったが
リトルエンディアンで使うことが圧倒的に多い
ルネサスのRXやRL78もリトルエンディアン
PIC32はMIPSコアだがリトルエンディアン
新しいアーキテクチャはリトルエンディアンに統一されてきてる
Linuxでも64bitのUbuntuや64bitのDebianはリトルエンディアンしかサポートしてない 内部の話だろうなあ
メモリのバイト列そのまま送信したらリトルでしたと言うことじゃないの? >>58
そもそもTCP/IPがビッグエンディアンだからね
でも最初にTCP/IPがUNIXに実装されたのは4.2BSDで
そのターゲットマシンはVAX11/780でVAX11/780はリトルエンディアンだった
DECは基本的にリトルエンディアンの会社だったみたい
UNIXが広く使われたエンジニアリングワークステーションでは
68000系のCPUがよく使われてビッグエンディアンが多かったけど シリアル通信なんてペリフェラルにやらせてるから深く考えたことないけど
リトルエンディアンが主流みたいだね
Wikipediaですら書いてある
シリアルポート
https://ja.wikipedia.org/wiki/%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%AB%E3%83%9D%E3%83%BC%E3%83%88
>ほとんどのシリアル通信設計では、
>各バイトのLSB(Least Significant Bit、最下位ビット)にあるデータビットを最初に送信するようになっている。
>この規格は「リトルエンディアン」としても言及される。「ビッグエンディアン」、
>すなわちMSB(Most Significant Bit、最上位ビット)を最初に送るシリアル通信も使用できるが
>ほとんど使われていない。
>例としてビッグエンディアンはIBM 2741印刷端末で使用されていた
>(ビット順序についてより詳しい情報についてはビットナンバリングを参照すること)。
>ビットの順番は通常シリアルポートインタフェース内部では設定できない。
>ローカルのデフォルトとは異なるビット順序を必要とするシステムと通信するため、
>ローカルソフトウェアは送信直前や受信直後に、
>各バイトに含まれるビット順序を再設定できる。 >>65
ビットオーダーにエンディアンとは言わないな。LSB first/MSB firstとは言うが >>64
そもそもなら、ARPANETのIMPかな。honeywellのミニコンがベース みんなバイトオーダー変換どうしてる?
俺はこんな関数作ってるけど
uint64_t byteswap64(uint64_t n) {
return (((n & 0xff) << 56) | ((n & 0xff00) << (48 - 8)) |
((n & 0xff0000) << (40 - 16)) | ((n & 0xff000000) << (32 - 24)) |
((n & 0xff00000000) >> (-24 + 32)) | ((n & 0xff0000000000) >> (-16 + 40)) |
((n & 0xff000000000000) >> (-8 + 48)) | ((n & 0xff00000000000000) >> (-0 + 56)));
}
uint32_t byteswap32(uint32_t n) {
return (((n & 0xff) << 24) | ((n & 0xff00) << 8) | ((n & 0xff0000) >> 8) | ((n & 0xff000000) >> 24));
}
uint16_t byteswap16(uint16_t n) {
return (((n & 0xff) << 8) | ((n & 0xff00) >> 8));
} バイトオーダーで問題が出るような使い方はしてないんだよな
どうしても変換する場合はアドレス使って演算をしない方向でやりたいなとは思うけど 皆さん返答ありがとう
スマホから0x00 0x01って送ったら
256って変換されてあれってなってたところで出てきた疑問なのよ
今はリトルが主流なのね・・・・知らん買った byteで送って受信でintにしたらと言う話だな
バイト列にぶっこんで送信して受信でもバイト列に入れといて取り出す
お互いのエンディアンがあってたら問題はでないがそういう使い方じゃないんだよね >>68
struct bytes{
uint8_t byte0 : 8;
uint8_t byte1 : 8;
uint8_t byte2 : 8;
uint8_t byte3 : 8;
};
union {
uint32_t data;
struct bytes byte;
} name;
name.data = (uint32_t)
(uint8_t) = name.byte.byte3
ちょっと例えが雑だけどこんな感じで1つのアドレスに複数の型を割り当ててやってた
入れる順番か取り出す順番で処理してた >>63
>>57-58みて、ライブラリをリトルにするべきかどうかの話かと思ってた。
>>56みたら内部の話だな。失礼 学術巨大掲示板群: アルファ・ラボ ttp://x0000.net
物理学 化学 数学 生物学 天文学 地理地学
電子 IT 工学 国語 方言 言語学 など こっちの方が8bitのArduinoで使う場合も負荷は少ないか
union byteswap64_data {
uint64_t n64;
uint8_t byte[8];
};
union byteswap32_data {
uint32_t n32;
uint8_t byte[4];
};
union byteswap16_data {
uint16_t n16;
uint8_t byte[2];
};
uint64_t byteswap64(uint64_t n) {
byteswap64_data a, b;
a.n64 = n;
b.byte[0] = a.byte[7];
b.byte[1] = a.byte[6];
b.byte[2] = a.byte[5];
b.byte[3] = a.byte[4];
b.byte[4] = a.byte[3];
b.byte[5] = a.byte[2];
b.byte[6] = a.byte[1];
b.byte[7] = a.byte[0];
return b.n64;
}
uint32_t byteswap32(uint32_t n) {
byteswap32_data a, b;
a.n32 = n;
b.byte[0] = a.byte[3];
b.byte[1] = a.byte[2];
b.byte[2] = a.byte[1];
b.byte[3] = a.byte[0];
return b.n32;
}
uint16_t byteswap16(uint16_t n) {
byteswap16_data a, b;
a.n16 = n;
b.byte[0] = a.byte[1];
b.byte[1] = a.byte[0];
return b.n16;
} hton*(),ntoh*()関数は使えないんだっけ htons、ntohs、htonl、ntohlは使えるよ ESP32CAMを他のマイコンとシリアル接続したいのですが、ESP_LOGxのUART0への出力を止め
GPIO1/3を書き込み時以外自由に使うにはどうしたら良いのでしょうか ははw BLE5.0でNimBLEとUARTでDMAがぶつかっちもうた。 ムズイな ESP32 Bluetooth v4.2までなのにBLE5.0使ってんの? ESP32-WROOM-32D と ESP32-SOLO-1
ってピン配置が一緒だけど今までWROOM-32D使ってた基板にSOLO-1をそのまま載せ替えて
ソフトもおんなじのが使えるのかしら
今作ってるソフトはコア一個しか使って無いし、周波数落ちたところでそんなに性能低下するようなものでも無いから変えられるなら変えたいけど 2個目のコアを指定してタスクを走らすコードがあったりするので直す 自分も省電力期待してSOLO使ってるけど検証したことはない WiFi,BTの消費電力の前にはコアの消費電力の差は少なく思える・・・・・
240 MHz * Dual-core chip(s) 30 mA ~ 68 mA Single-core chip(s) N/A
160 MHz * Dual-core chip(s) 27 mA ~ 44 mA Single-core chip(s) 27 mA ~ 34 mA
Normal speed: 80 MHz Dual-core chip(s) 20 mA ~ 31 mA Single-core chip(s) 20 mA ~ 25 mA
Transmit 802.11b, DSSS 1 Mbps, POUT = +19.5 dBm - 240 - mA
Transmit 802.11g, OFDM 54 Mbps, POUT = +16 dBm - 190 - mA
Transmit 802.11n, OFDM MCS7, POUT = +14 dBm - 180 - mA
Receive 802.11b/g/n - 95 ~ 100 - mA
Transmit BT/BLE, POUT = 0 dBm - 130 - mA
Receive BT/BLE - 95 ~ 100 - mA ■ このスレッドは過去ログ倉庫に格納されています