1st issue: I had to comment out the following section in shell.py to even get it running:
def reset(self, fullreset = True):
........
#waitcr()
#ser.write(b'\r')
#waitcr()
2nd issue: bye does not exit shell, doesn't exist ... just get:
bye
?+
3rd issue: #flash command does not work:
flash build/nuc.hex
please wait...
Traceback (most recent call last):
File "./shell.py", line 72, in
swapforth.main(TetheredJ1a)
File "../shell/swapforth.py", line 385, in main
r.shell()
File "../shell/swapforth.py", line 339, in shell
self.shellcmd(cmd)
File "../shell/swapforth.py", line 197, in shellcmd
d = self.serialize()
File "./shell.py", line 68, in serialize
s = array.array('B', s).tostring().ljust(8192, chr(0xff))
TypeError: ljust() argument 2 must be a byte string of length 1, not str
Seems shell.py is a bit broken
.. also the documentation says to connect on /dev/ttyUSB0, but on my system it is /dev/ttyUSB1, USB0 is the programmer SPI interface ..
"make connect" does the right thing ..
EDIT:
My bad .. needs '#bye', not 'bye'
Seems shell.py only works with python2, maybe that should be documented .. ;)
Documentation again ... in the "Building from scratch" section it is stated:
Now run make j1a again - this compiles an FPGA image with the complete code base built-in.
This does not work, as you have to run "make -C icestorm" again before "make j1a" to pick up the added words, otherwise you just get the minimum. I guess ram.v is not updated.
1st issue: I had to comment out the following section in shell.py to even get it running:
2nd issue: bye does not exit shell, doesn't exist ... just get:
3rd issue: #flash command does not work:
Seems shell.py is a bit broken .. also the documentation says to connect on /dev/ttyUSB0, but on my system it is /dev/ttyUSB1, USB0 is the programmer SPI interface .. "make connect" does the right thing ..
EDIT:
This does not work, as you have to run "make -C icestorm" again before "make j1a" to pick up the added words, otherwise you just get the minimum. I guess ram.v is not updated.