BuzzBoard Open Source Development Board Discussion Thread


#9

Well after a lot of jigging around I’m still a bit out of my depth with this. Below I’ve pasted the output I get from the Particle cloud events for my device, in reverse order, sorry. It seems the data for temp etc is getting to the cloud but still not getting to the OSBH app. I’ve retried the webhook and it goes without error now, which is a step forward, but still not getting passed forward from particle. I’ve used the data from the info pages on OSBH buzzboard so am a little puzzled. I would like to get the recordings forwarded as well if this is possible. Surely I’m not the first one to make up a buzzboard am I? Any help is appreciated, as once I get it all working I aim to include weight scale outside temp humidity and pressure along with am ambient light sensor. I’m confident I can do that, it’s just all this cloud stuff has got me stumped.

spark/status|offline|BuzzBoard-Hive-1|3/18/19 at 5:50:56 |
|—|---|—|---|pm

measurements|{“T_in”: 20.4, “RH_i”: 55, “soc”: 98, “soh”: 92, “chg”: 5, “I”: -144, “P”: -628, “RSSI”: -35, “w_r”: 0.97, “a_r”: 0.01, “acc”: 0.000000, “lon”: 0.000000, “lat”: 0.000000}|BuzzBoard-Hive-1|3/18/19 at 5:50:45 pm|

geoLocate|{“w”:{“a”:[{“m”:“24:a7:dc:4d:3b:7a”,“s”:-63,“c”:13},{“m”:“a0:bd:cd:08:d4:ba”,“s”:-77,“c”:1},{“m”:“20:0a:8e:a9:f3:c8”,“s”:-40,“c”:13},{“m”:“94:44:52:67:2d:3f”,“s”:-38,“c”:10}]}}|BuzzBoard-Hive-1|3/18/19 at 5:50:44 pm|

spark/device/diagnostics/update|{“device”:{“system”:{“uptime”:1690,“memory”:{“total”:83200,“used”:49808}},“network”:{“connection”:{“status”:4,“error”:0,“disconnects”:3,“attempts”:1,“disconnect”:3},“signal”:{“rssi”:-32,“strength”:100,“quality”:100,“qualityv”:60,“at”:1,“strengthv”:-32}},“cloud”:{“connection”:{“status”:1,“error”:0,“attempts”:1,“disconnect”:3},“disconnects”:0,“publish”:{“rate_limited”:0},“coap”:{“unack”:0}}},“service”:{“device”:{“status”:“ok”},“coap”:{“round_trip”:300},“cloud”:{“uptime”:0,“publish”:{“sent”:0}}}}|BuzzBoard-Hive-1|3/18/19 at 5:50:44 pm|

spark/status|online|BuzzBoard-Hive-1|3/18/19 at 5:50:44 pm|

Here’s hoping someone can help.

Also I have a few spare PCB’s for buzzboard. So if anyone is interested, make a reasonable donation to OSBH and I’ll post one off to you.


#10

Hi, here are the images of my nearly completed BuzzBoard project from front and back. All nicely fitted inside a waterproof type electrical box with a clear lid which is not shown. I just have to fit the cable gland for the solar panel cable to complete the hardware, and you can see I chose to use the through hive duct for sensor measurements which I thought was a good idea by the team. I still have not managed to get the data forwarded to the app but it does go to the particle cloud. Now working on getting the audio data sent to particle cloud and adding the additional sensors I want. I will try to keep you up to date with my progress.


#11

i want to build this with raspberry pi … can you please help me sending audio files to your server to process it ??


#12

Well I have now completed the 3 BuzzBoards I wanted to build for my hives. All send their data to the app correctly but I have still not managed to get the audio sent, I keep getting an error at line 783 in ‘main_beta_comp.cpp’ and I can’t figure out what is wrong. I was wondering if it will only send if it gets a suitable sample and dumps the rest, I don’t know, it might show up once I actually fit it to my hive.


#13

For anyone thinking of making up the OS BuzzBoard, there is a fair bit of SMD soldering, but I didn’t have any problems except for the tiny little ESD chip which is like a speck of dust. It is so small I could barely see it with my normal glasses on and lost a few that flicked out of the tweezers, just as well I had to buy 50 lol. It may be worth considering the next size chip up to make it easier, although not sure if the board would need modifying. I completed the first one by hand with a hot air solder station which was fairly easy. The other 2 I completed using the gas oven in the kitchen, after using a good thermometer to check where the control needed to be for a set temperature it was easy to follow the heat curve for the solder paste I used. I did order a solder mask but the first one was done by hand with a toothpick to place the solder paste. It is essential that you do not over do it with the solder paste for the IC’s which can cause shorting if too much is used. Overall quite an easy task for someone with moderate soldering skills and the correct tools. Have fun.


