Commit Graph

2710 Commits

Author SHA1 Message Date
iabdalkader
cc95af7f34 Fix H7 SD clock. 2019-04-22 00:02:43 +02:00
iabdalkader
4ed92bf227 Fix SCCB/I2C timing for F7 & H7. 2019-04-21 00:52:35 +02:00
iabdalkader
434ed01b80 Add SSD1306 OLED driver. 2019-04-20 00:30:00 +02:00
Ibrahim Abd Elkader
429889f3cf
Merge pull request #506 from openmv/framebuf
Enable framebuf module
2019-04-17 22:46:25 +02:00
iabdalkader
29468b1d13 Enable framebuf module 2019-04-17 22:28:20 +02:00
Ibrahim Abd Elkader
572404719c
Merge pull request #505 from openmv/sock_ioctl
WINC: Set ioctl function.
2019-04-16 00:17:11 +02:00
iabdalkader
67bcebeedc WINC: Set ioctl function.
* MP code doesn't check for NULL ioctl.
2019-04-15 23:45:40 +02:00
Ibrahim Abd Elkader
b8f9f0e2be
Merge pull request #503 from openmv/uart_ctrlc
Allow ctrl-C to work with UARTs put on REPL.
2019-04-12 00:10:42 +02:00
iabdalkader
e9579d25c5 Allow ctrl-C to work with UARTs put on REPL.
* Fix from MP upstream.
2019-04-11 18:56:47 +02:00
Ibrahim Abd Elkader
d7e68d64cd
Merge pull request #502 from rmackay9/optflow-fix
Fixup MAVLink optical flow script after testing with ArduPilot
2019-04-05 16:23:22 +02:00
Randy Mackay
eba57709f3 mavlink_opticalflow: add green flashing LED 2019-04-05 09:08:15 +09:00
Randy Mackay
bb5f910e9e mavlink_opticalflow: always send flow packets regardless of quality
the flight controller performs best if it has regular updates
2019-04-05 09:08:15 +09:00
Randy Mackay
b60bec96cf mavlink_opticalflow: fix scaling and direction 2019-04-05 09:08:10 +09:00
iabdalkader
ae9efb6cc4 Update micropython docs. 2019-04-01 15:02:18 +02:00
iabdalkader
4d580033f2 Fix NN unittest. 2019-04-01 00:27:12 +02:00
Ibrahim Abd Elkader
42efbac090
Merge pull request #499 from openmv/nn_nonsquare
Use nonsquare NN functions.
2019-04-01 00:25:31 +02:00
iabdalkader
aefa80732d Use nonsquare NN functions. 2019-04-01 00:20:05 +02:00
iabdalkader
3f8df7178f Fix unit tests. 2019-03-30 17:44:31 +02:00
iabdalkader
403911c598 Update NN models.
* Update cifar10_fast network (retrained for better accuracy).
* Fix and update smile network (use hdf5 for consistency with other models and update hyper-parameters).
2019-03-30 17:27:53 +02:00
Ibrahim Abd Elkader
5aedcdbfd8
Merge pull request #498 from kidswong999/patch-6
example for tv shield
2019-03-30 15:47:02 +02:00
iabdalkader
bf5db7cd3f Bump firmware version. 2019-03-30 15:44:38 +02:00
王开智
780fdc5870
example for tv shield 2019-03-30 11:53:10 +08:00
Ibrahim Abd Elkader
054f27199b
Merge pull request #497 from openmv/nn_log
Enable logging in NN scripts.
2019-03-29 23:16:33 +02:00
iabdalkader
db6a55ace3 Enable logging in NN scripts. 2019-03-29 22:33:09 +02:00
Ibrahim Abd Elkader
5fc022718b
Merge pull request #496 from kidswong999/patch-5
distance shield example
2019-03-29 17:54:39 +02:00
Ibrahim Abd Elkader
078890916c
Merge pull request #495 from kidswong999/patch-4
imu shield example
2019-03-29 17:54:23 +02:00
王开智
94075dd3fd
distance shield example 2019-03-29 22:40:35 +08:00
王开智
4158ee89cc
imu shield example 2019-03-29 22:26:51 +08:00
iabdalkader
06c2b72caf Update cifar10 network.
* This model is more accurate.
2019-03-27 19:29:27 +02:00
iabdalkader
b0a16d445e Update change log. 2019-03-23 22:28:19 +02:00
iabdalkader
46dc62fd49 Update firmware images. 2019-03-23 22:21:11 +02:00
Ibrahim Abd Elkader
91182114f9
Merge pull request #494 from openmv/fix_jpeg
Fix H7 JPEG encoder boundaries.
2019-03-22 23:49:55 +02:00
iabdalkader
367383d800 Fix H7 JPEG encoder boundaries. 2019-03-22 22:47:55 +02:00
Ibrahim Abd Elkader
971c0b203e
Merge pull request #493 from kidswong999/patch-3
BNO055 lib for IMU shield
2019-03-22 13:27:05 +02:00
王开智
4759335a51
bno055 lib for imu shield 2019-03-22 15:27:44 +08:00
Ibrahim Abd Elkader
d15a1e35bc
Merge pull request #492 from openmv/fix_nn
Fix NN enum sizes.
2019-03-21 18:59:50 +02:00
iabdalkader
340608cad5 Fix NN enum sizes.
* Fixes issue #491
* Since enums are now short, make sure NN layer types are 4 bytes.
2019-03-21 18:28:20 +02:00
iabdalkader
f62454e4c6 Fix firmware version number. 2019-03-21 17:20:55 +02:00
iabdalkader
5f6517068c Bump firmware version. 2019-03-18 20:14:29 +02:00
iabdalkader
10adefb7d8 Update change log. 2019-03-18 20:09:35 +02:00
iabdalkader
b0ac6176da Update firmware images. 2019-03-18 20:06:59 +02:00
Ibrahim Abd Elkader
c5d686cf03
Merge pull request #490 from openmv/clean_fbfree
Remove extra fb_free calls.
2019-03-18 18:20:36 +02:00
iabdalkader
75a028f9e9 Remove extra fb_free calls. 2019-03-18 17:37:18 +02:00
Ibrahim Abd Elkader
bd41774802
Merge pull request #489 from kwagyeman/kwabena/fb_extra_alloc_fix
Fix exceptions from freeing fb_alloc_mark
2019-03-18 17:08:09 +02:00
Kwabena W. Agyeman
c982617523 Fix exceptions from freeing fb_alloc_mark
This fix creates a flag that prevents fb_alloc_free_till_mark() from
doing anything unless there was a previous fb_alloc_mark(). Once
fb_alloc_free_till_mark() is called it will no longer do anything until
there's another fb_alloc_mark().

