W4 - Embedded programming

Computer controlled cutting

Tasks

  • Group assignment:
    • ✔ Demonstrate and compare the toolchains and development workflows for available embedded architectures
  • Individual assignment:
    • ✔ Browse through the data sheet for your microcontroller write a program for a microcontroller
    • X Simulate its operation (in Wokwi), to interact (with local input &/or output devices) and communicate (with remote wired or wireless connections) -> Wokwi does not offer RFID module communication options
    • X Extra credit: test it on a development board -> I ordered a Pico Zero and NFC modules
    • ✔ Extra credit: try different languages &/or development environments

Conclusion

List of required BOM components:

List of components that have to be produced:

  • 4x parametric Corner Outer from W2. Update: Size est.: ; Material:
  • 4x parametric Corner Inner. Update: Size est.: Material:
  • 1x button Top: Est. size: Material:
  • 1x bottom Cover 'Batteries holder'. Est. size: ; Material:
  • 3x PCB 'LED and NFC'. Est. size: ; Material:
  • 1x PCB 'Brain and Soul od puzzRob'. Est. size: ; Material:

See my documentation on choosing the appropiate hardware for more details.

For a more formal description of the process of choosing the required hardware, please open this file:

tba, Choosing Hardware PDF

Working with Draw.io, Overleaf, Wokwi, Circuit.js

These programs are pretty straight forward and I have already been using them in several occasions. There are hundreds of tutorials online for each of these programs. Hence, I will document only the issues I encountered this time and how I (tried to) solve them.

Working with different programming environments and languages

This week I used VS Code and Overleaf for programming in Latex. I prefer using Overleaf for building PDF files because

  • The preview function works perfectly [INSERT IMAGE]
  • Both are can be connected to GitHub, so I can always switch between programs if needed
  • I already use VS Code for programming this website. Having separate projects open in both programs allows me to directly get to work without having to switch between project folders.

I also tested programming the RP2040 on both VS Code and Wokwi. Notes:

  • I am more used to using VS Code or the Arduino IDE for embedded programming. Using Wokwi's IDE takes getting used to
  • Wokwi offers the unique advantage to simulate the wired communication for my project. The plug-in for VS Code works just the same.
  • No offline simulations possible unless a license is purchased for 97$ a year.
  • I tried embedding Micropython into my C-adjacent code. It opens some new possibilities. It's time to practice Microphython now!

What I want to improve on next week