#14

Hello Tim. I was just coming here to put a post to ask you what tools you used to complete these boards. Thanks for the info! I will have to do a little more searching for SMD soldering techniques, as I have never done SMD soldering before.


#15

Hi JSField, this was my first time with smd. It really is quite simple as long as you have the right tools, you will not complete this with a soldering iron for the smaller pieces and some of the chips are bottom contacts so no access for a solder iron anyway. As I said I used a toothpick to apply the solder paste on my first board as I wanted to do everything without any other special tools. The PCB’s that I ordered were soldered on the pads although I suspect the gold plated pads may have been a little better, I don’t know? You will have fun completing this project if you enjoy messing about with components and things and as long as you have a decent pair of tweezers and either a regulated hot air gun or decent thermometer for oven you are good to go. I do have a few spare boards if you are interested, just make a donation to OSBeehives and I will post a couple out to you. I was thinking around £5/$8 to cover postage costs for me and I will send 2 over to you, just in case you manage to mess one up, but I doubt it. YouTube has some good info on smd soldering.


#16

@TIMBOPLYMOUTH

Excellent work with your BuzzBoard unit(s)! Did you get hooked up to our server? How are things working?

One observation (at least from the pics) is that the hole opens directly into your enclosure. On the official hardware we use a grommet with smaller perforations to stop the bees getting into the hardware. But considering your ingenuity with this enclosure / board I’m pretty sure you thought of that and came up with something!

Again, super impressed with this effort, nice one!


#17

Hi Tristan, I’ve still not been able to get the audio side sending to the server but the data from the other sensors goes through fine. Yes I did make a cover for the tube that went into the hive wall and used a foam gasket both under the circuit board and on the outside of the box to seal things up properly (photo) 3d printers are a godsend lol. I’m trying to teach myself C++ at the moment so I can understand the code and try to work out why the audio won’t send. I used software to test the microphones and they are all working fine with lovely sound quality. I’m also in the midst of making a new hive with another to follow. I decided to move from top bar to cathedral top bar which is a lot easier for me, getting old with a knackered back.


#19

I’ve also built a BuzzBoard and it all works but the audio part.


#20

Hi Kylix, I tested my microphones with https://github.com/rickkas7/photonAudio. I used audio3, you need node.js and a couple other bits installed, but it does give you an output to ensure your mic is soldered correctly and working. As for why it does not reach the app, I don’t know and as I don’t know C++, I am having to try and learn it so I can attempt to solve the problem. Might be something simple, might be something complicated so might take me a while. It seems the software does the recording going by the serial output but just fails to send the samples. Please post if you manage to solve the problem.


#21

My new stand with scale ready for my Cathedral Top Bar Hive, hope to add the software into the main program for BuzzBoard and have the weight sent each time with the other data.


![DSC0827 3smal|690x459](upload://mJyKW4

AOXZMXCwmEBBlDhkiMacK.jpeg)


#22

Hello all,

Did anyone figure out the sound problem yet? I’m developing a high school IoT class and considering this platform as part of a class. I already use the Particle Photon, so I’m really interested in this because of the sound capability and app integration. But unless I can get that sound part sorted out it won’t be as attractive.

Thanks!


#23

I’m waiting feedback from the developers… They must fix the server where the audio recordings from the BuzzBoards are sent.


#24

Hi Kylix, I’m still trying to learn a bit of coding and working through the program to see if I can find the problem. I think it connects to the server OK but is failing somewhere in writing to server stage as it should give a warning for unable to connect to server. I have been writing out the other variables at the point of failure looking for a wrong number and get the following. count = -1, good_count = 0, aud_select = 1, send_select = 0 , samplez = 536915016, client = 536887856, MAX_BUF = 24, SAMPLE_BUF_SIZE / 2 = 1024. Still doesn’t mean too much to me at the moment but might help someone. I will keep trying whenever I get the time.


#25

Hi Kylix, I’ve been doing a little more digging and it seems the program is crashing in the module ‘AWS_STREAM’ seems to go into it ok but then just crashes out. I think I’m out of my depth now because it’s all to do with the DMA, way over my head.


#26

Unfortunately, I have no news yet from the developers. Maybe they’re not interested to solve this issue…


#27

Hi Kylix, well I must be getting closer I have had this line show up now and again in my events, not seen it before.
spark/device/app-hash 569C1277115683D68BBA6F59E4DF60D793421AB457E90D2CDB9CA7E3C2C13650 BuzzBoard-Hive-03 5/28/19 at 9:44:04 pm
I still think the problem is something to do with the DMA maybe a timing issue? I’ll try and get to where this line shows up again in the events because it is missing again at the moment, hopefully backtracking will produce it again.


