Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can it run on RPi 3? #66

Closed
joknjokn opened this issue Nov 6, 2021 · 115 comments
Closed

Can it run on RPi 3? #66

joknjokn opened this issue Nov 6, 2021 · 115 comments
Assignees
Labels
question Further information is requested

Comments

@joknjokn
Copy link

joknjokn commented Nov 6, 2021

Hi,

I'm wondering if you think this could run on RPi 3? If so, would it require difficult changes?

Thanks!

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Nov 6, 2021

Hello! Thanks for your interest! I'm sorry I cannot answer this with any real certainty since I've not been able to test on a RPi3 myself yet and do not know.

I do think BirdNET-Pi would run on the RPi 3B+. So long as the ARM64 version of RaspiOS is the operating system, the TFLite pre-built binaries ought to run, which is the only part that might fuss.

You will want to enable the zRAM swapping to compensate for the 3B+'s small memory. There is a tool for this under birdnet-pi-config's System Options.

See the screen shots below for how to use the tool:
In the Raspberry Pi's terminal (after installing BirdNET-Pi), OR from an SSH terminal session with the BirdNET-Pi, issue birdnet-pi-config:
image
Use your arrow keys to select "System Options"
image
Then select "Configure zRAM"
image
Choose yes
image
I recommend using 2G for the RPi3
image
Then you'll see this
image

You'll have to reboot for the swap partition to be available.

