07-06-2023, 01:26 AM
Thanks @WhiteHexagon you're on the right track! :-)
BTW We might have a chance to teach this in school! I'm chatting (remotely) with a High School Teacher, we're trying to figure out how PinePhone might work for Education.
I think PinePhone (with NuttX) might be a good tool for students to appreciate the internals of a Modern Smartphone. (Without the complexity of a huge OS like Linux)
Brainstorming some Education ideas for PinePhone... Perhaps a team of 4-5 students could work on a PinePhone Project on Apache NuttX RTOS:
(1) Turn PinePhone into a Feature Phone: We have a Feature Phone UI for NuttX, now we need to write the code (AT Commands) to make phone calls (or send SMS):
https://lupyuen.codeberg.page/articles/lvgl4.html
The UI is currently in Zig, which is great for Education because of the Runtime Checks (array out of bounds, integer overflow, null pointers). But we can adapt the code for C or Rust.
(2) Accelerometer Experiments: We have a working Accelerometer / Gyroscope / Temperature Sensor on NuttX for PinePhone. We might turn it into a Touchscreen Game maybe?
https://www.hackster.io/lupyuen/inside-a...tos-b92b58
(3) Contribute Drivers for NuttX: Advanced students could build the NuttX drivers for the PinePhone Sensors: Magnetometer, Light and Proximity Sensors.
https://lupyuen.codeberg.page/articles/p...ne-sensors
This might be a good opportunity to experience the Open Source contribution process. (The NuttX folks are very friendly) And they might see their contribution captured in NuttX RTOS for posterity!
https://lupyuen.codeberg.page/articles/pr.html
(4) I'll chat with Pine64, see if they might have Educational Discount for Bulk Purchase of PinePhone.
I used to teach Operating Systems at the Pre-University Level, and I found it incredibly frustrating that we couldn't use our phones as a teaching tool. I think we have a great opportunity today, I'm totally open to ideas how we can teach better :-)
BTW We might have a chance to teach this in school! I'm chatting (remotely) with a High School Teacher, we're trying to figure out how PinePhone might work for Education.
I think PinePhone (with NuttX) might be a good tool for students to appreciate the internals of a Modern Smartphone. (Without the complexity of a huge OS like Linux)
Brainstorming some Education ideas for PinePhone... Perhaps a team of 4-5 students could work on a PinePhone Project on Apache NuttX RTOS:
(1) Turn PinePhone into a Feature Phone: We have a Feature Phone UI for NuttX, now we need to write the code (AT Commands) to make phone calls (or send SMS):
https://lupyuen.codeberg.page/articles/lvgl4.html
The UI is currently in Zig, which is great for Education because of the Runtime Checks (array out of bounds, integer overflow, null pointers). But we can adapt the code for C or Rust.
(2) Accelerometer Experiments: We have a working Accelerometer / Gyroscope / Temperature Sensor on NuttX for PinePhone. We might turn it into a Touchscreen Game maybe?
https://www.hackster.io/lupyuen/inside-a...tos-b92b58
(3) Contribute Drivers for NuttX: Advanced students could build the NuttX drivers for the PinePhone Sensors: Magnetometer, Light and Proximity Sensors.
https://lupyuen.codeberg.page/articles/p...ne-sensors
This might be a good opportunity to experience the Open Source contribution process. (The NuttX folks are very friendly) And they might see their contribution captured in NuttX RTOS for posterity!
https://lupyuen.codeberg.page/articles/pr.html
(4) I'll chat with Pine64, see if they might have Educational Discount for Bulk Purchase of PinePhone.
I used to teach Operating Systems at the Pre-University Level, and I found it incredibly frustrating that we couldn't use our phones as a teaching tool. I think we have a great opportunity today, I'm totally open to ideas how we can teach better :-)