Skip to content

Conversation

Andrey1994
Copy link
Member

@Andrey1994 Andrey1994 commented Aug 23, 2025

BLE characteristics are changed and now they match BrainFlow presets perfectly. Instead of one characteristic per channel there is one for all EEG it seems and one for the rest. Its like default and aux presets in BrainFlow:

image

Current state(updates will be in comments)

  • can connect and enable notifications on both chars
  • can enable streaming and stop it
  • just print all incomming arrays as is for now, parsing and filling brainflow buffers is not done yet
  • no idea which preset is needed to enable smth on the second characteristic, tried p21(eeg only) and p1045, dont see any difference between these 2

Incomming data is printed in logs:

D:\workspace\brainflow>python python_package\examples\tests\brainflow_get_data.py --board-id 65
[2025-08-23 19:04:28.929] [board_logger] [info] incoming json: {
    "file": "",
    "file_anc": "",
    "file_aux": "",
    "ip_address": "",
    "ip_address_anc": "",
    "ip_address_aux": "",
    "ip_port": 0,
    "ip_port_anc": 0,
    "ip_port_aux": 0,
    "ip_protocol": 0,
    "mac_address": "",
    "master_board": -100,
    "other_info": "",
    "serial_number": "",
    "serial_port": "",
    "timeout": 0
}
[2025-08-23 19:04:28.929] [board_logger] [trace] Board object created 65
[2025-08-23 19:04:28.930] [board_logger] [info] Use timeout for discovery: 6
[2025-08-23 19:04:28.930] [board_logger] [debug] use dyn lib: C:\Python311\Lib\site-packages\brainflow\lib\simpleble-c.dll
[INFO] SimpleBLE: D:\workspace\brainflow\third_party\SimpleBLE\simpleble\src\backends\windows\Utils.cpp:33 in initialize_winrt: CoGetApartmentType: cotype=3, qualifier=0, result=0
[WARNING] SimpleBLE: D:\workspace\brainflow\third_party\SimpleBLE\simpleble\src\backends\windows\Utils.cpp:36 in initialize_winrt: Single-threaded apartment detected, uninitializing.
[INFO] SimpleBLE: D:\workspace\brainflow\third_party\SimpleBLE\simpleble\src\backends\windows\Utils.cpp:41 in initialize_winrt: RoInitialize: result=0
[2025-08-23 19:04:28.988] [board_logger] [info] found 1 BLE adapter(s)
[2025-08-23 19:04:29.099] [board_logger] [trace] address 38:ab:bf:6c:3e:70
[2025-08-23 19:04:29.099] [board_logger] [trace] identifier
[2025-08-23 19:04:29.213] [board_logger] [trace] address 1c:af:4a:2c:68:f7
[2025-08-23 19:04:29.213] [board_logger] [trace] identifier
[2025-08-23 19:04:29.337] [board_logger] [trace] address 7c:f8:d9:42:51:72
[2025-08-23 19:04:29.337] [board_logger] [trace] identifier
[2025-08-23 19:04:29.677] [board_logger] [trace] address 48:e1:5c:8c:0f:4e
[2025-08-23 19:04:29.677] [board_logger] [trace] identifier
[2025-08-23 19:04:29.807] [board_logger] [trace] address 00:55:da:bb:c3:c9
[2025-08-23 19:04:29.807] [board_logger] [trace] identifier MuseS-C3C9
[2025-08-23 19:04:29.807] [board_logger] [info] Found MuseAnthena device
[2025-08-23 19:04:30.514] [board_logger] [info] Connected to MuseAnthena Device
[2025-08-23 19:04:31.522] [board_logger] [trace] found servce 00001800-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.522] [board_logger] [trace] found characteristic 00002a00-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.522] [board_logger] [trace] found characteristic 00002a01-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.522] [board_logger] [trace] found characteristic 00002a04-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.522] [board_logger] [trace] found servce 00001801-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.523] [board_logger] [trace] found characteristic 00002a05-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.523] [board_logger] [trace] found characteristic 00002b29-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.523] [board_logger] [trace] found characteristic 00002b2a-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.523] [board_logger] [trace] found servce 0000fe8d-0000-1000-8000-00805f9b34fb
[2025-08-23 19:04:31.523] [board_logger] [trace] found characteristic 273e0001-4c4d-454d-96be-f03bac821358
[2025-08-23 19:04:31.523] [board_logger] [info] found control characteristic
[2025-08-23 19:04:31.523] [board_logger] [trace] found characteristic 273e0013-4c4d-454d-96be-f03bac821358
[2025-08-23 19:04:31.537] [board_logger] [trace] found characteristic 273e0014-4c4d-454d-96be-f03bac821358
[2025-08-23 19:04:31.548] [board_logger] [trace] Command to send: 3 118 52 10
[2025-08-23 19:04:31.550] [board_logger] [trace] Command to send: 6 112 49 48 52 53 10
[2025-08-23 19:04:31.551] [board_logger] [trace] Command to send: 6 100 99 48 48 49 10
[2025-08-23 19:04:31.718] [board_logger] [trace] EEG packet: 215 0 0 155 230 209 137 147 1 71 0 166 1 0 104 192 242 253 208 2 93 1 238 254 148 0 196 191 101 253 164 2 145 254 230 4 31 2 157 191 86 253 221 1 174 255 140 1 158 0 18 0 23 56 1 255 31 0 8 0 254 127 255 223 255 247 255 1 128 252 159 0 56 0 242 127 83 32 22 200 5 190 127 18 1 84 56 1 4 161 190 167 239 17 132 74 159 205 55 242 217 124 68 30 107 200 26 70 121 223 31 3 40 4 22 135 18 2 115 56 1 56 170 99 245 88 65 170 18 228 229 216 45 86 79 255 63 0 0 0 252 255 204 207 178 83 218 228 15 18 3 176 56 1 41 179 255 33 127 192 231 0 0 0 0 0 0 0 4 68 172 29 108 75 48 215 71 20 194 124 160 31 18 4 237 56 1 0 192 255 255 255 3 0 174 244 77 29 73 207 213 83 163 182 120 35 254 98 255 255 255 255 255 255 255
[2025-08-23 19:04:31.720] [board_logger] [trace] EEG packet: 240 1 0 235 230 209 137 147 1 18 5 80 2 0 255 63 0 0 0 252 255 36 162 86 40 34 78 147 102 246 48 65 77 220 245 0 0 0 0 0 0 0 18 6 122 0 0 125 137 77 252 18 119 69 121 131 253 192 54 240 14 0 192 255 255 255 3 0 24 47 236 251 240 58 191 18 7 152 0 0 74 29 50 74 137 234 73 255 255 255 255 255 255 255 255 63 0 0 0 132 249 249 103 213 105 125 82 168 18 8 213 0 0 31 187 38 32 10 252 255 0 0 0 0 0 0 0 183 78 234 58 186 182 91 0 192 2 0 0 0 0 18 9 18 1 0 0 192 255 255 255 3 0 53 41 113 250 143 50 167 37 215 158 203 231 150 50 255 255 255 255 255 255 255 18 10 79 1 0 255 255 165 112 41 96 230 238 109 78 219 222 170 187 78 63 0 0 0 252 255 129 2 134 160 36 240 18 18 11 110 1 0 65 84 119 233 93 206 114 0 0 0 0 0 0 0 0 192 255 255 255 3 0 94 164 57 201 85 6 114
[2025-08-23 19:04:31.830] [board_logger] [trace] EEG packet: 223 2 0 236 230 209 137 147 1 18 12 19 0 0 111 145 247 12 62 59 30 255 255 255 255 255 255 255 82 61 195 225 112 48 209 165 51 199 60 58 23 216 18 13 92 0 0 255 63 0 0 0 252 255 61 71 180 113 117 48 33 10 26 253 55 255 93 138 0 0 0 0 0 0 0 18 14 61 36 0 0 192 255 255 255 3 0 255 92 102 247 206 181 118 10 76 55 190 141 183 11 255 255 255 255 255 255 255 18 15 92 36 0 218 184 2 147 192 104 185 171 184 5 46 139 135 231 255 63 0 0 0 252 255 46 12 231 18 195 128 54 71 1 85 97 255 230 191 240 253 108 2 63 0 242 255 212 255 201 190 203 253 61 3 57 0 169 255 216 255 103 192 15 254 221 2 65 0 236 255 213 255 71 2 47 153 0 92 191 25 254 116 3 68 0 51 0 216 255 209 191 29 254 48 3 61 0 64 0 217 255 140 191 159 253 125 2 60 0 76 0 211 255
[2025-08-23 19:04:31.841] [board_logger] [trace] EEG packet: 215 3 0 49 231 209 137 147 1 71 3 233 0 0 70 192 94 253 137 2 59 0 31 0 230 255 161 191 200 253 235 2 65 0 249 255 223 255 252 191 214 253 160 2 75 0 18 0 212 255 18 16 202 194 0 244 31 131 182 160 21 162 0 0 0 0 0 0 0 0 192 255 255 255 3 0 18 215 239 181 112 173 93 18 17 7 195 0 13 71 84 47 213 3 0 255 255 255 255 255 255 255 222 243 91 228 22 17 162 78 125 52 111 213 151 248 18 18 68 195 0 255 63 0 0 0 252 255 110 145 55 4 23 105 75 221 101 16 21 68 109 185 0 0 0 0 0 0 0 18 19 98 195 0 0 128 211 255 244 183 11 86 145 123 84 21 169 69 152 194 255 255 255 3 0 166 61 133 79 218 187 245 18 20 159 195 0 123 46 200 21 114 69 138 255 255 255 255 255 255 255 255 63 0 0 0 252 255 231 22 147 165 111 53 97
[2025-08-23 19:04:31.844] [board_logger] [trace] EEG packet: 236 4 0 99 231 209 137 147 1 18 21 117 1 0 183 43 164 35 235 184 207 0 0 0 0 0 0 0 162 192 195 158 178 215 28 204 139 10 163 186 232 46 18 22 122 0 0 0 192 255 255 255 3 0 203 184 74 78 139 87 226 203 232 60 231 207 129 114 255 255 255 255 255 255 255 18 23 183 0 0 255 63 0 0 0 252 255 223 92 7 23 205 217 120 145 177 70 242 151 104 228 0 0 0 0 0 0 0 18 24 214 0 0 5 197 126 189 102 3 48 32 199 227 1 112 104 27 0 192 255 255 255 3 0 180 179 11 77 57 187 205 83 0 19 1 0 242 31 25 9 13 32 45 41 161 31 123 34 213 31 195 7 236 31 141 55 166 31 127 45 18 25 19 1 0 251 162 181 200 46 70 91 255 255 255 255 255 255 255 255 63 0 0 0 252 255 236 162 137 104 46 46 144 18 26 233 37 0 244 246 14 1 76 240 246 0 0 0 0 0 0 0 20 202 25 124 19 243 68 1 130 155 112 33 0 0
[2025-08-23 19:04:31.906] [board_logger] [trace] EEG packet: 244 5 0 109 231 209 137 147 1 18 27 139 0 0 0 192 255 255 255 3 0 35 175 241 27 238 90 205 14 93 46 154 140 242 68 255 255 255 255 255 223 229 18 28 122 0 0 255 63 0 0 0 240 246 222 155 183 102 221 89 13 123 123 19 144 9 252 255 0 0 0 0 0 0 0 18 29 183 0 0 49 79 189 122 186 62 91 0 0 0 0 0 148 18 0 192 255 255 255 3 0 70 229 67 105 110 2 0 18 30 244 0 0 55 215 155 171 231 6 48 255 255 255 255 255 243 27 255 191 182 176 41 96 228 35 173 65 139 200 194 218 18 31 19 1 0 202 63 0 0 0 252 255 93 199 196 193 113 252 68 98 85 6 233 92 130 114 0 0 0 0 0 120 4 52 0 80 1 0 116 44 164 48 172 161 199 162 164 128 101 44 52 47 172 160 199 130 164 128 67 44 36 47 172 173 199 210 166 128 52 1 202 194 0 60 44 164 47 172 190 199 18 167 128 56 44 100 48 172 227 199 50 168 128 91 44 244 48 172 224 199 194 166 128
[2025-08-23 19:04:31.965] [board_logger] [trace] EEG packet: 225 6 0 129 231 209 137 147 1 71 4 67 0 0 18 192 170 253 243 2 67 0 5 0 215 255 234 191 158 253 210 2 63 0 253 255 217 255 252 191 170 253 161 2 58 0 19 0 217 255 52 2 248 55 1 60 44 244 48 172 223 199 114 167 128 61 44 116 49 172 203 199 2 167 128 32 44 244 48 172 198 199 194 167 128 71 5 72 156 0 124 191 11 254 137 2 57 0 12 0 218 255 121 191 166 253 244 2 56 0 49 0 216 255 154 191 149 253 101 2 60 0 13 0 212 255 18 32 239 133 1 0 192 255 255 255 3 0 169 162 241 56 50 210 224 38 145 248 156 61 211 28 255 255 255 255 255 255 255 18 33 44 134 1 241 60 202 145 113 172 207 183 247 199 61 115 179 252 255 63 0 0 0 252 255 134 133 74 17 83 148 68 18 34 105 134 1 104 91 132 231 247 73 138 63 194 151 16 37 88 5 0 192 255 255 255 3 0 5 244 0 141 62 227 216
[2025-08-23 19:04:31.996] [board_logger] [trace] EEG packet: 240 7 0 229 231 209 137 147 1 18 35 73 0 0 139 75 82 174 141 187 11 255 255 255 255 255 255 255 105 184 28 51 193 108 185 58 120 12 30 125 55 253 18 36 122 0 0 255 63 0 0 0 252 255 168 144 16 196 5 133 92 240 32 247 5 142 25 162 0 0 0 0 0 0 0 18 37 153 0 0 0 192 255 255 255 3 0 86 152 80 198 136 217 157 101 70 129 79 215 3 0 255 255 255 255 255 255 255 18 38 214 0 0 9 115 133 228 21 29 162 52 59 194 78 176 19 240 255 63 0 0 0 252 255 29 22 127 37 94 193 113 18 39 99 38 0 152 167 133 20 44 105 185 0 0 0 0 0 0 0 0 64 123 127 232 183 11 238 143 42 36 1 109 110 18 40 160 38 0 47 194 255 255 255 3 0 250 189 155 127 225 255 255 55 238 18 102 111 89 138 255 255 255 255 255 255 255 18 41 221 38 0 255 63 0 0 0 252 255 79 214 112 101 98 21 128 109 45 36 83 208 208 208 0 0 0 0 0 0 0
[2025-08-23 19:04:32.026] [board_logger] [trace] EEG packet: 242 8 0 239 231 209 137 147 1 18 42 83 0 0 209 65 88 14 158 227 29 255 135 14 18 128 108 16 0 192 255 255 255 3 0 232 116 71 221 79 123 157 18 43 122 0 0 110 231 147 23 204 245 114 255 255 255 255 255 255 255 255 63 0 0 0 252 255 119 94 113 215 225 117 157 18 44 152 0 0 167 177 227 145 126 64 232 0 0 0 0 0 0 0 68 69 20 29 75 19 53 8 5 83 161 82 236 42 18 45 213 0 0 0 192 255 255 255 3 0 66 241 95 76 22 139 221 52 33 32 185 42 214 91 255 255 255 255 255 255 255 18 46 18 1 0 255 63 0 0 0 252 255 42 229 60 233 74 26 184 17 120 179 192 51 0 250 0 0 0 0 0 24 13 18 47 79 1 0 68 11 160 203 236 214 74 253 128 94 32 16 36 9 0 192 255 255 255 3 0 163 111 19 44 250 54 227 52 3 98 38 0 60 44 4 48 172 234 199 2 170 128 79 44 4 48 172 232 199 82 169 128 119 44 68 48 172 5 200 210 171 128
[2025-08-23 19:04:32.085] [board_logger] [trace] EEG packet: 225 9 0 248 231 209 137 147 1 71 6 202 3 0 170 191 187 253 214 2 62 0 242 255 215 255 133 191 198 253 228 2 61 0 27 0 212 255 171 191 183 253 235 2 63 0 237 255 211 255 52 4 172 194 0 119 44 36 48 172 236 199 178 171 128 105 44 196 47 172 10 200 114 175 128 77 44 148 47 172 0 200 34 173 128 71 7 12 156 0 211 191 156 253 205 2 58 0 14 0 219 255 222 191 187 253 248 2 53 0 8 0 221 255 220 191 150 253 212 2 60 0 3 0 221 255 18 48 178 133 1 34 219 164 154 143 118 69 255 255 255 255 255 191 223 255 255 8 0 0 180 245 152 22 166 69 101 49 18 18 49 239 133 1 192 60 0 0 0 252 255 0 0 0 0 0 0 0 206 144 44 58 137 230 99 31 129 90 176 18 164 18 18 50 14 134 1 0 192 255 255 255 3 0 38 100 66 105 66 154 169 13 213 27 236 242 66 48 255 255 255 255 255 255 255
[2025-08-23 19:04:32.100] [board_logger] [trace] EEG packet: 238 10 0 92 232 209 137 147 1 83 1 197 2 0 190 31 207 12 8 32 112 48 193 31 58 53 241 31 113 8 22 32 183 38 166 31 59 37 18 51 153 0 0 198 255 16 65 55 140 227 27 242 106 252 25 183 219 255 63 0 0 0 252 255 18 129 55 144 12 244 19 52 5 214 0 0 78 44 116 48 172 3 200 162 173 128 72 44 244 48 172 246 199 114 172 128 71 44 116 48 172 251 199 226 175 128 18 52 190 38 0 141 86 181 8 43 66 125 129 68 36 81 73 124 14 0 192 255 255 255 3 0 197 116 46 29 75 179 214 18 53 251 38 0 62 143 120 29 80 95 28 255 255 255 255 255 255 255 170 123 64 34 131 120 207 234 243 215 108 59 111 228 18 54 26 39 0 255 63 0 0 0 252 255 13 12 205 114 195 176 52 1 28 59 231 204 217 149 0 0 0 0 0 0 0 18 55 87 39 0 0 192 255 255 255 3 0 93 156 60 231 193 77 139 234 73 180 110 163 155 10 255 255 255 255 255 255 255

Signed-off-by: Andrey Parfenov <a1994ndrey@gmail.com>
@Andrey1994
Copy link
Member Author

One more note: this change in the structure of BLE chars is overall good and makes sense. I will not be surprised if this will be updated for old devices with some fw + app updates

@thenoobmlengineer
Copy link

I just want to develop backend to scan and connect with muse S athena and stream EEG signals from it. Can anyone kindly guide me how I can do this? It will be of great help. Thanks

@nictheboxer
Copy link

I just want to develop backend to scan and connect with muse S athena and stream EEG signals from it. Can anyone kindly guide me how I can do this? It will be of great help. Thanks

I think this is not yet ready in the opensource community. Streaming data is now possible by brainflow (as above) but data is not yet interpreted to the EEG signal in micro-voltages that you need. If you are ok with offline data processing, paying for the mind monitor app may be the best option. if you are like me, hoping to do real time processing, we have to wait for these guys to update the code. I expect this is happening soon, I think the creators of bluemuse and muselsl are also working on this as we speak.

@Andrey1994
Copy link
Member Author

muse_anthena_log.txt

@thenoobmlengineer
Copy link

How were you able to get the raw EEG packets? Im trying with brainflow , but Im getting errors.

@Andrey1994
Copy link
Member Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants