Commit Graph

1212 Commits

Author SHA1 Message Date
iabdalkader
1566b38bde Implement fw_version. 2016-04-02 01:39:53 +02:00
iabdalkader
27adf0dcd2 Enable CONF_MGMT. 2016-04-02 01:39:29 +02:00
iabdalkader
fab730aeeb Update MJPEG streaming examples. 2016-03-31 22:36:41 +02:00
iabdalkader
0d19f693c0 Implement Listen and Accept. 2016-03-31 22:35:49 +02:00
Ibrahim Abd Elkader
27d3ffe89e Merge pull request #110 from kwagyeman/master
Rearrange examples.
2016-03-31 03:55:22 +02:00
Kwabena W. Agyeman
94bc225542 Moved examples arround.
Tried to emulate Arduino's 11 folders... I'd perfer to have all the
shield scripts in one folder... but, that might not make sense. I don't
really want one script per folder however. So, I might merge some more
stuff in the future. I have a grand idea here that will become evident as
I work though the examples.

Anyway, the current structure is not final. It will be in flux for a
little while.

As for Git History, folder history is the best we're going to get. Git
and GitHub don't seem to deal with moves too well.
2016-03-30 21:30:11 -04:00
iabdalkader
20dcb16e9f Add NTP example. 2016-03-31 02:47:12 +02:00
iabdalkader
e5fd02c59a Implement bind, sendto and recvfrom. 2016-03-31 02:46:14 +02:00
iabdalkader
4d21a0b732 Add tcp_client and DNS examples. 2016-03-31 01:07:40 +02:00
iabdalkader
4201f0480d Use fd instead of u_state. 2016-03-31 01:05:26 +02:00
iabdalkader
a5d1b0f446 Implement socket settimeout 2016-03-31 01:04:57 +02:00
iabdalkader
1cccae0fcb Implement WINC send/recv. 2016-03-30 18:51:13 +02:00
iabdalkader
bf674dbe6d Add Socket and DNS callbacks. 2016-03-30 01:47:35 +02:00
Ibrahim Abd Elkader
daf73094a4 Merge pull request #109 from kwagyeman/master
Add skip_frames function.
2016-03-29 16:35:58 +02:00
Kwabena W. Agyeman
bc687ebf59 We seem to be doing this alot in the code.
So I'm just adding a function to do it cleanly and efficently. Call
skip_frames() after changing any camera settings to let it settle.

10 frames by default works fine. Tested it.
2016-03-28 22:59:59 -04:00
iabdalkader
4e31f25db8 Additional qstr definitions for OpenMV. 2016-03-29 02:26:39 +02:00
iabdalkader
bd7eed6b54 Move Python scripts to separate directories. 2016-03-28 23:19:09 +02:00
iabdalkader
9003a27c85 Rename fir.display to fir.draw 2016-03-27 00:42:54 +02:00
Ibrahim Abd Elkader
25eba8f6da Merge pull request #107 from kwagyeman/master
Rename fir.display to fir.draw
2016-03-27 00:43:13 +02:00
Kwabena W. Agyeman
a6c2efcebe Renamed Display to Draw
And fixed type in blend. Per Ibrahim's suggestion.
2016-03-26 10:26:19 -04:00
iabdalkader
5411f9e8e7 Update MP branch. 2016-03-26 15:15:07 +02:00
Ibrahim Abd Elkader
71dd633956 Merge pull request #106 from kwagyeman/master
Add Midpoint filter.
2016-03-26 15:15:18 +02:00
Kwabena W. Agyeman
978b4c12df Add Midpoint filter.
Has a bias value that allows you to control if its really a midpoint,
min, max filter, or something inbetween. Run at 160x120 or lower. 320x240
is slow (seems to be the case for all convoltions at that res).
2016-03-25 21:26:20 -04:00
iabdalkader
b2e77e9dce Add wifi scan and connect examples. 2016-03-26 01:55:16 +02:00
iabdalkader
b92f146323 Add initial WINC1500 WiFi module driver.
* Note: partial implemented, based on CC3000 module (only scan, connect, ifconfig work)
2016-03-26 01:52:29 +02:00
iabdalkader
f447455580 Disable WINC's debugging info. 2016-03-26 00:15:28 +02:00
iabdalkader
ce949333f2 Rename WINC1500 Sockets.
* Rename functions in WINC's sockets implementation to avoid
conflicts with other sockets implementations.
2016-03-26 00:14:01 +02:00
iabdalkader
9dd3dce5af Update MP branch 2016-03-26 00:11:52 +02:00
Ibrahim Abd Elkader
bbd10ff80b Merge pull request #105 from kwagyeman/master
Add AWB/HMirror/VFlip
2016-03-26 00:12:09 +02:00
Kwabena W. Agyeman
2fa8227c7b Add AWB/HMirror/VFlip
Added setters for these camera settings. AWB is necessary for color
tracking to work correctly. AGC still runs, which causes lighting
shifts. It may need to be disabled too. Not sure... if I want to do that
or not however, because without it lightning won't get normalized to
remain at a certain level. So, turning AGC off may cause issues in other
ways.
2016-03-25 16:36:10 -04:00
iabdalkader
7109748146 Update FIR Python examples. 2016-03-25 14:03:56 +02:00
Ibrahim Abd Elkader
8d1cd9d8c4 Merge pull request #104 from kwagyeman/master
Improve IR code.
2016-03-25 13:52:27 +02:00
Kwabena W. Agyeman
a74dd50eaf Improved IR code.
Return min and max from read_ir now. Also, made drawing functions take
IR values.

