C h r i s t i n e S p i n d l e r C 3 5 C 3 S - - PowerPoint PPT Presentation
C h r i s t i n e S p i n d l e r C 3 5 C 3 S - - PowerPoint PPT Presentation
C h r i s t i n e S p i n d l e r C 3 5 C 3 S a t u r d a y , 2 9 . D e c e mb e r 2 0 1 8 C l a r k e O u t l i n e ( 1 ) W h a t i s Mi c r o P y t h o n ( 2 ) B e n
2 9 / 1 2 / 1 8 C 3 5 C 3 2
O u t l i n e
( 1 ) W h a t i s Mi c r
- P
y t h
- n
( 2 ) B e n e fi t s
- f
S c r i p t i n g l a n g u a g e s ( 3 ) Ma k e r P r
- j
e c t s ( 4 ) H
- w
Mi c r
- P
y t h
- n
g e n e r a t e s b e n e fi t ( 5 ) H a r d wa r e & S
- f
t wa r e i n t e r a c t i
- n
( 6 ) Q u e s t i
- n
s
2 9 / 1 2 / 1 8 C 3 5 C 3 3
@I E E E S p e c t r u m 3 1 . 7 . 1 8
T
- p
P r
- g
r a mmi n g L a n g u a g e s 2 1 8
2 9 / 1 2 / 1 8 C 3 5 C 3 4
W h a t i s Mi c r
- P
y t h
- n
?
- l
e a n a n d e f fi c i e n t r e wr i t e
- f
P y t h
- n
- I
n c l u d e s c
- mp
l e t e p a r s e r , c
- mp
i l e r , v i r t u a l ma c h i n e , r u n t i me s y s t e m a n d g a r b a g e c
- l
l e c t
- r
- b
y t e c
- d
e
- r
n a t i v e ma c h i n e c
- d
e
- S
u p p
- r
t s i n l i n e a s s e mb l e r
- C
- mp
i l a t i
- n
- n
t h e c h i p
- R
E P L ( r e a d , e v a l u a t e , p r i n t – l
- p
)
2 9 / 1 2 / 1 8 C 3 5 C 3 5
H
- w
e v e r y t h i n g s t a r t e d
2 9 / 1 2 / 1 8 C 3 5 C 3 6
5 y e a r s i n
- G
i t H u b 7 + S t a r s , 2 + c
- n
t r i b u t e r s , 2 + f
- r
k s 4 2 R e l e a s e s v 1 . 9 . 4 wi t h c
- d
e c
- v
e r a g e 9 9 . 2 %
- I
n t h e U K a l l 1 1
- 1
2 y e a r
- l
d c h i l d r e n g
- t
a B B C Mi c r
- :
B i t
- D
e v e l
- p
me n t b
- a
r d s s h i p p i n g wi t h Mi c r
- P
y t h
- n
p r e
- i
n s t a l l e d f r
- m
d i f f e r e n t c
- mp
a n i e s A d a f r u i t ( C i r c u i t P y t h
- n
) , P y C
- m,
O p e n MV . . .
- F
i r s t O ’ R e i l l y B
- k
b y N i c h
- l
a s T
- l
l e r v e y
- 2
n d
G e n e r a t i
- n
- f
p y b
- a
r d s r e a d y t
- l
a u n c h
2 9 / 1 2 / 1 8 C 3 5 C 3 7
B e n e fi t s
- f
S c r i p t i n g L a n g u a g e s
- I
n i t i a l a c q u a i n t a n c e / l e a r n a b i l i t y
- R
a p i d p r
- t
- t
y p i n g
- T
i me t
- ma
r k e t
- E
a s y e x t e n s i b i l i t y b y a u s e r
- S
e c u r i t y
- f
e x t e n s i b i l i t y b y a u s e r
- n
a t u r a l s a n d b
- x
- e
x t e n s i
- n
c
- d
e , t
- ma
i n t a i n p r
- d
u c t i n t e g r i t y a n d p r
- t
e c t i
- n
a g a i n s t a t t a c k v e c t
- r
s .
2 9 / 1 2 / 1 8 C 3 5 C 3 8
H a v e y
- u
u s e d Mi c r
- P
y t h
- n
?
“ N O, we u s e C b e c a u s e t h a t ’ s wh a t we d
- !
” “ S c r i p t i n g L a n g u a g e s a r e i n t e r p r e t e d , s
- t
h e y a r e s l
- w
a n d u s e a l
- t
- f
R e s
- u
r c e s , t h a t ’ s wh y t h e y a r e n
- t
e n e r g y e f fi c i e n t ” We l l , Mi c r
- P
y t h
- n
i s f a s t ! I f y
- u
l
- k
a t t h e D E V E L OP ME N T T I ME
2 9 / 1 2 / 1 8 C 3 5 C 3 9
Ma k e r P r
- j
e c t s
R e mo t e , wi r e l e s s we a t h e r s t a t i
- n
n e t wo r k b y P e t e r H i n c h Q u a d r
- c
- p
t e r b y D a mi e n G e
- r
g e
2 9 / 1 2 / 1 8 C 3 5 C 3 1
Mi c r
- P
y t h
- n
Ma k e r P r
- j
e c t s
2 9 / 1 2 / 1 8 C 3 5 C 3 1 1
T e l l u s !
“ We c a me t
- MP
Y wh i l e s e a r c h i n g f
- r
a l i g h t we i g h t p y t h
- n
i mp l e me n t a t i
- n
f
- r
a l i n u x b a s e d s y s t e m t
- g
e t r i d
- f
b l
- a
t e d s h e l l s c r i p t s . F
- r
t h i s fi r s t p r
- j
e c t i t e n d e d u p wi t h g e t t i n g r i d
- f
l i n u x r e p l a c i n g i t wi t h MP Y . T wo y e a r s l a t e r we c
- v
e r u l t r a l
- w
p
- we
r s y s t e ms ( c
- n
s u mi n g 5 n A wi t h a c t i v e R E P L ! ) f
- r
r e a l
- t
i me i ma g e p r
- c
e s s i n g , a l l wi t h j u s t
- n
e d e v e l
- p
me n t a n d r u n t i me e n v i r
- n
me n t . ” “ A l l i mp l e me n t a t i
- n
s a r e a c
- mb
i n a t i
- n
- f
a MP Y f r a me wo r k a n d f e w ( u s u a l l y j u s t
- n
e ) s p e c i fi c ( u s u a l l y ( v e r y ) s ma l l ) C
- r
e v e n a s s e mb l e r mo d u l e s ”
2 9 / 1 2 / 1 8 C 3 5 C 3 1 2
Mi c r
- P
y t h
- n
- n
c a l c u l a t
- r
s
h t t p : / / e d u . c a s i
- .
c
- m/
p r
- d
u c t s / g r a p h i c / f x c g 5 / n u mwo r k s . c
- m
2 9 / 1 2 / 1 8 C 3 5 C 3 1 3
LIVE DEMO www.micropython.org/unicorn
2 9 / 1 2 / 1 8 C 3 5 C 3 1 4
C
- mp
a n i e s u s i n g Mi c r
- P
y t h
- n
G e
- r
g e R
- b
- t
i c s T h e d e v e l
- p
e r s
- f
Mi c r
- P
y t h
- n
“ My b a c k g r
- u
n d i s t h e
- r
e t i c a l p h y s i c s , s
- I
a p p r
- a
c h t h e d e s i g n a n d d e v e l
- p
me n t
- f
Mi c r
- P
y t h
- n
f r
- m
a mu c h mo r e a c a d e mi c a n d r e s e a r c h
- r
i e n t e d p
- i
n t
- f
v i e w, c
- mp
a r e d t
- s
i mp l y e n g i n e e r i n g a s
- l
u t i
- n
t
- a
p r
- b
l e m. I b e l i e v e t h i s h a s b e e n p a r t
- f
t h e r e a s
- n
f
- r
t h e s u c c e s s
- f
Mi c r
- P
y t h
- n
” – – D a mi e n P . G e
- r
g e C r e a t
- r
- f
Mi c r
- P
y t h
- n
& D i r e c t
- r
- f
G e
- r
g e R
- b
- t
i c s
2 9 / 1 2 / 1 8 C 3 5 C 3 1 5
C
- mp
a n i e s u s i n g Mi c r
- P
y t h
- n
"Mechanical, electrical and software design and development" " T h e c
- n
s t a n t b a t t l e
- f
fi n d i n g c
- mp
- n
e n t s a n d t
- l
s t h a t h a v e e a s e
- f
u s e , wh i l e a l s
- b
e i n g c a p a b l e f
- r
p r
- f
e s s i
- n
a l a p p l i c a t i
- n
s , i s wh a t d r e w me t
- Mi
c r
- p
y t h
- n
. I t a l l
- ws
me t
- d
e s i g n , b u i l d a n d i t e r a t e e f fi c i e n t l y "
2 9 / 1 2 / 1 8 C 3 5 C 3 1 6
S
- i
t ’ s t h e a ma z i n g s
- f
t wa r e ?
2 9 / 1 2 / 1 8 C 3 5 C 3 1 7
p y b
- a
r d D !
2 9 / 1 2 / 1 8 C 3 5 C 3 1 8
D E MO
2 9 / 1 2 / 1 8 C 3 5 C 3 1 9
P y b
- a
r d D
D
- wn
l
- a
d i n g d a t a t
- P
Y B D 1 mA a r
- u
n d 8 K b y t e / s e c U p l
- a
d i n g d a t a
- u
t
- f
P Y B D 1 4 mA 1 Mb y t e / s e c L i s t e n i n g H T T P s e r v e r c
- n
n e c t e d t
- W i
F i r
- u
t e r ~ 1 mA P Y B v 1 . 1 ( 1 6 8 MH z ) P Y B D ( 1 2 MH z ) 2 1 6 MH z ( 1 . 7 5 x P Y B v 1 . 1 )
P Y B v 1 . 1 I d l e a t 1 8 mA R u n a t 5 5 mA _ _ _ _ P Y B D I d l e a t 1 8 mA R u n a t 5 5 mA I d l e : 3 4 mA R u n : 1 1 2 mA L i g h t
- s
l e e p : 5 u A D e e p
- s
l e e p wi t h R T C : 1 u A
2 9 / 1 2 / 1 8 C 3 5 C 3 2
W h a t Mi c r
- P
y t h
- n
c a n ’ t d
- r
e a l l y s ma l l MC U ' s u s e t r a d i t i
- n
a l C
- d
y n a mi c a l l y t y p e d l a n g u a g e
- me
mo r y f r a g me n t a t i
- n
- e
mb e d d e d L i n u x s y s t e m f
- r
l a r g e p r
- j
e c t s
2 9 / 1 2 / 1 8 C 3 5 C 3 2 1
Mi c r
- P
y t h
- n
f
- r
p r
- d
u c t d e v e l
- p
me n t !
P R O
- p
r
- d
u c t i v i t y
- t
r a c e a b i l i t y
- t
e s t a b i l i t y
- p
- r
t a b i l i t y
- l
i c e n s i n g
- s
u p p
- r
t C O N
- i
n c r e a s e d h a r d wa r e r e s
- u
r c e s
- l
a c k
- f
d e v e l
- p
e r s k i l l s r e g a r d i n g s c r i p t i n g l a n g u a g e s
2 9 / 1 2 / 1 8 C 3 5 C 3 2 2
mi c r
- p
y t h
- n
.
- r
g f
- r
u m. mi c r
- p
y t h
- n
.
- r
g s t
- r
e . mi c r
- p
y t h
- n
.
- r
g c h r i s t i n e @mi c r
- p
y t h
- n
.
- r
g
2 9 / 1 2 / 1 8 C 3 5 C 3 2 3
T h a n k s t
- a
n d c r e d i t f
- r
p i c t u r e s :
- D
a mi e n G e
- r
g e
- V
i k t
- r
i y a S k
- r
y k
- T
r a v i s T r a v e l s t e a d
- N
i c h
- l
a s T
- l
l e r v e y
- P
e t e r H i n c h
- T
h e P y t h
- n
S
- f
t wa r e F
- u
n d a t i
- n
- G
i t H u b
- C
a s i
- ,
N u mwo r k s
- T
h e B B C Mi c r
- :
B i t F
- u
n d a t i
- n