Please give it a try, OR you are welcome to test the new pre-installed image HERE to save a little time. (You'll still want to do the zRAM options above if you choose this method.)

Please let me know if you encounter any trouble or have any other questions and I will be more than happy to assist you!

@mcguirepr89 mcguirepr89 self-assigned this Nov 6, 2021
@mcguirepr89 mcguirepr89 added the question Further information is requested label Nov 6, 2021
@mcguirepr89
Copy link
Owner

mcguirepr89 commented Nov 8, 2021

Hello, @joknjokn -- I hope this update finds you well.

We have been working on this for you and tests are looking quite promising:

  • YES BirdNET-Pi does run on the Raspberry Pi 3B
  • It DOES require the zRAM swaping to be configured
  • It would likely benefit from disabling the Live Audio Stream, and/or disabling the desktop altogether so that BirdNET-Pi only boots into the command line.
  • Adequate cooling is a must!!
  • Once you get a reliable method of cooling, you can experiment with overclocking the arm, which could yield results comparable to the RPi4

I am more than happy to help out with any of the above suggestions, simply let me know where you'd like guidance and I will provide what I can!

My best regards,
Patrick

PS
I am keeping this issue open while I tinker with things a bit more and will provide any updates here that could be helpful.

@joknjokn
Copy link
Author

joknjokn commented Nov 8, 2021

@mcguirepr89 , thank you so much! I hope to get time for it soon, but since I can't find my RPi3-fan (ordering new one), I can't try yet. If the RPi3 gives me too much trouble, I'll probably order a RPi4.

Also, I was actually inspired by your project and managed to make a Flutter-app (Android only at the moment) that uses the BirdNet-model and also runs "live" and collects the results, without saving recordings though. Kind of like a portable mini-version of yours. Not nearly done, and I'm unsure if it will be, but the live-BirdNet functionality is really fun!

@mcguirepr89
Copy link
Owner

Also, I was actually inspired by your project and managed to make a Flutter-app (Android only at the moment) that uses the BirdNet-model and also runs "live" and collects the results, without saving recordings though. Kind of like a portable mini-version of yours. Not nearly done, and I'm unsure if it will be, but the live-BirdNet functionality is really fun!

That's awesome! I don't have any Android devices (as much as I love me some Linux), otherwise I would be eager to check this out. Please feel invited to share that project on this page's Discussions if you'd like -- I think it sounds very cool.

I actually have been able to successfully integrate a live detection stream from the BMBF InnoTruck demonstration source code that can utilize the same TFLite pre-built binaries that BirdNET-Pi uses for BirdNET-Lite. The full stack offers a live audio stream, a live spectorgram, and photos, but I've only been able to get the live detections and photos to work properly. Please take a look here in hopes that you might be able to help out with getting this firmly integrated into BirdNET-Pi, for which I would be very grateful!!!

My best regards

@mcguirepr89
Copy link
Owner

Hello again -- I haven't had the time to work on this, so please let me know how it goes for you. I'm happy to help you figure out how to get the resource requests to match up to what the RPi3 can offer, but I didn't want you to expect more updates from me at this moment as I'm focused elsewhere for the time being.

My best,
Patrick

@joknjokn
Copy link
Author

Sorry, forgot to reply.

The flutter/android-project is too messy to share at the moment. I had to mess up a third tflite-plugin to get it to work.

Regarding BirdNet-PiRPi3, it's more of a "long term" project for me, with slow progress. I think my next step is to see if I can grab a cheap RPi4 at black friday, before I spend too much time experimenting. But thanks a lot for the help - I'm sure I'm not the only one interested in getting it to work on RPi3 also. Really appreciate the help :)

@mcguirepr89
Copy link
Owner

It may be worth considering the new Raspberry Pi 2 Zero W -- it has a comparable ARM processor to the RPi3B with less power-consumption and MUCH cheaper. If I could get BirdNET-Pi running on one of those, then we would be in pretty exciting territory being able to edge compute deep neural networks on a $15 computer!!

I'll certainly keep you posted on any headway I make for either device.
Please accept my best regards -- Patrick

@joknjokn
Copy link
Author

That's interesting. Also probably better for portability with powerbank+solar, if that's ever going to happen!

@mcguirepr89
Copy link
Owner

Also probably better for portability with powerbank+solar, if that's ever going to happen!

I surely hope someone has the resources and know-how to put that together -- it would be really exciting to Frankenstein a BirdNET-Pi that could live forever in the woods (like Frankenstein's real monster). 🧟

@gitalm
Copy link

gitalm commented Nov 25, 2021

HI, thanks for the hints. I tried to install without desktop and everything went fine. I also activated zram. But i cannot connect to http://birdnet.local
I can connect via ssh from the same PC, but also the IP adress in the browser isn't showing something.

Thanks for the help

@gitalm
Copy link

gitalm commented Nov 25, 2021

It is obviously working, but i cannot access the webpage
image

@mcguirepr89
Copy link
Owner

Hello, @gitalm and thank you so much for your interest in BirdNET-Pi. Sorry I wasn't able to get back to you yesterday, but it was Thanksgiving here in the US and I had a lot going on.

Running on a RPi3 is somewhat tricky due to resource constraints, but I'm happy to work with you on getting things working as best as possible.

To begin, I wanted to be sure you're attempting to access the correct web page. Your comment mentions not being able to reach the web interface at "http://birdnet.local," but the web interfaces is actually at http://birdnetpi.local -- notice the 'pi' tucked in between .local and birdnet.

Could you check for me to see if you are able to access the web interface at http://birdnetpi.local?

Thank you and I will be around today to help out as much as I can --
My best,
Patrick

@mcguirepr89
Copy link
Owner

Hi, @gitalm -- I just wanted to follow up with you to see if you've had an opportunity to revisit the web interface at http://birdnetpi.local with any success?

Wishing you a great weekend,
Patrick

@gitalm
Copy link

gitalm commented Nov 27, 2021

Dear Patrick

it is working. I think i a problem with my USB Microphone. Is a microphone for the 3.5mm Jack not applicable?

Thanks for helping

But it is not processing any files. See attached screenshoot. What ca i do?
grafik

grafik

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Nov 27, 2021

Could you show a screenshot of the "BirdNET-Lite Log" under "System Links"? That will likely tell a bit more about what is going on.

With that said, I believe the problem will be due to no audio data input. I suspect that the spectrograms are black? Please confirm this for me. This is because the 3.5mm audio jack that is built into the pi does not support audio input.

What I would recommend to see what is going on are the following, which I will describe better below.

  1. Temporarily stopping the birdnet_recording.service
  2. Removing all of the recordings your system has created so far
  3. Grabbing some extracted sound files from @CaiusX's installation to populate today's directory on your system OR Plug in a USB audio input device
  4. Watching the "BirdNET-Lite Log" found under "System Links" on http://birdnetpi.local
  5. Reporting results here

To Temporarily stop the birdnet_recording.service, issue:

sudo systemctl stop birdnet_recording.service

To Remove all of the recordings your system has created so far, issue:

rm -rfv ~/BirdSongs/November-2021/27-Samstag/*

To *Grab some extracted sound files from @CaiusX's installation to populate today's directory on your system, find a sound from a bird that has a very high confidence score (they're embedded in the file name, so you can sort by file name to get a file with a high confidence score) and right-click the file to save it. Place it in the /home/pi/BirdSongs/November-2021/27-Samstag/. Once the file is there, the birdnet_analysis.service should find it and start analyzing almost immediately.

*Note: @CaiusX's installation is set for very different latitude and longitude than you are likely to have, so your system might not have the best chance of making a detection with exotic sounding birds. If using one of those files does not lead to a detection, we should still see it at least get processed successfully, so the test is not worthless.

**Note also that the RPi3 cannot keep up with realtime running all services, so you will still see files accumulate where the same installation will have no more than 2-3 files at a time on an RPi4.

OR

To Plug in a USB audio input device for testing, simply plug in the new device and navigate to the "Tools" link under "System Links," enter the user birdnet and the password you configured for the web interface. Then press the "Restart Recording Service" button.

After those things, Watch the "BirdNET-Lite Log" found under "System Links" on http://birdnetpi.local to see if recordings are being analyzed.

I'll be out for the rest of the day, but I will certainly respond as soon as I have the chance.

@gitalm
Copy link

gitalm commented Nov 27, 2021

Sorry for the delay. Sometimes the RPi3 Server is not accesible

Seems like Tensorflow has a problem

grafik

@gitalm
Copy link

gitalm commented Nov 27, 2021

I installed Tensorflow for Python 3.9 with the following command,
python -m pip install --upgrade https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.12.0-py3-none-any.whl
and then the next issue appeared
grafik
grafik

grafik

I have also some issues about analyze.py
First mysql.connector was missing
pip install mysql.connector
grafik

But i can load the model
grafik

But the Error still is there (You can see the log from the webinterface and a bash from the RPi logged in via ssh)
grafik

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Nov 27, 2021

Hi, @gitalm. I can shed a lot of light on what you are seeing and hopefully you'll have a better understanding of how BirdNET-Pi is put together.

Before anything, though, I will need you to verify with no uncertainly that you are using the ARM64 version of RaspiOS built on Debian Bullseye that can only be found here. Please don't continue troubleshooting until you can be sure that you are using the 64-bit version of the OS.

I installed Tensorflow for Python 3.9 with the following command,
python -m pip install --upgrade https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.12.0-py3-none-any.whl
and then the next issue appeared

This method, although it does not fail, does not install the site packages where BirdNET-Pi needs them to be. BirdNET-Pi's services utilize a python venv that is specifically built for the services. Also, that version of Tensorflow is not what is needed here and will not work. You will need to use the pre-built TFLite binaries that are included in the wheels in the BirdNET-Pi directory:

With that in mind, you can understand why your later interactions with the OS's site-packages seemed to indicate that those site-packages are not installed on the system . . .

I have also some issues about analyze.py
First mysql.connector was missing
pip install mysql.connector
But i can load the model . . .

They are installed, but need to be accessed from within the 'birdnet' python venv located in the BirdNET-Pi directory. To activate the appropriate python virtual environment, you will need to issue source ~/BirdNET-Pi/birdnet/bin/activate.

From that venv prompt, your pip interactions will actually be affecting the correct site-packages. Issue pip list to see the site-packages that BirdNET-Pi will actually be using.

Before we troubleshoot too much more, could you please relay to me your installation procedure?

My best

@gitalm
Copy link

gitalm commented Nov 28, 2021

Thanks for all your help
i followed the instructions from Headless installtion, but didn't avtivated the VNC and used ssh instead. I installed a Lite version from https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2021-11-08/2021-10-30-raspios-bullseye-arm64-lite.zip I wanted to use as less services as available, to get enough speed.
After that i increased the Z-Ram by 2G like described above.

image

I also had to install bc seperatedly, because there was a failure inside the Log from the website.
sudo apt install bc

The sourcecommand didn't work out
image

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Nov 28, 2021

I'm happy to help and appreciate you trying to get this up and running on the Lite version of the OS. I used to only run things on the Lite version for my personal installations, but have done a lot of developing since then and it seems like there may be some dependency issues when using Lite now. Thank you for your help in pin pointing those things for me and others.

I'm scratching my head on how to best investigate what is going on. Not having the "activate" file in the python venv does not make sense to me, so I can only conclude that there were some glaring errors during installation that need to be addressed.

Is there any chance you would be willing to host a remote desktop session via AnyDesk on the device you are using to access the BirdNET-Pi via SSH?

I would really like to take a look through some logs and basically redo the installation while increasing the installer's verbosity.

If a remote session is out of the picture, I can recommend the following, which is what I would personally do:

  1. Issue /home/pi/BirdNET-Pi/scripts/uninstall.sh to remove everything that has been installed so far
  2. Issue rm -drfv /home/pi/BirdSongs to remove the data directory
  3. Issue cp ~/BirdNET-Pi/birdnet.conf-defaults ~/BirdNET-Pi/birdnet.conf to create a new, generic birdnet.conf
  4. Edit birdnet.conf to NOT select NoMachine installation and go ahead and set your Latitude and Longitude
  5. Increase verbosity in the install_birdnet.sh and install_services.sh scripts. Near the top of each script, there is a line for debugging:
    . . .
    # set -x
    . . .
    
    Remove the '#' to enable debugging.
  6. Issue /home/pi/BirdNET-Pi/scripts/install_birdnet.sh

Very carefully examine the installation for any errors to investigate further.

Again, I'm more than happy to take a look myself with AnyDesk -- this information is quite valuable to me, so either way I appreciate your persistence.

My best

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Nov 28, 2021

I had another thought:
You may try using the pre-installed Beta image, which we know works, and then disable the desktop environment and all of its services by changing the system's default target. You would still need to enable the zRAM, but you know how to do that.

To use the pre-installed image and then disable the graphical.target:

  1. Write the Pre-installed image you can find here to the SD card and insert it into the Pi to boot.
  2. Wait at least 5 minutes for the system to configure itself after the first boot. Better wait 7 just to be sure. It will reboot when it has finished.
  3. After 7 minutes (the reboot), you can connect to the "BirdNET-Pi_v0.9" WiFi network from the host machine you've been using to access BirdNET-Pi via SSH. The "BirdNET-Pi_v0.9" Access Point password is 'birdnetpi'
  4. Once on the "BirdNET-Pi_v0.9" network, you can use a VNC client to connect to 192.168.16.1. The user is 'pi' and the default password is 'birdnetpi'
  5. Before starting the configuration wizard, open the terminal and issue sudo systemctl set-default multi-user.target to disable the desktop for all subsequent sessions.
  6. Also issue
    sudo sed -i 's/ExecStart=.*/ExecStart=echo/g' /etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
    
    to fix a bug with the image.
  7. After those terminal adjustments, you can walk through the BirdNET-Pi Configuration Wizard to setup the system.
  8. When the http://birdnetpi.local page automatically opens upon completion, reboot the BirdNET-Pi.

Let me know if you would like to pursue this option and/or if you have any questions about the process.

@gitalm
Copy link

gitalm commented Nov 28, 2021

Dear Patrick, thanks for your help.
I have two problems. I reinstalled the whole with the version mentioned in the Headless Installation and did exactly all steps. The Problem remains
grafik

I would try to use you 0.9 image, but the server is not found at the moment.

grafik

@mcguirepr89
Copy link
Owner

Do try once more
image

@mcguirepr89 mcguirepr89 changed the title Cat it run on RPi 3? Can it run on RPi 3? Nov 28, 2021
@gitalm
Copy link

gitalm commented Nov 29, 2021

Dear Patrick,

i could now download your image and installed it on the RPi3. I can connect to the WIFI, but i cannot reach the RPi, neither SSH nor VNC (see screenshot)
Is there another password?

Best wishes Johannes
grafik

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Nov 29, 2021

That "BirdNET-Pi_v0.9" access point is the way into the system. Could you please show me what kind of error you are seeing when trying to connect with VNC and with SSH?

Also, be sure you wait the 5-7 minutes after the first boot for initial configuration.

@gitalm
Copy link

gitalm commented Dec 11, 2021

Dear Patrick,

today my RPi 4 arrived and it is working. My problem with the RPi 3 was, that i used RPImager and set automatically a password.
Thanks for the .0.10 version. Will try RPi3 soon, just need another SD Card.

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Dec 11, 2021

That's great news! I just got a new job that starts Monday, so I will get myself a RPi3 in the next couple of months and will be able to do much more thorough testing for that model.

May I ask where your BirdNET-Pi will be listening?

@mcguirepr89
Copy link
Owner

I don't have any experience with the 2G, but I wouldn't expect it to perform drastically different for the BirdNET-Pi. If you have any plans to use the full version of RaspiOS (instead of RaspiOS-Lite), then I would encourage you to get the 4GB RAM option, as the graphical user interfaces hog RAM quickly.

@joknjokn
Copy link
Author

Alright, that's great to hear. I will probably have fun with RaspiOS at some point, but 4G won't be in stock anywhere until April I believe. Can't wait for that ;-)

Btw., I guess a possible explanation for the initial temp-issue, then under-voltage issue, could be that until I cooled it, it never really got to consume too much power before it throttled due to temperature. Now with the lower temperature, it speeds up and hits the under-voltage. (Maybe that's what you also suggested.)

@oliverk71
Copy link

Turns out once again that temperature can cause problems and appropriate cooling is essential. Until now I am fine with the aluminium heatsink case, but let's wait for summer. I think it is important to protect the pi against the sun. But on real hot days (above 35°C) temperature may cause problems even without the sun directly shining on the pi. However, I hope there will be better cooling cases in future, which maybe combine heat pipes and large coolers. Because I really don't want to use a fan.

@joknjokn
Copy link
Author

I'm going to try an RPi4 2G with this fan (hopefully silent) in the official case:
image

@oliverk71
Copy link

@joknjokn What kind of power supply do you use? Specs? Make sure it delivers enough power.
Regarding fans: small fans are never silent, because they need to run faster.

@mcguirepr89
Copy link
Owner

I've had a lot of success using 12v desktop computer fans plugged into the 5v pins. They're very quiet at that voltage and work like a charm (and they're SUPER cheap if you can find them as old parts from a junk computer).

@mcguirepr89
Copy link
Owner

@joknjokn

Btw., I guess a possible explanation for the initial temp-issue, then under-voltage issue, could be that until I cooled it, it never really got to consume too much power before it throttled due to temperature. Now with the lower temperature, it speeds up and hits the under-voltage. (Maybe that's what you also suggested.)

I think that is very plausible/probable and a great observation.

@oliverk71
Copy link

I always try to exchange small fans with larger fans whenever possible. But I do not want to use ANY fan for a pi, especially not for outdoor use.

Regarding the pi 4B: there is a heatpipe cooler available! It is relatively small and it comes with a fan (to get rid of the heat piped off the CPU to the above cooler). There are two versions. Here is the image of the tower cooler:

image

@oliverk71
Copy link

oliverk71 commented Jan 27, 2022

@mcguirepr89 I just installed birdnet-pi on the 3B again. There was an error at step 3. The caddyfile was not updated with the address I entered in the pre-configuration, so I did it manually. Also, I tried to set the recording time to 30 s, but it did not work somehow (edit: works after reboot). Don't know if it possibly makes problems that I have now two birdnet-pis in my local network. Guess, I will have to update the menu.html and the caddyfile, to the IP-address or local domain birdnetpi2.local. Give me some time to check everything.

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Jan 27, 2022

@oliverk71

There was an error at step 3

That portion implies you installed using birdnet-pi-config, is that correct? You did not use the installation one-liner that calls newinstaller.sh, is that correct?

I need to confirm because the new forms branch that will ultimately get pulled into the main branch will have birdnet-pi-config removed. The forms branch is my current testing ground for new ideas, and the new installation approach is now to always perform a default installation with the one-liner and perform customizations afterwards.

If I'm going to change the documentation for installation before doing the pulling, so that everything will reflect this new approach.

Of course, I'm a command line kind of guy, so there will always be a command-line way of doing things if you need/want to.
So, to install from the command line using a pre-configured birdnet.conf, do the following:
Note: This example assumes you have only booted into a newly installed RaspiOS-Lite-ARM64 image.

  1. Get git
    sudo apt update && sudo apt -y install git
    
  2. Get the new branch
    git clone -b forms https://github.com/mcguirepr89/BirdNET-Pi.git /home/pi/BirdNET-Pi
    
  3. Make a copy of the birdnet.conf-defaults file called birdnet.conf
    cp ~/BirdNET-Pi/birdnet.conf-defaults ~/BirdNET-Pi/birdnet.conf
    
  4. Edit the new birdnet.conf to your needs. *Note: Don't use the EXTRACTIONLOG_URL under Custom URLs for now. It is the Web Terminal now. It will be changed sometime soon.
    nano ~/BirdNET-Pi/birdnet.conf
    
    or
    sudo apt -y install vim && vim ~/BirdNET-Pi/birdnet.conf
    
  5. Now you can install using your pre-configured birdnet.conf
    ~/BirdNET-Pi/scripts/install_birdnet.sh
    

I hope that helps out!
Best regards,
Patrick

Also, if you are concerned about there being two Raspberry Pis with the same hostname, you do a few things:
Note: These steps would take place just after making a copy of birdnetpi.conf-defaults

  • Edit ~/BirdNET-Pi/install_services.sh before running the installer, and after installing, changing your ~/BirdNET-Pi/scripts/update_birdnet.sh
    1. Edit install_services.sh to replace birdnetpi with the hostname of your choosing:
      ...
      set_hostname() {
        if [ "$(hostname)" != "birdnetpi" ];then
          echo "Setting hostname to 'birdnetpi'"
          hostnamectl set-hostname birdnetpi
          sed -i 's/raspberrypi/birdnetpi/g' /etc/hosts
      fi
      ...
      
    2. Edit your birdnetpi.conf to your needs, probably putting http://mynewhostname.local as the Custom URL for BIRDNETPI_URL. If you do want that, over say and IP address, then you should also issue sudo systemctl enable --now avahi-alias@mynewhostname.local.service. That will send the mDNS announcement to the network that your new installation is mynewhostname.local now (just like birdnetpi.local is for a default installation).
      }

Bonus: If you like working in the terminal, I have put together a very informative tmux.conf that can be used to monitor things.

sudo apt -y install tmux && sudo ln -sf ~/BirdNET-Pi/templates/tmux.conf /etc/tmux.conf && tmux

If you've never used tmux before, the "prefix" to send (most) commands to tmux is CTRL+B, then you press whatever you need. The best place to start exploring with that is CTRL+B, then ?. Have fun!

@oliverk71
Copy link

@oliverk71

There was an error at step 3

That portion implies you installed using birdnet-pi-config, is that correct? You did not use the installation one-liner that calls newinstaller.sh, is that correct?

Oh, now I realize what happened. I used the newinstaller.sh but I then used birdnet-pi-config, too!

I will try again.

@oliverk71
Copy link

oliverk71 commented Jan 28, 2022

@mcguirepr89 Works perfect! I just discovered the web terminal. Until now I always used ssh -l pi IP for login and had to enter my password, which I cannot remember and had to look up every time. Of course, I could have used a client, but I like the web terminal very much. :) And even more the idea to use it over the internet. This will make it much easier to remote access birdnet-pis without necessarity of open SSH port. I also had a quick look into the file manager and I think this can be useful. But, if am not wrong again, the user changes: a file owned by pi and copied is then owned by caddy. For the file permissions I personally prefer ugo, because I cannot remember the numbers, lol. But maybe I can get used to it or look it up. Ah, I see, when I click on it, I can set permissions easily. Nice!
Would it be possible to copy files not only locally but over the internet?

I think about to replace the pi 4B in my garden with the 3B, since everything works nice. But I would like to copy the database from the 4B to the 3B to not lose any bird recognitions. Of course, I have to be careful and set it up with the exactly same GPS coordinates and ID for birdweather etc.

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Jan 28, 2022

@oliverk71 Thanks for the kind words :)

I like the web terminal very much. :) And even more the idea to use it over the internet.

Thanks again, but that is thanks to @yudai'sGoTTY

I still need to lock down that service through my little caddy reverse_proxy localhost:8080 trick via another mDNS and need to replace the EXTRACTIONLOG_URL with WEBTERMINAL_URL and default that the way birdnetpi.local is the default mDNS for the BIRDNETPI_URL. I've tested this and it works great. I'm also considering utilizing caddy's tls internal as a default so that everything can be served over HTTPS, even locally. That's all to say, you probably shouldn't make it internet accessible yet, unless you lock it down in some other fashion that prevents tampering with your system. Just a tester's warning :)

But I would like to copy the database from the 4B to the 3B to not lose any bird recognitions.

Unless you're planning on changing out SD cards for some reason, I'm 90% sure you can just put the SD card you're using into the RPi3B and it shoud just work, as they say. If not, there is a command line tool I put together called rebuild_db.sh, but there is one line that needs to be corrected (you can probably git pull to get this change). If you need to do a clean install on the RPi3B, you can just copy over the BirdDB.txt file from one system into the new installation's /home/pi/BirdNET-Pi directory, and then run rebuild_db.sh and it will do what it promises. Hope that helps!

@oliverk71
Copy link

I'm also considering utilizing caddy's tls internal as a default so that everything can be served over HTTPS, even locally. That's all to say, you probably shouldn't make it internet accessible yet, unless you lock it down in some other fashion that prevents tampering with your system. Just a tester's warning :)

@mcguirepr89 Maybe I wait for your next release. The project develops so quickly. :)

