redbear / iot_phat Goto Github PK
View Code? Open in Web Editor NEWWiFi + Bluetooth, designed for the Raspberry Pi Zero
WiFi + Bluetooth, designed for the Raspberry Pi Zero
Hello, I have a fresh install of RASPBIAN STRETCH, and wanted to reuse my old pi-hat, now in stretch it does not detect the hat as a bluetoth device. the driver version is 0.3 but the update commands do not work (in this OS version at least). Do you have some advice for me on how to fix that?
it seams that all the build files are not existing (where ever they should be)
thanks in advance
Hi all,
I'am using the board on a PI Zero with QT 5.7.1 and I developped a BLE server.
Everything works well except the mac-address always : AA:AA:AA:AA:AA:AA:AA
I checked with hciconfig.
pi@raspberrypi:~ $ sudo hciconfig status
hci0: Type: Primary Bus: UART
BD Address: AA:AA:AA:AA:AA:AA ACL MTU: 1021:8 SCO MTU: 64:1
UP RUNNING
RX bytes:10266 acl:485 sco:0 events:589 errors:0
TX bytes:16384 acl:530 sco:0 commands:72 errors:0
It seems the bluez layer does not find the mac address.
Do you know how I can to set it ?
My Pi is running bluez-5.41 and I updated to firmware of the IoT_pHat.
Thank for your help,
Have a nice day,
Nicolas
Hey,
I have recently ordered the IoT pHAT and my wifi keeps disconnecting after a minute of SSH-ing into my Pi. I have tried a different Pi and the same happens. Would you happen to have any input on what I could try to debug what's wrong?
Best Regards
Sometimes, the Bluetooth fails to load when booting up.
The current method to resolve:
https://github.com/redbear/IoT_pHAT/tree/master/eeprom/experimental
But still need to add init_uart_clock=48000000
to the end of /boot/config.txt
file.
Hey random souls of the internet, in case any of you are like me and wondering how to get this working with a modern version of raspbian download this onto a usb drive and install it manually and reboot. Worked for me, good luck
dpkg -i firmware-brcm80211_20210315-3+rpt2_all.deb
Hi,
I had to update eeproms on my pHATs. When I run command to reprogram eeprom (from your guide):
sudo ./eepflash.sh -f=IoT_pHAT-with-dt.eep -t=24c32 -w
I get error:
pi@raspberrypi:~/phat $ sudo ./eepflash.sh -f=IoT_pHAT-with-dt.eep -t=24c32 -w
This will disable the camera so you will need to REBOOT after this process completes.
This will attempt to write to i2c address 0x50. Make sure there is an eeprom at this address.
This script comes with ABSOLUTELY no warranty. Continue only if you know what you are doing.
Do you wish to continue? (yes/no): yes
Writing...
dd: writing to ‘/sys/class/i2c-adapter/i2c-0/0-0050/eeprom’: Connection timed out
1+0 records in
0+0 records out
0 bytes (0 B) copied, 2.03952 s, 0.0 kB/s
Error doing I/O operation.
The script eepfalsh.sh
have to be executed from root account not via sudo:
(To set password for root user run sudo passwd root
)
pi@raspberrypi:~/phat $ su
Password:
root@raspberrypi:/home/pi/phat# ./eepflash.sh -f=IoT_pHAT-with-dt.eep -t=24c32 -w
This will disable the camera so you will need to REBOOT after this process completes.
This will attempt to write to i2c address 0x50. Make sure there is an eeprom at this address.
This script comes with ABSOLUTELY no warranty. Continue only if you know what you are doing.
Do you wish to continue? (yes/no): y
Please type yes or no.
Do you wish to continue? (yes/no): yes
Writing...
6+1 records in
6+1 records out
3344 bytes (3.3 kB) copied, 66.869 s, 0.1 kB/s
Done.
Also please add note that, writing eeprom take about 60-70sec to finish 😄 (Patience is not my virtue 😉 )
Hello,
Great work. I want to make some changes in the board layout and add more sensors connecting to RPi using I2C. Would it be possible for you to please provide the schematic and the board files?
Thanks.
After following the update instructions for iot Phat 0.3. to 0.4
the cat /proc/device-tree/hat/product did not show the update?
Still says v0.3:
pi@raspberrypiX:~ $ cat /proc/device-tree/hat/product
IoT pHAT w/eep_v0.3pi@raspberrypiX:~ $
I did run the 0.4 install instructions?
Hi. I cannot wake up my Pi Zero or Pi B+ when the IoT pHAT is connected. It works with it disconnected, as per https://elinux.org/RPI_safe_mode#Wake_from_Halt.5B1.5D
I was wondering if this would require a new dtb/eeprom configuration, or...?
Thanks.
I have the same problem with red bear WiFi and BT on loading raspbian error 110 SDIO, It was working.
Using pizero with red bear hat.
Pi zero works with a usb WiFi dongle.
When I try to turn on the pi with the pHat on the Pi, it won't turn on, but when I try without the hat, it turns on normally. I have a Pi 2 running raspbian and kali Linux. What should I do?
BT does not work with NOOBS ver. 2.4.1
EEPROM update is required.
I get this error when trying to download Eeprom updates from Github
EEPROM doesn't seem to be loading kernel drivers.
Hey, just wonderingredients if it's possible to use the gpio pins with the iot hat connected.
In an image of a pi zero and an iot hat connected, I dont see anyway to connect additions components to gpio....
Thank you.
How can i use the module with the recalbox os? with plug & play they doesnt work.
Thx!
$ sudo shutdown now
will cause kernel panic, this is also the problem of the content inside the EEPROM, now looking into this issue.
The IoT_pHAT seems to be not recognized as a wifi-device in ArchARM. What would be the next place to look into for debbuging?
device accessible
$ cat /proc/device-tree/hat/product
IoT pHAT w/eep_v0.3
$ ls /proc/device-tree/soc/iothat/
name pinctrl-0 pinctrl-names status
$ cat /proc/device-tree/soc/iothat/status
okay
not recognized as wifi device
$ ifconfig -a
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1 (Local Loopback) RX packets 344 bytes 29704 (29.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 344 bytes 29704 (29.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
There's no visible traces to indicate what way to set the antenna selector for "onboard". Most of the pictures show the switch in the "away from pin headers" position. Is that the internal?
Hi,
I need to be able to stack another hat on top of the IoT_pHAT, specifically the Pimoroni Blinkt. (https://github.com/pimoroni/blinkt). As you can see from the pinout (https://pinout.xyz/pinout/blinkt) pins 16 and 18 are in use on the Blinkt, which are also used by the IoT_pHAT.
I understand that as the IoT_pHAT comes with a EEPROM I should be able to modify the Device Tree to remap the GPIO pins to those I require, which should then free up the pins I need for the Blinkt.
What I don't understand is if the pins on the IoT_pHAT are all electrically connected (and so I should be able to remap ok) or physically disconnected (so remapping is not possible).
Would anyone know?
The default clock for UART0 is 3MHz but we need 48MHz to work for the Bluetooth as Pi3 is.
Please also read this:
raspberrypi/linux#1601
Anyone know if this board can be used in monitor mode?
When running the latest debian stretch image on the Pi Zero W I get a hexdump and kernel panic during the boot process.
Hi,
I've tried a couple months ago to set my zero up with the hat to use with recalbox. Back then it didn't work. Does it work now with recalbox and the provided controllers from kickstarter?
I hope to hear from you.
With kind regards,
H
Is there/will there be support for the Raspberry Pi 3B+?
The IoT_pHAT uses the same brcm43430 wifi chipset as is used in the RPi3 working over SDIO.
It works fine in Raspbian.
NOOBS can operate with the RPi3 wifi, so it should have the correct wifi driver and firmware files included.
The correct device-tree entries appear in the /proc subsystem for the IoT_pHAT showing that the NOOBS kernel can read the details from the HAT EEPROM (I already upgraded to v0.3).
So why doesn't the wifi appear in NOOBS?
Is there something missing in the NOOBS kernel that I need to add?
I'm having problems using WIFI and BT at the same time. I'm running a python application that scans for two BT MACs in order to find out if the phone they belong to are near or not. The goal is to have a working presence detection for home automation.
I already updated the Pi to the latest available firmware and kernel using rpi-update:
$ uname -a
Linux pizero 4.4.21+ #911 Thu Sep 15 14:17:52 BST 2016 armv6l GNU/Linux
The EEPROM has been updated as advised here as well:
$ cat /proc/device-tree/hat/product
IoT pHAT w/eep_v0.3
This is the lsb info for the distribution installed:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
The system is freshly installed with only the dependancies for the script installed.
UART bootup message:
$ dmesg | grep uart
[ 0.000000] Kernel command line: 8250.nr_uarts=0 dma.dmachans=0x7f35
bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708.boardrev=0x900093
bcm2708.serial=0x57cd67 smsc95xx.macaddr=B8:27:EB:57:CD:67 bcm2708_fb.fbswap=1
bcm2708.uart_clock=48000000 bcm2708.disk_led_gpio=47 vc_mem.mem_base=0x1ec00000
vc_mem.mem_size=0x20000000 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1
root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
The application I'm using is sensorReporter.
This application runs a scan on Bluetooth once every 25 secs.
I'm observing that while the application is running there is major delay on WIFI that is not visible when the application is not running.
See below for mtr logs without the application running, then while the script runs and after the script has been stopped. All mtrs are pinging FROM another system TO the Pi zero!
Without BT activity:
$ mtr -n -c 1000 --report pizero
Start: Fri Sep 23 16:04:50 2016
HOST: 192.168.254.9 Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.254.50 0.1% 1000 5.2 12.0 1.9 118.7 17.9
With sensorReporter started:
# systemctl start sensorReporter
top - 16:58:55 up 3:00, 2 users, load average: 0.00, 0.01, 0.00
Tasks: 98 total, 1 running, 97 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.0 us, 0.0 sy, 0.0 ni, 98.7 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
KiB Mem: 445092 total, 101584 used, 343508 free, 14132 buffers
KiB Swap: 102396 total, 0 used, 102396 free. 48284 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1181 root 20 0 5100 2428 2088 R 0.7 0.5 0:00.10 top
1063 root 20 0 0 0 0 S 0.3 0.0 0:00.63 kworker/u2:1
1127 pi 20 0 12204 3724 3016 S 0.3 0.8 0:00.21 sshd
1156 root 20 0 40728 10496 6420 S 0.3 2.4 0:00.87 sensorReporter.
1 root 20 0 22756 3836 2680 S 0.0 0.9 0:06.58 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.90 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kdevtmpfs
8 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns
9 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 perf
10 root 20 0 0 0 0 S 0.0 0.0 0:00.01 khungtaskd
11 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 writeback
12 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 crypto
As you can see there is not a major load on the Pi, nevertheless there is an RTT of more then 11secs! The Wifi Access point reports excess packet loss on this wifi client in this situation.
$ mtr -n -c 1000 --report pizero
Start: Fri Sep 23 18:56:08 2016
HOST: 192.168.254.9 Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.254.50 0.9% 1000 2.1 249.1 1.6 11525 1204.0
top at the end of the mtr test:
top - 17:15:30 up 3:17, 3 users, load average: 0.00, 0.00, 0.00
Tasks: 102 total, 1 running, 101 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.0 us, 1.0 sy, 0.0 ni, 98.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 445092 total, 106340 used, 338752 free, 14332 buffers
KiB Swap: 102396 total, 0 used, 102396 free. 49784 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1347 pi 20 0 5100 2164 1820 R 1.0 0.5 0:00.15 top
1098 root 20 0 0 0 0 S 0.3 0.0 0:01.78 kworker/u2:0
1156 root 20 0 40728 10500 6420 S 0.3 2.4 0:02.15 sensorRepor+
1 root 20 0 22756 3836 2680 S 0.0 0.9 0:06.72 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:01.00 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kdevtmpfs
8 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns
9 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 perf
10 root 20 0 0 0 0 S 0.0 0.0 0:00.01 khungtaskd
11 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 writeback
12 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 crypto
13 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 bioset
14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kblockd
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 rpciod
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kswapd0
After the python script is stopped everything returns to normal:
$ mtr -n -c 1000 --report pizero
Start: Fri Sep 23 19:17:51 2016
HOST: 192.168.254.9 Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.254.50 0.0% 1000 4.9 10.0 1.6 216.1 15.7
I have tested this with two pHATs and both show this problem.
Is there any info I can provide you with that helps diagnose the issue? I'll be happy to help since running this kind of application was the reason for getting the IoT pHAT.
Hi,
I am trying to design a circuit using ap6212 module but can't find part file anywhere online.
Could you share the same?
I'd like to use this with openelec and kodi, Any help?
I've got a raspberry pi zero and the IoT pHAT. Also I'm a noob so lots of explaining would be nice.
I've tried everything in the issues, I have v0.3 of the eep, the clock is set correctly.
When I run
sudo hciconfig status
I get
Can't open HCI socket.: Address family not supported by protocol
The Pi is running DietPi if that makes any difference.
Hello,
Can we use this HAT with a Raspberry Pi Compute Module 3+ as an Access Point if we connect the right pins ?
Thank you.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.