Open siashish opened 6 months ago
Hello @siashish
If you change this code here to the pin number on your board it should work: https://github.com/hybridgroup/mechanoid-examples/blob/main/blinky/modules/blink/main.go#L10
Hope that helps!
Hi @deadprogram
Despite changing the pin within the same code base for the Raspberry Pi Pico to pin 25, it still does not function as expected.
Is it a Pico or Pico-W? I remember blinking the LED on Pico-W requires going thru the Wifi device somehow. I think @soypat has Pico-W LED working, but outside the TinyGo code base.
@siashish if you do in fact have a Pico W you can try the following program to blink the LED and verify the LED is not damaged https://github.com/soypat/cyw43439/blob/main/examples/blinky/blinky.go
Just tried with a Pico changing to led = machine.Pin(25)
and it is blinking
https://github.com/hybridgroup/mechanoid-examples/assets/5520/d4245748-660a-4aa8-ae6a-0e93d40847d6
HI @scottfeldman, @soypat We are using PICO_W and the led is working fine. We have cross checked with (https://github.com/soypat/cyw43439/blob/main/examples/blinky/blinky.go) this example.
But when using mechanoid example blinky for PICO_W , we faced the below issue after running the mecha build command -
user:~/mechanoid-examples/blinky$ ls
go.mod go.sum main.go modules README.md
user:~/mechanoid-examples/blinky$ mecha build
Building module blink
Done.
package github.com/hybridgroup/mechanoid-examples/blinky/modules/blink
imports github.com/soypat/cyw43439
imports github.com/tinygo-org/pio/rp2-pio
imports device/rp: build constraints exclude all Go files in /home/user/.cache/tinygo/goroot-1300efd6eec7ee073f4512e2eb558a951848cb6a899247aebb806e8f806dc738/src/device/rp
tinygo build error /home/user/mechanoid-examples/blinky/modules/blink: exit status 1
Just tried with a Pico changing to
led = machine.Pin(25)
and it is blinking PXL_20240406_120224813.TS.mp4
Hi @deadprogram
I now have a PICO (not pico_w) board with me and I was trying out the blinky example again.
However, I get the below error during mecha flash command..
~/mechanoid-examples/blinky$ mecha flash -i wazero -m pico
Building TinyGo module blink
Done.
# os
/usr/local/lib/tinygo/src/os/types_unix.go:20:18: undefined: syscall.Stat_t
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:50:32: undefined: syscall.Timespec
/usr/local/lib/tinygo/src/os/dir_unix.go:55:28: undefined: syscall.ReadDirent
/usr/local/lib/tinygo/src/os/dir_unix.go:82:49: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:15:46: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:15:83: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:19:46: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:19:86: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:27:49: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:31:33: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:37:15: undefined: syscall.DT_BLK
/usr/local/lib/tinygo/src/os/dirent_linux.go:39:15: undefined: syscall.DT_CHR
/usr/local/lib/tinygo/src/os/dirent_linux.go:41:15: undefined: syscall.DT_DIR
/usr/local/lib/tinygo/src/os/dirent_linux.go:43:15: undefined: syscall.DT_FIFO
/usr/local/lib/tinygo/src/os/dirent_linux.go:45:15: undefined: syscall.DT_LNK
/usr/local/lib/tinygo/src/os/dirent_linux.go:47:15: undefined: syscall.DT_REG
/usr/local/lib/tinygo/src/os/dirent_linux.go:49:15: undefined: syscall.DT_SOCK
/usr/local/lib/tinygo/src/os/file_anyos.go:35:18: undefined: syscall.Chdir
/usr/local/lib/tinygo/src/os/file_anyos.go:55:36: undefined: syscall.Mkdir
/usr/local/lib/tinygo/src/os/file_anyos.go:63:34: undefined: syscall.Unlink
/usr/local/lib/tinygo/src/os/file_anyos.go:67:35: undefined: syscall.Rmdir
/usr/local/lib/tinygo/src/os/file_anyos.go:110:19: undefined: syscall.Write
/usr/local/lib/tinygo/src/os/file_anyos.go:142:18: undefined: syscall.Chmod
/usr/local/lib/tinygo/src/os/file_anyos.go:186:16: undefined: syscall.S_ISUID
/usr/local/lib/tinygo/src/os/file_anyos.go:189:16: undefined: syscall.S_ISGID
/usr/local/lib/tinygo/src/os/file_anyos.go:192:16: undefined: syscall.S_ISVTX
/usr/local/lib/tinygo/src/os/file_unix.go:28:17: undefined: syscall.Rename
/usr/local/lib/tinygo/src/os/file_unix.go:81:18: undefined: syscall.Link
/usr/local/lib/tinygo/src/os/file_unix.go:96:18: undefined: syscall.Symlink
/usr/local/lib/tinygo/src/os/file_unix.go:114:28: undefined: syscall.Readlink
/usr/local/lib/tinygo/src/os/file_unix.go:114:45: not enough arguments in call to fixCount
have (unknown type)
want (int, error)
/usr/local/lib/tinygo/src/os/file_unix.go:133:19: undefined: syscall.Pread
/usr/local/lib/tinygo/src/os/file_unix.go:149:20: undefined: syscall.Pwrite
/usr/local/lib/tinygo/src/os/file_unix.go:160:17: undefined: syscall.Fsync
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:23:31: undefined: syscall.S_IFMT
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:24:15: undefined: syscall.S_IFBLK
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:26:15: undefined: syscall.S_IFCHR
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:28:15: undefined: syscall.S_IFDIR
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:30:15: undefined: syscall.S_IFIFO
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:32:15: undefined: syscall.S_IFLNK
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:34:15: undefined: syscall.S_IFREG
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:36:15: undefined: syscall.S_IFSOCK
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:39:25: undefined: syscall.S_ISGID
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:42:25: undefined: syscall.S_ISUID
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:45:25: undefined: syscall.S_ISVTX
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:56:43: undefined: syscall.Stat_t
/usr/local/lib/tinygo/src/os/stat_unix.go:18:18: undefined: syscall.Fstat
/usr/local/lib/tinygo/src/os/stat_unix.go:31:37: undefined: syscall.Stat
/usr/local/lib/tinygo/src/os/stat_unix.go:44:37: undefined: syscall.Lstat
tinygo build error /home/user/mechanoid-examples/blinky/modules/blink: exit status 1
Do you have any insights on this ?
I am building on a linux machine with tinygo version
$ tinygo --version
Unknown command: --version
TinyGo is a Go compiler for small places.
version: 0.32.0
@Sandesh-verma you can either try updating to the pre-release version of wazero (1.7.4) or else try the mecha command with the wasman runtime (-i wasman
)
There is an issue with the latest release of tinygo with the latest release of wazero that is will be resolved on the next release of wazero.
Hope that helps!
Hi @deadprogram we tried mecha command with wasman runtime still we have the same error :-
user:~/mechanoid-examples/blinky$ mecha flash -i wasman -m pico
Building TinyGo module blink
Done.
# os
/usr/local/lib/tinygo/src/os/types_unix.go:20:18: undefined: syscall.Stat_t
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:50:32: undefined: syscall.Timespec
/usr/local/lib/tinygo/src/os/dir_unix.go:55:28: undefined: syscall.ReadDirent
/usr/local/lib/tinygo/src/os/dir_unix.go:82:49: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:15:46: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:15:83: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:19:46: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:19:86: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:27:49: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:31:33: undefined: syscall.Dirent
/usr/local/lib/tinygo/src/os/dirent_linux.go:37:15: undefined: syscall.DT_BLK
/usr/local/lib/tinygo/src/os/dirent_linux.go:39:15: undefined: syscall.DT_CHR
/usr/local/lib/tinygo/src/os/dirent_linux.go:41:15: undefined: syscall.DT_DIR
/usr/local/lib/tinygo/src/os/dirent_linux.go:43:15: undefined: syscall.DT_FIFO
/usr/local/lib/tinygo/src/os/dirent_linux.go:45:15: undefined: syscall.DT_LNK
/usr/local/lib/tinygo/src/os/dirent_linux.go:47:15: undefined: syscall.DT_REG
/usr/local/lib/tinygo/src/os/dirent_linux.go:49:15: undefined: syscall.DT_SOCK
/usr/local/lib/tinygo/src/os/file_anyos.go:35:18: undefined: syscall.Chdir
/usr/local/lib/tinygo/src/os/file_anyos.go:55:36: undefined: syscall.Mkdir
/usr/local/lib/tinygo/src/os/file_anyos.go:63:34: undefined: syscall.Unlink
/usr/local/lib/tinygo/src/os/file_anyos.go:67:35: undefined: syscall.Rmdir
/usr/local/lib/tinygo/src/os/file_anyos.go:110:19: undefined: syscall.Write
/usr/local/lib/tinygo/src/os/file_anyos.go:142:18: undefined: syscall.Chmod
/usr/local/lib/tinygo/src/os/file_anyos.go:186:16: undefined: syscall.S_ISUID
/usr/local/lib/tinygo/src/os/file_anyos.go:189:16: undefined: syscall.S_ISGID
/usr/local/lib/tinygo/src/os/file_anyos.go:192:16: undefined: syscall.S_ISVTX
/usr/local/lib/tinygo/src/os/file_unix.go:28:17: undefined: syscall.Rename
/usr/local/lib/tinygo/src/os/file_unix.go:81:18: undefined: syscall.Link
/usr/local/lib/tinygo/src/os/file_unix.go:96:18: undefined: syscall.Symlink
/usr/local/lib/tinygo/src/os/file_unix.go:114:28: undefined: syscall.Readlink
/usr/local/lib/tinygo/src/os/file_unix.go:114:45: not enough arguments in call to fixCount
have (unknown type)
want (int, error)
/usr/local/lib/tinygo/src/os/file_unix.go:133:19: undefined: syscall.Pread
/usr/local/lib/tinygo/src/os/file_unix.go:149:20: undefined: syscall.Pwrite
/usr/local/lib/tinygo/src/os/file_unix.go:160:17: undefined: syscall.Fsync
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:23:31: undefined: syscall.S_IFMT
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:24:15: undefined: syscall.S_IFBLK
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:26:15: undefined: syscall.S_IFCHR
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:28:15: undefined: syscall.S_IFDIR
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:30:15: undefined: syscall.S_IFIFO
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:32:15: undefined: syscall.S_IFLNK
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:34:15: undefined: syscall.S_IFREG
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:36:15: undefined: syscall.S_IFSOCK
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:39:25: undefined: syscall.S_ISGID
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:42:25: undefined: syscall.S_ISUID
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:45:25: undefined: syscall.S_ISVTX
/usr/local/lib/tinygo/src/os/stat_linuxlike.go:56:43: undefined: syscall.Stat_t
/usr/local/lib/tinygo/src/os/stat_unix.go:18:18: undefined: syscall.Fstat
/usr/local/lib/tinygo/src/os/stat_unix.go:31:37: undefined: syscall.Stat
/usr/local/lib/tinygo/src/os/stat_unix.go:44:37: undefined: syscall.Lstat
tinygo build error /home/eca3kor/mechanoid-examples/blinky/modules/blink: exit status 1
and for the wazero pre release version (1.7.4) we couldn't find it in the official github page , the latest version listed there is 1.7.3
I try to run the blink example on rpi pico with default board lead on pin 25. but led not blink on pico. Anyone have any suggestion, whats going wrong there. Thanks for the support.