Example scripts have been updated to work with the new module code.
2016-03-24 19:52:00 -04:00
iabdalkader
dfad6e4c0a Update MP branch. 2016-03-25 00:37:27 +02:00
Ibrahim Abd Elkader
3b293addff Merge pull request #103 from kwagyeman/master
Fix MLX Code
2016-03-25 00:36:26 +02:00
Kwabena W. Agyeman
88907c438c Redid MLX Code
First, a few things:

The MLX 16x4 sensor has just too low of a resolution for mass appeal for
the price. The product is not going to sell very well. We need to look
into supporting sensors with a better res. Like the FLIR 1. The MLX
module was renamed to the "flir" module with this idea in mind.

The flir code now takes care of doing scaling and blending itself. I did
this to get rid of the user having to scale the image themselves and
blend themselves. Its too easy to run out of memory given our current
ultra small heap. In general, anything that requires multiple images in
RAM has got to go. When we do another OpenMV Cam with external RAM in
the MB range then maybe such functions will be safe. But, right now they
are definately not.

Anyway, moving on, I fixed a few bugs with the MLX math code. But, for
the most part was correct. I also added reconmended polling code for
brownouts as required by the datasheet.

Last, I designed this code like the LCD code to support a type value
when inited. This will allow the system to user a different sensor in the
future without any API changes to the user.

I will add test scripts for this next. Basic usage follows:

import flir
flir.init()
flir.display_ir(sensor.snapshot())

And that's it. Super easy. If the user wants the raw temp values they
can use flir.read_ir() to get the ta and to values. The display function
has a hidden alpha and scale argument for controling blending and the
min/max scaling.

The previous way we worked out scaling kinda sucked... it was a good
shot, but, controllable min and maxes that autoscale by default just
work better. If the user knows the temp range then they can just set the
min and max.'

Anyway, longest commit ever done.
2016-03-24 18:04:05 -04:00
iabdalkader
9320338b7e Add MLX IR table generator. 2016-03-24 17:36:51 +02:00
Ibrahim Abd Elkader
e5631d2290 Merge pull request #102 from kwagyeman/master
Add BLE Driver
2016-03-20 20:04:35 +02:00
Kwabena W. Agyeman
2ef24cec0f Add BLE Driver
This a python module driver for the BLE module. It puts the module into
a mode that's good for machine interfacing and handles parsing commands
for you. Additionally, it lets you get access to the low level serial
port.

Users who want to use this driver will need to read and understand the
TruConnect API for what commands they can execute. This driver simply
makes executing commands easy. The user simply needs to call the
"command()" function with the strings listed on the TruConnect API and
they will get the response from the command back as a byte object.

Once the user has executed the nessary commands to setup the BLE
connection they can then do:

ble.command("str")

To put the BLE module into streaming mode and then they can just
directly access the serial port via:

ble.uart().write(<data>)

And etc.
2016-03-20 12:58:32 -04:00
Ibrahim Abd Elkader
089a7d4a45 Merge pull request #101 from kwagyeman/master
Add copy color.
2016-03-19 20:44:44 +02:00
Kwabena W. Agyeman
97a456c837 Add copy color.
The copy color function now works. It will automatically determine the
best thresholds to use to track a particular color blob for you.
2016-03-19 13:41:48 -04:00
iabdalkader
cf71b75962 Update change log 2016-03-19 19:10:06 +02:00
iabdalkader
7d6c59f834 Update firmware binaries 2016-03-19 18:59:33 +02:00
iabdalkader
cb211024c9 Increase serial timeout after connecting. 2016-03-19 18:53:54 +02:00
iabdalkader
5069a71e10 Break after connecting.
* Add break in serial connect retry loop
2016-03-19 18:47:44 +02:00
Ibrahim Abd Elkader
825911abe6 Merge pull request #99 from kwagyeman/master
Move LCD code into module.
2016-03-19 01:33:35 +02:00
iabdalkader
44895ead25 Add LCD module 2016-03-19 01:32:05 +02:00
Kwabena W. Agyeman
94910c8ed7 Move LCD code into module. It's now ultra fast, safe and friendly. I
tested everything too and added an example script (very simple).
2016-03-17 20:01:03 -04:00
iabdalkader
e13da8b3b8 Update PyInstaller's Spec File.
* Add pinout.png.
* Update to pyinstaller-3.1.1
* Note: this only works with setuptools==19.2
2016-03-15 00:44:00 +02:00
iabdalkader
2431556a87 Update firmware images. 2016-03-15 00:21:42 +02:00