Up Board using MRAA unable to initalize gpio
I tried to initialize gpio on UP Board using libmraa C API:
i2c = mraa_i2c_init(0);
but it always returns NULL. Then I learned that it requires root permissions, so I installed ubilinux 4 instead of ubuntu and updated the OS according to the wiki page, but again it returns NULL. Since I use Arduino Create IDE to upload sketches so I believe the code is running with root permissions. But still I got NULL, and initializing gpio or spi simply return NULL too. libmraa itself should be working fine because I can get the board name "UP" using mraa_get_platform_name() function.
Then today, I suddenly notice that after booting the board, just before entering the login page, there seem to be some errors:
efi: requested map not found.
esrt: ESRT header is not in the memory map.
CPLD verify error (expected: FFFFFFF, actual: 0)
up-pinctrl up-pinctrl: CPLD initialisation failed
Failed to find cpu0 device node
i8042: Can't read CTR while initializing i8042
I understand that GPIO buses on UP are driven by a CPLD, so does that mean my board is damaged? Or something else could be done to initialize all these correctly?
- 267 All Categories
- 104 Announcements & News
- 35 Product News - New Product/Product Change Notice/ End-of-life
- 175 Welcome Developers!
- 48 Unboxing & Project Sharing
- 15 Tech Updates
- 235 UP Products
- 20 UP Squared Pro
- 107 UP Xtreme
- 763 UP Squared
- 1.3K UP Board
- 81 UP Core Plus
- 209 UP Core
- 1 UP Xtreme Lite
- 36 UP AI Edge
- 207 Starter Kits & Peripheral