Please see earlier comment on multiple targets
OK just published release v0.3 which fixes bounding boxes. Next step is to make an easy way to show the bounding boxed images in HA
Nice work on this project. Does anyone know if google coral will run on a Synology? I believe there is a dependency on having hardware/USB driver at the host level - plan to run this in a docker hosted on Synology.
The coral docs state the coral requires:
Any Linux computer with a USB port
Debian 6.0 or higher, or any derivative thereof (such as Ubuntu 10.0+)
System architecture of either x86-64 or ARM32/64 with ARMv8 instruction set
I am not sure if the Synology meets these requirements
In particular, there are some shared libraries provided only in binary form for either x86_64 or raspberry pi , likely for user-mode applications (or python libraries?) I donât know what the dependency on Linux kernels might be, perhaps whatever means is used to access the USB device. It doesnât seem like a kernel driver is in the mix here, and Iâve been successful in accessing the Coral USB stick from inside a docker container by passing /dev/bus/usb
into the container as a device.
Ahhh so coral is not open source?
an update on my side on this component.
currently running v0.3 and testing it with a couple of cameras (M5Stack) for presence detection.
Threshold set to 50 and works pretty well so far: I can turn on/off light based on room presence with this.
Issue is M5Stack are getting too hot and crashing (currently running 800x600 resolution, 0.3fps to see if they can sustain the frame rate, previously at 0.5fps was too high during these summer days).
I ordered TTGO Oled+Pir cameras which should not have this issue: if you plan to do something similar avoid cheaper M5Stack camera unless you want simply to experiment.
In terms of âspeed of recognitionâ this is super quick I would say: my Coral stick is on RPI3+ (wired) while HA is running in a separate mini-pc based on Celeron N4100
All-in-all great job so far @robmarkcole!
Seems to me that itâs relatively lower-level code to talk to the device. Itâs that itâs in user-space talking to /dev/bus/usb/foo rather than some kernel-space driver for your not-open-source USB/RS-232 adapter.
You might grab their software distribution and investigate to see if thereâs something missing that you need to be able to use the device. There was also some discussion I read regarding what happens there are multiple models in use, and managing how some portion of what the TPU crunches on could be cached, rather than needed to reload all the stuff every time if youâre switching. That driver is probably the least of the interesting stuff you donât have access to, like the VHDL for the Coral TPUâŚ
hi there,
I was wondering if this project was still alive: I am really using it and thinking itâs great!
canât wait for next steps!
Raspberry Pi 4 results look pretty good - https://blog.hackster.io/benchmarking-machine-learning-on-the-new-raspberry-pi-4-model-b-88db9304ce4
Interestingly, the xnor.ai program is nearly as quick as tensorflow + coral stick on a Pi 3 B+
Would love to see some image processing on the Pi 4 itself.
Yes still working on this, so many directions I could take it that I am taking the time to choose the right direction
good point RPI4 with USB3.0 is removing bottleneck for Google Coral Stick.
Coral arrived on Friday and I have set up the Coral Pi Rest Server on a Raspberry 3 B using a clean installation of Stretch Lite with Python 3.5. After a period of inactivity I have to restart the Coral Pi Rest Server with âpython3 coral-app.pyâ because I receive the following error âcurl: (7) Failed to connect to xxx.xxx.x.x port 5000: Connection refusedâ. How can I overcome this problem?
if you are running the script over ssh it is probably timing out
I am new to Python. How would I have run the app, i.e. âpython3 coral-app.pyâ, as my Raspberry is headless and I have to connect via ssh from my laptop?
Would I have to run âpython3 coral-app.pyâ as a service?
Essentially, thatâs the effect you want. What this means in the Linux world is that the process you start isnât connected to an interactive session. If your SSH session times out or is disconnected, then all of the processes started by it (âin that terminal process groupâ) will get a hang-up (âSIGHUPâ) UNIX signal sent to them which probably cause them to exit. Or the standard input/output is no longer valid and an error occurs next time it tries to write to it.
You can start it manually using a tool like daemon
which does the extra stuff to isolate it from your terminal session, or have the system start it as a service with using systemd when it boots. Maybe start by looking at https://www.raspberrypi.org/documentation/linux/usage/systemd.md for example.
Thank you for the advice on ânohupâ it solved my problem.
For completeness I mention screen. Youâll find lots of howtos, but essentially if your session disappears (eg you log out or your ssh session gets interrupted) then any process running under screen stays alive and can be reconnected to.