Unless you're planning on changing out SD cards for some reason, I'm 90% sure you can just put the SD card you're using into the RPi3B and it shoud just work, as they say.

That would not work, since I have the 0.1 on the 4B and for the 3B I used the newinstaller.sh . But I will try to copy the BirdDB.txt, maybe I try on sunday, but I don't know yet.

@Molokai
Copy link

Molokai commented Jan 29, 2022

Just joining this thread to say that today I finally got BirdNetPi running on my Raspberry 3B+ too!

During first install I had similar issues reported above - wrrors due to missing tflite and no activate script. I did not know the zram trick at the time, and I also did the installation without a sound card installed.

Got the UGREEN ADC, and while I am still waiting for em-271 microphone I just plugged in some old 3.5mm TRRS handsfree and tossed outside the window - and to my huge surprise, it has managed to pick up some 10-11 species just this afternoon. Pretty amazing what it can do with lousy audio!

It was falling behind on processing (with the default 15 second record time). I've set it to 60 seconds for now, to see if it catches up during the evening.

By the way - if I just want to pause recording for a while - what was the command to do so?

Thank you again - this is going to be fun!
(and by the way, this one is also located in Norway)

@mcguirepr89
Copy link
Owner

Hi, @Molokai! I'm glad you're joining in.

This thread has gotten pretty long and I will definitely be using some of its contents for new documentation, but thank you for reading through it to get your system working.

