~/talk

Bridge the physical world: Kotlin/Native on Raspberry Pi

Talkat Conference for Kotliners 2019 · on Friday, 2019-06-07· [kotlin, web-performance]
slides:none on file

A hand robot that plays rock paper scissors runs on a Raspberry Pi compiled from Kotlin/Native, with working LED blink, button callbacks and I2C servo control; GPIO use relies on C interop .def files and staticCFunction callbacks, servos use a PCA9685 I2C driver with native memory scopes for pointer arguments, and the camera is driven by calling raspistill. Cross‑compilation and toolchain quirks cause friction and TensorFlow builds fail on 32‑bit Raspbian, so ML inference remains unresolved while hardware control works.

AI-written summary · about

  1. 0:00Introduction
  2. 0:51The machinery
  3. 2:10The project
  4. 2:24Data collection tool
  5. 3:41Driver
  6. 4:07Robota
  7. 4:19Final result
  8. 4:35Google stops the project
  9. 4:45Why KotlinNative
  10. 5:17What is KotlinNative
  11. 5:37Compiler
  12. 6:11Intermediate representation
  13. 6:30Terminology
  14. 6:56Pi architectures
  15. 7:27Raspberry Pi
  16. 7:42Coding Native Documentation
  17. 8:08Crosscompilation
  18. 8:57C Interoperability
  19. 9:40My setup
  20. 9:51GPIO
  21. 10:16Starting the project
  22. 11:00hello calling native
  23. 11:19compile
  24. 11:38different libraries
  25. 12:04making it work
  26. 12:28creating a def file
  27. 13:19GPIO library
  28. 13:52Final code
  29. 14:27Linking libraries
  30. 15:21Binary executable
  31. 15:34Crossplatform coupling
  32. 15:55English file
  33. 16:13Header file
  34. 16:37SCP
  35. 16:49Advanced
  36. 17:21Callback
  37. 18:00Reading C
  38. 18:43Static C function
  39. 19:00Code
  40. 19:33Server motors
  41. 20:02SDA1 CL
  42. 20:15Drivers
  43. 20:36PWM
  44. 21:40C library
  45. 22:20initialize C library
  46. 22:51code encoding
  47. 23:21C values ref
  48. 24:07Documentation is not enough
  49. 24:18Native Placement
  50. 24:29Memory Allocation
  51. 24:59Native on Raspberry Pi
  52. 25:40Robot starts to work
  53. 26:04Camera module
  54. 26:43POSIX binding
  55. 26:55recipesteel
  56. 27:29tensorflow
  57. 29:14passdown
  58. 29:35long wait
  59. 30:01basic demo
  60. 30:14image capture
  61. 30:44conclusion
  62. 32:06Native
  63. 32:32Repository
  64. 33:14Debugging
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.