Getting started on macOS

Hi Jean-Claude & others,

Thank you for your explanation on how you got RIOT to run on the STM32F4DISCOVERY board through macOS. I’m trying to do the same right now, and stumbled onto similar problems (including having to manually approve multiple programs part of gcc haha).

I would really appreciate it if you explain further how you solved the problems.

To give an idea of my current situation:

  • I have a STM32F4DISCOVERY (MB997C, with STM32F407VG, should have ST-Link/v2 on board), connected to a Macbook Pro 2016 (touchbar, only USB-C, macOS 10.15.2) with a mini-A USB to USB-B cable (and adapter to USB-C haha).
  • I have 3 goals: [1] being able to flash to the devboard [2] being able to build and flash through Eclipse (with hello-world example application) [3] make an adjusted example application and flash this to the devboard
  • I’ve been following the RIOT wiki pages for the Eclipse IDE, and STM32Fx-discovery boards. At times this has gotten me onto some obstacles, but most of them I’ve been able to resolve (for example the ssh-askpass problem). I am able to build now, but am not able to resolve the problems to be able to flash through Eclipse.
  • Before I didn’t have the ocd_bouncer problem when I tried to flash through the terminal, but now I do.
  • I don’t seem to see the usb serial connection with ‘ls /dev/tty*’ or ‘ls /dev/cu*’, but it does show it when I use the ‘ioreg -p IOUSB’ command (and also in system information), but it is unclear to me how I can adjust the flash/run settings in Eclipse in a way that it will still work (or maybe there is something else not right since it doesn’t show up in my /dev/ list in the first place?)
  • I have Python 3.6.3, and installed pyserial through pip (it also shows up in my anaconda3 folder). However, I still get an error in Eclipse when trying to run, that it can’t find the ‘serial’ module (in /dist/tools/pyterm/pyterm).

It would really help me if you could explain the following (if you’re able to):

  • Do you think my computer actually is able to communicate with the devboard, the way it shows up as an external device right now?
  • Can you explain more how you manually uploaded using st-util and arm-none-eabi-gdb (and any hints on how to incorporate that in the Eclipse project settings)?
  • Does the pyterm program (part of the RIOT project) use the default python configuration? Does Eclipse use the default python configuration? How can I check this, and make adjustments so it will recognise the pyserial module?
  • Is this process easier on Windows 10 or Linux distros? (Last week I also tried setting the environment up on a Windows 10 PC - I am now working from home on my Macbook for coronavirus reasons - and that also wasn’t the easiest process, but I’m curious if others have different experiences)
  • Any experiences with combining RIOT with Eclipse and the System Workbench for STM32 by OpenSTM32? (I didn’t get very far, since many things on the wiki pages were difficult to ‘merge’ with the configuration instructions given by the System Workbench manuals).

Hope everyone is safe and well at home! :slight_smile:

(For the people that helped me out last week with comparing RIOT with Zephyr, thank you so much! The team thought it was very interesting, but the conclusion was that it would be more helpful to know how easy/difficult development on both is, so here I am, trying both out now)

All the best, Noëlle