Firmware update, not possible on either windows or mac osx...
@soren If serial is working in a sense that you get a REPL prompt with a serial terminal like screen, then you could try Adafruit's ampy tool or Dave Hylands' rshell (https://github.com/dhylands/rshell). They both are pretty generic and allow to exchange scripts with the board and run them. This way, you can also set your board again for ftp. The script I use on my LoPy to set it to station mode is:
import network import time # setup as a station wlan = network.WLAN(mode=network.WLAN.STA) wlan.connect(ssid=MY_SSID, auth=(network.WLAN.WPA2, MY_PASSWD)) while not wlan.isconnected(): time.sleep_ms(50) wlan.ifconfig(config=(MY_FIXED_IP, "255.255.255.0", MY_GATEWAY, MY_DNS)) print(wlan.ifconfig())
Obviously, you have to set the proper values for MY_xxx. If you do not need a fixed address, you can skip the line with wlan.ifconfig()
@jmarcelino Hey, OK so I think I got serial working now, but I still can't sync my project from pymakr... just keeps saying "syncing failed".. is this because there is already bootleader on the lopy? remember, I can't get into ftp because I tried changing wlan password which didn't work and now I can't connect to it.
You really need serial working to recover properly.
I suspect your problem is that AppleUSBFTDI.kext is overriding your other FTDI driver.
There's also FTDIKext.kext - did you install more FTDI drivers in OSX other than the VCP by any chance?
Try to disable AppleUSBFTDI manually by doing
sudo mv AppleUSBFTDI.kext AppleUSBFTDI.disabled
and then restarting. This will prevent it from loading and might allow the correct one to work.
EDIT That said I'm now more suspicious of the D2xxHelper you listed, let me know if you installed any more drivers from FTDI. You may need to disable more.
You could try the safe boot procedure https://docs.pycom.io/pycom_esp32/_downloads/wipy_pinout.pdf. But I'm not sure whether that brings you back to the standard WiFi credentials. I think so, but cannot remember, whethe rI've gone this path once.
You mentioned to have tried Windows. You need the VCP driver von Windows too. But that should be less of a problem. The easient choice is Linux! You could try to boot a PC (or MAC?) with a Linux test image. Most distributions have images which you can boot from USB or DVD. Try Ubuntu, Lint or Knoppix.
@robert-hh hi Robert, thanks for your reply.
So I managed to get an FTP access up and running (awesome!!) but I also managed to try and change the server and wlan login credentials, which now resulted in the lopy not showing up as a wlan.. (well f*'** done soren).. so now I literally have no idea how to get access to my lopy with USB not working propperly.. any ideas ?
did a factory reset, but this did not seem to change my boot and main files.. which means i still can't see the lopy on wifi
I agree, stick with telnet + ftp for development and leave the serial connection for firmware upgrades and debugging.
I do think you have too many serial drivers installed and active and - as they say, too many serial drivers in the kitchen spoils the broth - you'll need to actually disable or delete the ones you don't need.
When you say: "synched a project", does thar mean you#re using Pymakr? If yes, don't do that. Pymakr simply adds another layer of strange issues. Better use basic tools, like an ftp client of your choice, screen or telnet, ...
There you have much better response, and if you have issues, the reason is obvious.
Just saw your edit on the original post. Glad you got it working in the end!
Yeah USB serial drivers can be a confusing mess - and actually FTDI has some of the best drivers.
so, after being able to connect and I synced a project several times - now I suddenly am back to being unable to connect. I did not reboot my system.. It just tells me "invalid device address.." and the lopy doesn't show up in configurations.. this has got to be the most uneasy mcu i've ever dealt with
kextfind -case-insensitive -bundle-id -substring 'FTDI' -print
kextfind gives me:
this is so weird though. trying to unload the mac ftdi driver with:
sudo kextunload -b com.apple.driver.AppleUSBFTDI
just gives me:
Can't create –b.
Can't create com.apple.driver.AppleUSBFTDI.
Yes it's not loading the driver for some reason. Can you post the result of:
kextfind -case-insensitive -bundle-id -substring 'FTDI' -print
to see if it's correctly installed and if there's any conflicts?
you can also try manually loading it with
sudo kextload -bundle-id com.FTDI.driver.FTDIUSBSerialDriver
Now it freakin works.. SOooo, there's a difference between vcp and the dxx ftdi drivers.. i did not know about the vcp before until just now. installing the vcp seems to be working now. also, i have currently unloaded the apple ftdi driver which might also be necessary but i'm not sure. phew, this is a rather frustrating process to go through.. thanks so much for the help @jmarcelino though!
I don't see a cu.usbserial-xxxx... no, sorry. this is what i get:
crw-rw-rw- 1 root wheel 20, 3 Mar 23 10:41 /dev/cu.Bluetooth-Incoming-Port
crw-rw-rw- 1 root wheel 20, 5 Mar 23 10:41 /dev/cu.JabraStylev130-CSRGAIA
crw-rw-rw- 1 root wheel 20, 7 Mar 23 10:41 /dev/cu.iPhone-WirelessiAP
crw-rw-rw- 1 root wheel 20, 1 Mar 23 10:41 /dev/cu.lpss-serial2
here's my result of kextstat -b com.FTDI.driver.FTDIUSBSerialDriver:
list itemIndex Refs Address Size Wired Name (Version) UUID <Linked Against>
so.. this looks like the ftdi driver is not being found at all, right?
Ok that looks good, so what do you get from a
ls -l /dev/cu.*?
Is there a line with
/dev/cu.usbserial-xxxxxxxx? (the xxxxxxxx part doesn't really matter)
EDIT Also can you post the result of
kextstat -b com.FTDI.driver.FTDIUSBSerialDriver
@jmarcelino yes, my mac see's the unit as a ft230x basic UART.
EDIT: I also tried a different USB cable now, just for the sake of excluding that.. no difference
Try looking in (Apple) menu -> About This Mac -> press System Report and then choose USB from the list
If your Mac can see the Expansion Board you'll have a device saying FT230X Basic UART , like this:
@jmarcelino I do have ftdi drivers installed, but that does not seem to make a difference on my osx system. It shouldn't be the USB C dongle obscuring things, because it's working just fine with eg. Arduino boards
I installed FTDI drivers on windows now which made it possible to update on my windows PC (actually thought that was only necessary for mac), but having installed ftdi drivers on my mac doesn't make any difference unfortunately..
@soren Or http://www.ftdichip.com/Drivers/CDM/CDM v2.12.26 WHQL Certified.zip For Windows. ;o)
Yes both firmware update and REPL are done over the UART serial.
If you're not seeing the correct device try installing the FTDI drivers from http://www.ftdichip.com/Drivers/VCP/MacOSX/FTDIUSBSerialDriver_v2_3.dmg