#28

Hi Kylix, just out of interest can you try this file and see what output you get on serial monitor? It will be interesting to see if you get the same as me, I’ve been messing around so much I’m starting to get lost lol. Obviously you will need to unzip it first.

firmware.zip (31.2 KB)


#29

This is the latest serial output from my BuzzBoard 18-6-2019.

System firmware version: 1.2.1-rc.1
BuzzBoard FW version: 21
Setup
----- free memory: 45144
DeviceID: 260034000f47363336383437
SHT31D Serial #76042529
Connected to BQ27441!
MMA xlerometer init
----- free memory: 45104
Setup COMPLETE
State: 1
----- free memory: 45104
update params…
SHT31: T=24.50C, RH=49.26%
update params…
SHT31: T=24.56C, RH=49.18%
good: 0 total: 0
RSSI: 2, NG/OK: 0/0, wifi_rat: 1.00, A_NG/OK: 0/0, aud_rat: 1.00
State of Charge/Health: 100, 92
chg: 3, mA: 19 ,mW: 87
SHT30:
temp ©: 24.56RH (%): 49
State: 2
----- free memory: 40792
State: 2
----- free memory: 40672
State: 2
----- free memory: 40672
State: 2
----- free memory: 40672
State: 2
----- free memory: 37680
publishLocation
scanData={“w”:{“a”:[{“m”:“24:a7:dc:4d:3b:7a”,“s”:3,“c”:13},{“m”:“fa:59:71:51:3b:e1”,“s”:-26,“c”:1},{“m”:“20:0a:8e:a9:f3:c8”,“s”:-48,“c”:13}]}}
good: 0 total: 0
RSSI: -1, NG/OK: 0/0, wifi_rat: 1.00, A_NG/OK: 0/0, aud_rat: 1.00
publish
update params…
SHT31: T=24.43C, RH=49.16%
State of Charge/Health: 100, 92
chg: 2, mA: -9 ,mW: -40
State: 3
----- free memory: 37848
State: 3
----- free memory: 39064
State: 3
----- free memory: 40328
State: 3
----- free memory: 40328
stream starting
----- free memory: 40328
POST /write?db=AudioData HTTP/1.1
User-Agent: 260034000f47363336383437
Host: buzzboard-audio.osbeehives.com:8080
Accept: fw_21
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length:

----- free memory: 40328
size: 96
size 0: 1024
size 1: 1024
size 2: 1024
size 3: 1024
size 4: 1024
size 5: 1024
size 6: 1024
size 7: 1024
size 8: 1024
size 9: 1024
size 10: 1024
size 11: 1024
size 12: 1024
size 13: 1024
size 14: 1024
size 15: 1024
size 16: 1024
size 17: 1024
size 18: 1024
size 19: 1024
size 20: 1024
size 21: 1024
size 22: 1024
size 23: 1024
----- free memory: 15456
sizeof samplez: 4, 4
State: 6
----- free memory: 15456

aud_/send_select: 1 / 0, millis(22022)
success! 1, 1024

aud_/send_select: 2 / 1, millis(22184)
success! 2, 1024

aud_/send_select: 3 / 2, millis(22347)
success! 3, 1024

aud_/send_select: 4 / 3, millis(22509)
success! 4, 1024

aud_/send_select: 5 / 4, millis(22672)
success! 5, 1024

aud_/send_select: 6 / 5, millis(22834)
success! 6, 1024
State: 6
----- free memory: 15456

aud_/send_select: 7 / 6, millis(22997)
success! 7, 1024

aud_/send_select: 8 / 7, millis(23159)
success! 8, 1024

aud_/send_select: 9 / 8, millis(23322)
success! 9, 1024

aud_/send_select: 10 / 9, millis(23484)
success! 10, 1024

aud_/send_select: 11 / 10, millis(23647)
success! 11, 1024

aud_/send_select: 12 / 11, millis(23809)
success! 12, 1024
State: 6
----- free memory: 15456

aud_/send_select: 13 / 12, millis(23971)
success! 13, 1024

aud_/send_select: 14 / 13, millis(24134)
success! 14, 1024

aud_/send_select: 15 / 14, millis(24296)
success! 15, 1024

aud_/send_select: 16 / 15, millis(24459)
success! 16, 1024

aud_/send_select: 17 / 16, millis(24621)
success! 17, 1024

aud_/send_select: 18 / 17, millis(24784)
success! 18, 1024
State: 6
----- free memory: 15456

aud_/send_select: 19 / 18, millis(24946)
success! 19, 1024

aud_/send_select: 20 / 19, millis(25109)
success! 20, 1024

aud_/send_select: 21 / 20, millis(25271)
success! 21, 1024

