multiple Wifi Shields operating concurrently in direct mode with single computer with multiple NICs


I am evaluating open BCI for use in a new hyperscanning lab.

The hypothetical setup is 5 Ultracortex headsets each with a dedicated CytonDaisy and Wifi Shield, connected in direct mode to a computer with 5 wireless adapter cards.  Can you foresee problems doing this?

Questions:

1) The documentation implies that in direct mode Wifi Shield acts as an access point and its DHCP serves addresses on the 192.168.4.1 network.  Is there any way to configure this so it can be some other subnet besides .4?  I ask because if it isn't then there is a chance that all 4 wireless adapters will be assigned the same IP address by their corresponding Wifi Shields.  This will certainly not sit well with the OS.  If the answer to this question is no, then hyperscanning would require dedicating a separate computer to each Wifi Shield, which is certainly a significant additional expense.

2) Is there any way to configure each Wifi Shield to operate on a specific Wifi channel (1-11)? This would help ensure that the data streams do not interfere and that full throughput can be achieved in the hyperscanning setup.

Thank you for your help and feedback.

Best regards,
Bilal

Comments

  • wjcroftwjcroft Mount Shasta, CA
    edited May 2019
    Bilal, hi.

    I'm mentioning some OpenBCI engineers here who may have insights into your technical question. You can also send an email to contact at openbci.com.

    Richard @retiutut or Sean @produceconsumerobot, or Daniel @daniellasry, would you have any suggestions? I know other ESP8266 users have asked similar questions on other forums; regarding altering the 192.168.4.xxx subnet:


    Additionally, I think all the ESP8266 firmwares, when they boot up, use DHCP to acquire a unique IP address. So they might be on the same subnet, but using different (last byte) addresses, for example, 192.168.4.1, 192.168.4.2, 192.168.4.3, etc. 

    re: ESP8266 Wifi channel, this capability seems to exist in the ESP API, but not sure how or if our OpenBCI firmware makes that available. You can customize the firmware.


    Regards,

    William
  • Hi William @wjcroft and thank you,

    I think solving my problem should be "easy" if each of the 5 Wifi Shields is linking to a different Wifi AP, since APs can easily be configured to serve addresses on different subnets and operate on different channels.

    The question I have is about getting rid of the need for 5 separate Wifi APs relays - to minimize latency issues - and being able to make direct connections from 5 host Wifi adapters (all residing in one host) to 5 corresponding Wifi Shields.  This would require the Wifi Shields to be configurable with respect to the subnet they serve and the channel they operate on.  But it is unclear to me how I would do this.  I will start reading up on the ESP8266 I suppose.  Is it at the heart of the Wifi Shield.  How can I find out more about it's design?

    Any additional comments from Richard @retiutut or Sean @produceconsumerobot, or Daniel @daniellasry would be greatly appreciated.

    Thanks in advance,
    Bilal

  • retiututretiutut Louisiana, USA
    edited May 2019
    @grouptheory I already fixed an issue earlier this year where a VirtualBox network interface (which is virtual) interfered with the Hub detecting the Host computer's correct IP address. So I fixed the WiFi driver to look explicitly for "Ethernet" and "WiFi" network adapters on Windows.

    Lucky for you, I'm extremely interested in any and all multi-board OpenBCI projects!

    Thoughts:
    • I don't think you need 5 network adapters!
    • Theoretically, we should be able to have 1 router that assigns IP address to X number of WiFi shields and 1 computer. Because: 
    "Additionally, I think all the ESP8266 firmwares, when they boot up, use DHCP to acquire a unique IP address. So they might be on the same subnet, but using different (last byte) addresses, for example, 192.168.4.1, 192.168.4.2, 192.168.4.3, etc. "

    • Currently, it should be possible to have X boards connected to X computers running GUI, then send the data to another computer via the Networking Widget. This would be possible if users bring their own boards and laptops to the session.
    • You can't just run 5 instances of the GUI on one computer, because you would need 5 instances of the OpenBCI Hub.
    • All of what I said will change once a multi-board solution is developed and shared with the OpenBCI community!


Sign In or Register to comment.