It was falling behind on processing (with the default 15 second record time). I've set it to 60 seconds for now, to see if it catches up during the evening.

I just wanted to remind you that the forms branch is still very much in testing and there are already a few bugs that I've fixed since this morning. I suppose I will start a discussion for running things on Raspberry Pi 3B[+] until I can get the documentation updated. You will definitely need to keep the recording length above 30 seconds for things not get backed up.

By the way - if I just want to pause recording for a while - what was the command to do so?

If you're interested in continuing the analysis while stopping the recording, you will need to use the "Web Terminal" to issue

sudo systemctl stop birdnet_recording.service

After that, you can watch the logs on the web interface and wait until things are caught up, then, from the "System Links" > "Tools" page you can just click "Restart Recording" and you'll be in good shape.

Thank you again - this is going to be fun!
(and by the way, this one is also located in Norway)

😎 That is awesome!! Thank you so much for letting me know. You'll see that there are Norwegian translations available for the database in "System Links" > "Tools" > "Settings" > "Database Language" -- I hope it is helpful for you!

@gitalm
Copy link

gitalm commented Jan 31, 2022

Dear @mcguirepr89 ,

my Pi3+ is working now. Just the Today View, Overview View and Database View is not showing anything. I played some sounds with my Smartphone and all was identitfied correctly.
I can see all birds under Extractions but not in the other views.

Best wishes
grafik
grafik

@mcguirepr89
Copy link
Owner

mcguirepr89 commented Jan 31, 2022 via email

@gitalm
Copy link

gitalm commented Jan 31, 2022

@mcguirepr89 ,

just a update didn't the trick. Probably i have to set it up newly.

Really looks great and is working fine.

@mcguirepr89
Copy link
Owner

That's great! I'm very excited for this new version -- lots of great new features and lots of user-feedback has been addressed. There are still many things I'm working on, but it is shaping up pretty well.

@joknjokn
Copy link
Author

joknjokn commented Jan 31, 2022

@mcguirepr89 A question about updating (though not RPi3 specifically): I installed BirdNET-Pi with newinstaller on my RPi4. Can I get the updates you're discussing just by updating through the Tools tab? Or do I need another branch/installation? And do you have some release-notes about the new stuff somewhere? :)

@mcguirepr89
Copy link
Owner

@joknjokn You can certainly try using the Update tool on the "Tools" page, though there could be some things that don't work. (not sure yet what those things could be -- could also be nothing) You would have to let me know what is not working as you discovered the issues. Sorry that testing and updating are not simpatico -- Please let me know how the Update tool works out for you and I can guide you from there. Worst case scenario you will need to do a clean install, but during testing, that's not a terrible worst-case scenario.