aud_/send_select: 22 / 21, millis(25434)
success! 22, 1024

aud_/send_select: 23 / 22, millis(25596)
success! 23, 1024

aud_/send_select: 0 / 23, millis(25759)
success! 24, 1024
State: 6
----- free memory: 15456

aud_/send_select: 1 / 0, millis(25921)
success! 25, 1024

aud_/send_select: 2 / 1, millis(26084)
success! 26, 1024

aud_/send_select: 3 / 2, millis(26246)
success! 27, 1024

aud_/send_select: 4 / 3, millis(26409)
success! 28, 1024

aud_/send_select: 5 / 4, millis(26571)
success! 29, 1024

aud_/send_select: 6 / 5, millis(26734)
success! 30, 1024
State: 6
----- free memory: 15456

aud_/send_select: 7 / 6, millis(26896)
success! 31, 1024

aud_/send_select: 8 / 7, millis(27058)
success! 32, 1024

aud_/send_select: 9 / 8, millis(27221)
success! 33, 1024

aud_/send_select: 10 / 9, millis(27383)
success! 34, 1024

aud_/send_select: 11 / 10, millis(27546)
success! 35, 1024

aud_/send_select: 12 / 11, millis(27708)
success! 36, 1024
State: 6
----- free memory: 15456

aud_/send_select: 13 / 12, millis(27871)
success! 37, 1024

aud_/send_select: 14 / 13, millis(28033)
success! 38, 1024

aud_/send_select: 15 / 14, millis(28196)
success! 39, 1024

aud_/send_select: 16 / 15, millis(28358)
success! 40, 1024

aud_/send_select: 17 / 16, millis(28521)
success! 41, 1024

aud_/send_select: 18 / 17, millis(28683)
success! 42, 1024

aud_/send_select: 19 / 18, millis(28846)
success! 43, 1024
State: 6
----- free memory: 14192

aud_/send_select: 20 / 19, millis(29008)
success! 44, 1024

aud_/send_select: 21 / 20, millis(29171)
success! 45, 1024

aud_/send_select: 22 / 21, millis(29333)
success! 46, 1024

aud_/send_select: 23 / 22, millis(29496)
success! 47, 1024

aud_/send_select: 0 / 23, millis(29658)
success! 48, 1024

aud_/send_select: 1 / 0, millis(29821)
success! 49, 1024
State: 6
----- free memory: 15456

aud_/send_select: 2 / 1, millis(29983)
success! 50, 1024

aud_/send_select: 3 / 2, millis(30146)
success! 51, 1024

aud_/send_select: 4 / 3, millis(30308)
success! 52, 1024

aud_/send_select: 5 / 4, millis(30470)
success! 53, 1024

aud_/send_select: 6 / 5, millis(30633)
success! 54, 1024

aud_/send_select: 7 / 6, millis(30795)
success! 55, 1024
State: 6
----- free memory: 15456

aud_/send_select: 8 / 7, millis(30958)
success! 56, 1024

aud_/send_select: 9 / 8, millis(31120)
success! 57, 1024

aud_/send_select: 10 / 9, millis(31283)
success! 58, 1024

aud_/send_select: 11 / 10, millis(31445)
success! 59, 1024

aud_/send_select: 12 / 11, millis(31608)
success! 60, 1024

aud_/send_select: 13 / 12, millis(31770)
success! 61, 1024
row: 0
----- free memory: 16488
row: 1
----- free memory: 17520
row: 2
----- free memory: 18552
row: 3
----- free memory: 19584
row: 4
----- free memory: 20616
row: 5
----- free memory: 21648
row: 6
----- free memory: 22680
row: 7
----- free memory: 23712
row: 8
----- free memory: 24744
row: 9
----- free memory: 25776
row: 10
----- free memory: 26808
row: 11
----- free memory: 27840
row: 12
----- free memory: 28872
row: 13
----- free memory: 29904
row: 14
----- free memory: 30936
row: 15
----- free memory: 31968
row: 16
----- free memory: 33000
row: 17
----- free memory: 34032
row: 18
----- free memory: 35064
row: 19
----- free memory: 36096
row: 20
----- free memory: 37128
row: 21
----- free memory: 38160
row: 22
----- free memory: 39192
row: 23
----- free memory: 40224
aws stopping
testnum entries ; good/fails/overflows (x16) // total packets:
0 ; 61/0/0 // 61
OBC send
POST /write?db=AudioData HTTP/1.1
User-Agent: 260034000f47363336383437
Host: buzzboard-audio.osbeehives.com:8080
Accept: /
Connection: keep-alive
Content-Type: text/plain
Content-Length:

0

State: 8
----- free memory: 40328
Go to sleep… zzz