SimpleBLE VS brainflow

Compare SimpleBLE vs brainflow and see what are their differences.

SimpleBLE

SimpleBLE - the all-in-one Bluetooth library for MacOS, iOS, Windows, and Linux. (by OpenBluetoothToolbox)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
SimpleBLE brainflow
12 13
560 1,197
10.7% 2.3%
6.5 8.2
3 days ago 3 days ago
C++ C++
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

SimpleBLE

Posts with mentions or reviews of SimpleBLE. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-03.
  • bleak VS SimpleBLE - a user suggested alternative
    2 projects | 3 Jul 2023
    BLE library for python without asyncio
  • Any way to force which bluetooth adapter to use for an connection?
    2 projects | /r/learnpython | 18 May 2023
  • Guidance Required: Kotlin bindings for a C++ library
    3 projects | /r/Kotlin | 4 Nov 2022
    I'm the creator of SimpleBLE, a cross-platform library to use Bluetooth on desktop environments (and hopefully mobile soon), and I'm currently looking into adding Kotlin bindings. I how how to write JNI wrappers as I've done so in the past, but I'm having trouble understanding what's the best way to set up a Gradle project for it to be consumed by 3rd party users, considering that the C++ backend can be compiled with multiple "flavors" based on the target OS.
    3 projects | /r/Kotlin | 4 Nov 2022
  • SimpleBLE v0.5.0 - Cross-platform Bluetooth library for Windows, Linux and MacOS/iOS
    2 projects | /r/cpp | 26 Sep 2022
    I do have a request to enable cross-compiling support, so I think I might go for it relatively soon. For reference, this is the issue to track on this topic: https://github.com/OpenBluetoothToolbox/SimpleBLE/issues/98
    2 projects | /r/cpp | 26 Sep 2022
    I've received this request multiple times, so I think it's important enough to make sure it's part of the v0.6 release. I've made an issue to track this, feel free to follow: https://github.com/OpenBluetoothToolbox/SimpleBLE
  • SimpleBLE - Cross-platform BLE library for Windows, Linux and MacOS/iOS
    8 projects | /r/cpp | 4 Apr 2022
    Fixed the incorrect URLs. My bad on the usage docs, when I wrote this I was referring to the examples folder in the repo. I made it slightly better with some more specific guidance: https://github.com/OpenBluetoothToolbox/SimpleBLE/blob/main/docs/usage.rst
    8 projects | /r/cpp | 4 Apr 2022
    For over a year I've been working on a cross-platform Bluetooth library called SimpleBLE, specifically designed for use in desktop environments with a very simple API, allowing developers to easily integrate it into their projects without much effort.
    8 projects | /r/cpp | 4 Apr 2022
    I do have a few examples showing how to enable notifications and writing to a characteristic. If you have any questions please reach out, I'll gladly help!

brainflow

Posts with mentions or reviews of brainflow. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-01.
  • Code recommendations for the MUSE 2 using Python
    2 projects | /r/BCI | 1 Mar 2023
  • SimpleBLE - Cross-platform BLE library for Windows, Linux and MacOS/iOS
    8 projects | /r/cpp | 4 Apr 2022
    About my current user base, I'd like to highlight we use SimpleBLE at my job, it has been integrated into BrainFlow, it is part of some new tools made by a large industrial automation company (whose name I cannot mention but rhymes with "Good product made by bees") and by a robot researcher in Germany.
  • Develop apps with biosensors and neurointerfaces
    2 projects | dev.to | 30 Nov 2021
    BrainFlow provides a uniform SDK to work with biosensors with a primary focus on neurointerfaces. It provides SDK for Python, Java, C#, C++, Matlab, R, Julia and Rust. Core part of BrainFlow is written in C\C++ and all bindings call methods from dynamic library. User API is uniform for all supported devices and allows you to develop device agnostic applications.
    2 projects | dev.to | 30 Nov 2021
    Website
  • BrainFlow
    2 projects | news.ycombinator.com | 4 Jul 2021
    https://github.com/brainflow-dev/brainflow/blob/4.3.2/java-p... fails to close that InputStream, which leaks file handles every time that method is invoked. Even the javadoc shows the correct usage of wrapping the InputStream in a try-with-resources block https://docs.oracle.com/javase/8/docs/api/java/nio/file/File...

    The line right above that one fails to check the return type for file.delete() as that is a _request_ to delete the file and may not succeed for any number of reasons that might interest the code. If the file fails to delete, it can be retried, or one can use file.renameTo to try and move the _name_ out of the way, even if the on-disk allocation still remains. Of course, one should similarly check the result of file.renameTo as it is also a request

    Swallowing exceptions is a pet peeve of mine https://github.com/brainflow-dev/brainflow/blob/4.3.2/java-p... because (a) it doesn't even acknowledge that an exception occurred in the error message right below it, meaning if one wished to debug _why_ that error occurred, now one must either use a debugger or recompile to include that information. The method similarly does not disclose that the result may be null, and NullPointerExceptions are my other pet peeve since unless running on a bleeding edge JVM, the error message is always "NullPointerException: null" meaning it says absolutely nothing about what it was trying to do when it fell over

    Kind of related to that, the javadoc for some of the further down methods say "throws WhateverError" but not _why_ or what influence the caller has over that outcome

    That's as far as I looked before closing the tab and wondering if I should mention the file handle leak, since if you only found the repo, then telling you wouldn't accomplish anything. But if it was your repo, then raising your awareness might be helpful

    Then, yes, of course I agree with the sibling comments that the code style is very, very distracting, but there's no way I would have bothered to comment in HN about code style since to each his/her own so long as I don't have to work in it :-)

    2 projects | news.ycombinator.com | 4 Jul 2021

What are some alternatives?

When comparing SimpleBLE and brainflow you can also consider the following projects:

BioAmp-EXG-Pill - BioAmp EXG Pill is a small and elegant Analog Front End (AFE) board for BioPotential signal acquisition.

NeuroGloves - Using the Myo to play VR games using SteamVR

cmake-init-fetchcontent - Example for optionally vendoring using FetchContent

audiowmark - Audio Watermarking

SimpleBluez - A simple C++ wrapper around Bluez with a commercially-friendly licence.

ironbci - Open-Source Brain-Computer Interface, ADS1299 and STM32

gnss-sdr - GNSS-SDR, an open-source software-defined GNSS receiver

Kilosort - Fast spike sorting with drift correction for up to a thousand channels

bleak - A cross platform Bluetooth Low Energy Client for Python using asyncio

SimpleDBus - A simple C++ wrapper around DBus with a commercial-friendly licence.

3.eeg_recognation - Machine learning for Anonymous detection of an alcoholic by EEG signals

dcm2niix - dcm2nii DICOM to NIfTI converter: compiled versions available from NITRC