This means that if an exception is triggered while in code that
previously did fb_alloc_mark() the stack will be cleaned up.

If the fb_alloc_mark() method is not called then the stack will not be
cleaned up and that memory fb_alloc()'ed will remain until a soft reset.

All OpenMV Cam library code is designed to fb_alloc_mark() before using
the fb stack and then fb_alloc_free_till_mark() when complete. However,
in the case of py_sensor_alloc_extra_fb() it doesn't mark first such
that the RAM it allocates stays across exceptions and is only free'd via
py_sensor_dealloc_extra_fb() or via a soft reset.

...

Summary of changes:

fb_alloc.c -> Added a semaphore lock to prevent
fb_alloc_free_till_mark() from doing anything unless fb_alloc_mark() was
called first.

py_sensor.c -> Removed calling fb_alloc_mark() and
fb_alloc_free_till_mark() and re-arranged code calls to prevent a trival
leak sitatuion on heap exhaustion.

py_image.c, py_fir.c, py_lcd.c py_tv.c -> Added fb_alloc_mark() and
fb_alloc_free_till_mark() to methods originally coded without using it.

...

Note - I coded the mark semaphore lock in such a way things work even if
fb_alloc_mark() and fb_alloc_free_till_mark() calls are nested. This
allows the find_blobs() call-back methods to call py_image.c methods
still and also allows us to add more call-backs in the future without
worry if we need to.

...

Finally, if you have an exception in an interrupt handler all this above
breaks terribly. Given MP already breaks if you try to allocate memory
in an exception this is a "won't fix problem". Don't call code that can
have exceptions or needs memory in an interrupt handler.
2019-03-17 19:20:09 -04:00
Ibrahim Abd Elkader
9581508bb6
Merge pull request #487 from openmv/lepton_fix
Call lepton_reset in recovery code.
2019-03-14 21:01:30 +02:00
iabdalkader
44ee992068 Call lepton_reset in recovery code. 2019-03-14 19:43:59 +02:00
Ibrahim Abd Elkader
39685fb7dc
Merge pull request #486 from openmv/fix_lepton_reset
Fix Lepton reset.
2019-03-13 21:18:17 +02:00
iabdalkader
8aa4205257 Fix Lepton reset. 2019-03-12 22:42:53 +02:00
Ibrahim Abd Elkader
bfca0bb891
Merge pull request #476 from kidswong999/patch-2
fixed class name
2019-03-12 02:34:04 +02:00