@joknjokn
Copy link
Author

@mcguirepr89 I have no problem with potential issues - I'll let you know if I find anything. Thanks!

@gitalm
Copy link

gitalm commented Jan 31, 2022

It's running now! Thanks

grafik

@joknjokn
Copy link
Author

@mcguirepr89 I see no errors. I updated - still worked. Rebooted - still works. But not sure what new stuff to look for :)

@mcguirepr89
Copy link
Owner

@joknjokn you might see that the "Tools" page has been reworked and that there is now a web interface for creating and editing include_species_list.txt and exclude_species_list.txt files that do as they sound. This will help greatly with mitigating false positives and will give the user better control over their results. If you don't see those pages, do another update and be sure to reload the page without cacheing (i.e., remove cached versions of the Tools page by clearing your browser cache or reloading the page without caching enabled).
Let me know what you think!

@joknjokn
Copy link
Author

@mcguirepr89 Tools-tab still looks same to me, after updating, rebooting, clear cache. I see nothing about include/exclude - just the 12 buttons. Version in top says 0.11.

So - seems like Tools->Update is not working, or is fetching from a wrong place.

Is there another way to update? Through ssh maybe?

@joknjokn
Copy link
Author

@mcguirepr89 I just realized there's a difference between the newinstaller-url you mention in this thread and the one in the main readme - sorry! I used the one from the main readme for my RPi4. I guess that's why I didn't get the new updates. :)

Repository owner locked and limited conversation to collaborators Feb 1, 2022
@mcguirepr89 mcguirepr89 converted this issue into discussion #123 Feb 1, 2022

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

7 participants