all | audio | badgelife | breakout | clocks | displays | experiments | feather | handhelds | home automation | howto | LED art | misc | props | robots | sewing | software | tools | no_category

im-me messenger - 12 years later

let's see if all that code still works that's flying around

but first we have to make a goodfet

im-me messenger - 12 years later | trying to get the GoodFET running on mac

2022-08-05 13:30:39

# download mps compilers
brew tap tgtakaoka/mspgcc

# prepare folders

sudo mkdir /opt/homebrew/lib/msp430 /opt/homebrew/lib/msp430/lib /opt/homebrew/include/msp430 /opt/homebrew/include/msp430/include
sudo chown -R $(whoami) /opt/homebrew/lib/msp430 /opt/homebrew/lib/msp430/lib /opt/homebrew/include/msp430 /opt/homebrew/include/msp430/include

# run install 
brew install libc-msp430 gdb-msp430

https://exfil.co/2016/02/11/goodfet-on-os-x/ 

Found a good starting point to talk with the MSP430, but sadly it runs into a weird bootloader password issue.

goodfet.bsl -P ./goodfet.hex --fromweb
Use -h for help
Use --fromweb to upgrade a GoodFET.
MSP430 Bootstrap Loader Version: 1.39-goodfet-8
Invoking BSL...
Transmit password ...
Use -h for help
Use --fromweb to upgrade a GoodFET.
MSP430 Bootstrap Loader Version: 1.39-goodfet-8
Invoking BSL...
Transmit password ...
Traceback (most recent call last):
  File "/usr/local/bin/goodfet.bsl", line 1987, in 
    main(0);
  File "/usr/local/bin/goodfet.bsl", line 1887, in main
    bsl.actionStartBSL()
  File "/usr/local/bin/goodfet.bsl", line 1166, in actionStartBSL
    self.txPasswd(self.passwd)                  #transmit password
  File "/usr/local/bin/goodfet.bsl", line 1136, in txPasswd
    wait=wait)           #if wait is 1, try to sync forever
  File "/usr/local/bin/goodfet.bsl", line 801, in bslTxRx
    rxFrame = self.comTxRx(cmd, dataOut, len(dataOut))  #Send frame
  File "/usr/local/bin/goodfet.bsl", line 480, in comTxRx
    rxHeader, rxNum = self.comRxHeader()        #receive header
  File "/usr/local/bin/goodfet.bsl", line 386, in comRxHeader
    if not hdr: raise BSLException("Timeout")
__main__.BSLException: Timeout

aha! So the tutorial uses a capital P where the flag should be a small p. Or not, maybe the password stuff is set somewhere else or while compiling. writing the ./prebuilt firmware worked.

board=goodfet42 goodfet.bsl -p goodfet.hex

Well that wasn't really a solution, but somehow I got it to except the firmware, probably by using the "fromweb" flag for it, where it wasn't confused by all that.

im-me messenger - 12 years later | trying to get the GoodFET running on mac

2022-08-05 13:30:39

# download mps compilers
brew tap tgtakaoka/mspgcc

# prepare folders

sudo mkdir /opt/homebrew/lib/msp430 /opt/homebrew/lib/msp430/lib /opt/homebrew/include/msp430 /opt/homebrew/include/msp430/include
sudo chown -R $(whoami) /opt/homebrew/lib/msp430 /opt/homebrew/lib/msp430/lib /opt/homebrew/include/msp430 /opt/homebrew/include/msp430/include

# run install 
brew install libc-msp430 gdb-msp430

https://exfil.co/2016/02/11/goodfet-on-os-x/ 

Found a good starting point to talk with the MSP430, but sadly it runs into a weird bootloader password issue.

goodfet.bsl -P ./goodfet.hex --fromweb
Use -h for help
Use --fromweb to upgrade a GoodFET.
MSP430 Bootstrap Loader Version: 1.39-goodfet-8
Invoking BSL...
Transmit password ...
Use -h for help
Use --fromweb to upgrade a GoodFET.
MSP430 Bootstrap Loader Version: 1.39-goodfet-8
Invoking BSL...
Transmit password ...
Traceback (most recent call last):
  File "/usr/local/bin/goodfet.bsl", line 1987, in 
    main(0);
  File "/usr/local/bin/goodfet.bsl", line 1887, in main
    bsl.actionStartBSL()
  File "/usr/local/bin/goodfet.bsl", line 1166, in actionStartBSL
    self.txPasswd(self.passwd)                  #transmit password
  File "/usr/local/bin/goodfet.bsl", line 1136, in txPasswd
    wait=wait)           #if wait is 1, try to sync forever
  File "/usr/local/bin/goodfet.bsl", line 801, in bslTxRx
    rxFrame = self.comTxRx(cmd, dataOut, len(dataOut))  #Send frame
  File "/usr/local/bin/goodfet.bsl", line 480, in comTxRx
    rxHeader, rxNum = self.comRxHeader()        #receive header
  File "/usr/local/bin/goodfet.bsl", line 386, in comRxHeader
    if not hdr: raise BSLException("Timeout")
__main__.BSLException: Timeout

aha! So the tutorial uses a capital P where the flag should be a small p. Or not, maybe the password stuff is set somewhere else or while compiling. writing the ./prebuilt firmware worked.

board=goodfet42 goodfet.bsl -p goodfet.hex

Well that wasn't really a solution, but somehow I got it to except the firmware, probably by using the "fromweb" flag for it, where it wasn't confused by all that.

im-me messenger - 12 years later | but first, we must build a goodFET42

2022-07-18 21:44:29

Sure, I could try and do the same hard work that plenty people have done before me, do miserably and fail - or I could just try and get stuff from back then working. So within chip shortage I tried to get hold of the MSP chip that's featured on the GoodFET, a DIY JTAG and more probe, that isn't obtainable anywhere. Thankfully everything I needed was accessible and so I started redesigning the GoodFET in KiCad, swapped some parts and added rounded corners basically and ordered the boards at OSHpark. Why did I do that? Because all the tutorials from 2010 basically start with "connect your GoodFET to the im-me messenger" and well I need one then, of course.

https://cdn.hackaday.io/images/1238111658173421153.jpeg

im-me messenger - 12 years later | but first, we must build a goodFET42

2022-07-18 21:44:29

Sure, I could try and do the same hard work that plenty people have done before me, do miserably and fail - or I could just try and get stuff from back then working. So within chip shortage I tried to get hold of the MSP chip that's featured on the GoodFET, a DIY JTAG and more probe, that isn't obtainable anywhere. Thankfully everything I needed was accessible and so I started redesigning the GoodFET in KiCad, swapped some parts and added rounded corners basically and ordered the boards at OSHpark. Why did I do that? Because all the tutorials from 2010 basically start with "connect your GoodFET to the im-me messenger" and well I need one then, of course.

https://cdn.hackaday.io/images/1238111658173421153.jpeg