AP Mode With WiFi Shield?

Looks like the hardware would support AP Mode but is it exposed to use in OpenMV MicroPython? Any plans to do so?

Thanks

Um, I remember Ibrahim talking about doing this but I don’t think it’s been implemented. I’ll let Ibrahim respond.

Yes the HW supports AP mode but it’s not implemented yet, I’ll work on it ASAP.

Thanks, that’s great. I’ll keep my eyes open for it!

How is AP Mode coming along? I’m anxious to try it as well.

I’m working on it, I should have a testing image really soon.

:smiley: Awesome! Thanks for the update.

Hi,

AP mode is now supported!

If you can’t wait until the next release, you can use the dev firmware images here:

https://github.com/openmv/openmv/tree/master/firmware

Here’s an example script:

https://github.com/openmv/openmv/blob/master/usr/examples/14-WiFi-Shield/mjpeg_streamer_ap.py

Note WINC1500 AP mode has some limitations:

  • Only one client can connect at a time, I guess that’s okay for a camera.
  • It only supports OPEN or WEP security.
  • There’s a bug in the FW, when the client disconnects any bound sockets are lost (they just stop working).
    As a workaround, I set a timeout for the server socket to force it to raise an exception and then reopen it.

Excellent! I’ll try it out. Thanks!

I’m not seeing how I update the firmware via the IDE. When I click on the ‘Firmware Version’ button in the lower right, it says I’m up to date and doesn’t give an option to load new firmware. Is there a way around this or do I need to use the STM DfuSe upgrade software?

Tools->Run Bootloader and then upload the firmware binary ( firmware.bin )

That worked. Awesome! It is working great for a first run. Nice!

Only hiccup is that it freezes every 3 seconds or so. Freezes for about a second and then comes back. Did you see the same thing?

I don’t remember seeing this issue, but I used the Android app for testing. Try increasing the server and/or client timeout in line 76
https://github.com/openmv/openmv/blob/master/usr/examples/14-WiFi-Shield/mjpeg_streamer_ap.py#L76

And line 35
https://github.com/openmv/openmv/blob/master/usr/examples/14-WiFi-Shield/mjpeg_streamer_ap.py#L35

Thanks for the quick reply. Increasing the timeouts helped, but doesn’t completely eliminate it. I’ll play around with it a bit.

I’ll also do some testing and get back to you.

I did some testing and I’m not seeing the freeze, I’m testing with my Android phone.

When connecting to the cam in WiFI AP mode via the Open Terminal, should we be using UDP or TCP mode? And what port number?

I tried both modes with port 8080 that’s used in the MPEG streaming demo, but that didn’t work.

Apologies if this is in the documentation somewhere. I looked by couldn’t find it

I’ll have to debug OpenMV IDE with open terminal for this. Might be some stuff broken that I have to get working. Apologies.

I assume the process is as follows:

  1. OpenMV is running Mpeg AP streaming example
  2. Connect to OpenMV AP via WiFi
  3. Test the Mpeg stream in a browser at the given IP: 192.168.1.1:8080
  4. Create a new Open Terminal using TCP at the same IP: 192.168.1.1:8080
  5. Everything magically works

I’m fine up until step 5 :wink:

Note the shield doesn’t support multiple connections, only one at a time. Never really tested the terminal so not sure if it works.