[MinnowBoard] Outreachy contribution for MinnowBoard

John Hawley john.hawley at intel.com
Mon Apr 11 23:40:30 UTC 2016


Sorry for how long it's taken to get back to this, but inline. -JH

On 03/18/2016 12:30 AM, Anna Liao wrote:
> Hi John,
> 
> So I would think this would be a simple UDP receiver class.
> 
> # Receive UDP packets
> 
> import socket
> 
> class udp_rcv(object):
>     def __init__(self, ip, port):
>         self.ip = ip
>         self.port = port
>         
>     def receive(self):
>         sock = socket.socket(socket.AF_INET, # Internet
>                              socket.SOCK_DGRAM) # UDP
>         sock.bind((self.ip, self.port))
>         
>         while True:
>             data, addr = sock.recvfrom(1024) # buffer size is 1024 bytes
>             print "received message:", data

Looks right, you should be able to put together a simple test setup /
example program as

https://github.com/MinnowBoard/fishbowl-notebooks/blob/master/broadcast_ip.py

should run on anything, it's not specific to the MinnowBoard.  Noting
that it looks like it gets called with something like:

ifconfig eth0 | python broadcast_ip.py

Which I should go on to clarify has a bug, since older implementations
of `ifconfig` use "inet addr:" and newer ones only use "inet".  This
likely needs to be fixed to query the system interface better, as I know
there's Python libraries for doing that.


> I was thinking more about more examples I would add.  Definitely the
> suggestions:
> 
>   * Basic blinking LED (using off the shelf LEDs)
>   * Temperature or Humidity sensor, motion sensor
>   * PWM control

Those should alls be fairly easy to do, the LED and PWM you can do from
the Calamari Lure.  The Temp / Humidity / Motion sensor would need to
get individual parts (or make up a lure) to add, but definitely worth
adding.

> A few ideas I had for more examples are:
> - Minnow with webcam, also maybe posts to twitter or Instagram.  For
> example, a nice view.

Could go a step further and investigate what something like Realsense
could offer up here, as there's an open driver for it now.

> - Minnow with LCD number display, perhaps paired with a Belkin WeMo to
> display energy consumption

Slightly meta, but that can be very cool.  Could be interesting to see a
Minnow actually acting as a Home Automation controller and being able to
poll input and such from multiple devices.  That's a little out of scope
though, so yes - this could be interesting.

> - Photo resistor paired with motion detector for automated light and/or
> temperature control.

Think this could be combined with a camera, though it depends on if the
goal is to show off the low-speed usage or camera polling.

> - motion detector and webcam for wildlife camera

And I should have read one more line down to see you were already
thinking along these lines.

> - Something to highlight the graphics capability of Minnow, perhaps
> attach to monitor or display?

Could go down the path of opencl / opencv too.  You've touched on a fair
bit of webcam work, there's some interesting options there.

> - Other projects that can highlight the board's capability and the lures

Obviously anything to do with high-speed i/o, and the graphics stack is
a good place here.  It's a silly idea, but unlocking a deadbolt via face
recognition is something to think on.

- John

> 
> Let me know how this sounds.  I think this will be really fun to work on!


More information about the elinux-MinnowBoard mailing list