-
Espruino Wifi requires the AT commandset firmware be available on the wifi shield. See also https://www.espruino.com/ESP8266#gotchas
Maybe you need to check if you have the correct firmware on the shield? https://www.espruino.com/ESP8266#firmware-versions
-
That link looks to be the actual Espruino firmware. It allows the watch to interpret and run javascript.
You can also have your own JS firmware which you might call as "apps" and you can update or upload that via the Web IDE (the Bangle bootloader, clock, basically anything you see on the watch are just apps running on top of Espruino).
The Web IDE can also update the Espruino firmware on the watch, although not all browsers support Web Bluetooth (as far as I can tell the best success comes with Google Chrome). I've updated my watch and various other bluetooth Espruinos via the Web IDE. I'm not sure where you found where it says it only works with USB devices though.
The command line version should also be able to connect via bluetooth, I just haven't tried it yet. See for example the bluetooth mentioned in one of the commandline arguments:
-p,--port /dev/ttyX : Connect to a serial port -p,--port aa:bb:cc:dd:ee : Connect to a Bluetooth device by addresses -p,--port tcp://192.168.1.50 : Connect to a network device (port 23 default) -d deviceName : Connect to the first device with a name containing deviceName
-
The latest vscode (October 2020 update) now has support for recursive clones
https://code.visualstudio.com/updates/v1_51#_git-recursive-clone-command
Git: Recursive clone command
With the Git: Clone (Recursive) command,
you can now recursively clone Git repositories, including its nested
Git submodules. -
-
-
Looks like they just announced it: https://microbit.org/new-microbit/
It uses the nRF52833 and can use S140
I wonder if current builds for nRF52840 would work (with some pin adjustments) ?
-
-
Looks like everything's working:
>require("Flash").getFree() =[ { addr: 442368, length: 4096 }, { addr: 1610612736, length: 16777216 } ]
I used the common Arduino spi pins for the mapping:
'SPIFLASH' : { 'pin_cs' : 'D10', # cs 'pin_mosi' : 'D11', # di 'pin_miso' : 'D12', # do 'pin_sck' : 'D13', # clk 'size' : 8192*1024*2, # 16MB 'memmap_base' : 0x60000000, # map into the address space (in software) },
I wonder if we can just add in spiflash by default on the boards as a placeholder since spi can reuse the pins anyway (at least on the pixl, since it mimics the Arduino layout)? And maybe just pass in the cs pin when trying to use the Flash module just in case you'd want to reuse pin 10 for your own spi peripheral.
-
-
Tried again with the HD44780 LCD Display, connecting it to 3v3 or VBAT still gets the timeout.
I'll try and see if pullup resistors would work, maybe that's the culprit.
Edit: looks like the I2C expander already has pullups: https://www.best-microcontroller-projects.com/mcp23017.html
Might have to break out an oscilloscope for this one :(
-
-
-
You're right, I can't seem to find an old enough binary that works O_O
My mind must be playing tricks on me.
| __|___ ___ ___ _ _|_|___ ___ | __|_ -| . | _| | | | | . | |_____|___| _|_| |___|_|_|_|___| |_| http://espruino.com 1v94 Copyright 2016 G.Williams >Uncaught InternalError: Timeout on I2C Write BUSY at line 1 col 111 ...|4,a|4,a,a,d,d,d|4,d|4,d,d]) ^ in function "a" called from line 1 col 7 a(51,1),a(50,1),a(40,1),a(12,1),a(6,1),a(1,1),{write:a,clear... ^ in function "a" called from line 1 col 133 ...,a|4,a,a,d,d,d|4,d|4,d,d])}) ^ in function "connectI2C" called from line 1 col 807 ...('HD44780').connectI2C(I2C1);lcd.print('Hello World!') ^ =undefined >
-
-
-
Which pins are you using the I2C on? There was a similar issue that was solved via using Software I2C http://forum.espruino.com/comments/15558111/
If it's just an SSD1306 then it should be fine to use software I2C
If you need hardware I2C you can use I2C2 on b3 and b10
-
-
-
Ah, looks like it's like this on the RAK5010
# Use this for the 8mb external flash if chip is installed in board # 'address' : 0x60000000, # put this in external spiflash (see below) # 'page_size' : 4096, # 'pages' : 2048, # Entire 8MB of external flash # 'flash_available' : 512 - ((31 + 8 + 2)*4) # Softdevice uses 31 pages of flash, bootloader 8, FS 2. Each page is 4 kb. }, }; devices = { 'LED1' : { 'pin' : 'D12' }, # IS25WP064A QSPI flash # 'SPIFLASH' : { # Chip is not installed in board # 'pin_cs' : 'D42', # cs P1.10 # 'pin_sck' : 'D43', # clk P1.11 # 'pin_mosi' : 'D3', # d0 P0.03 # 'pin_miso' : 'D47', # d1 P1.15 # 'pin_wp' : 'D46', # d2 P1.14 # 'pin_rst' : 'D45', # d3 P1.13 # 'size' : 8192*1024, # 8MB # 'memmap_base' : 0x60000000 # map into the address space (in software) # } };
which I expect the commented out lines would relocate the storage to external flash
-
So in this case,
'SPIFLASH' : { 'pin_cs' : 'D21', 'pin_sck' : 'D19', 'pin_mosi' : 'D27', # D0 'pin_miso' : 'D20', # D1 'pin_wp' : 'D31', # D2 'pin_rst' : 'D17', # D3 'size' : 4096*1024, # 4MB 'memmap_base' : 0x60000000 # map into the address space (in software) }
if I add something like that in a custom board file, is there anything else i need to do so I can have the same layout as you mentioned: Storage in internal flash and then SPI accessible via Flash API ? Or I just need to add that board definition and that's it?
-
The best would be to have two Storage 'drives' one for javascript code and some smaller data files and another bigger one in SPI flash. There is issue for that idea here https://github.com/espruino/Espruino/issÂues/1899
Got it, this looks like the use case I'm looking for. I'm was interested in the Storage API abstracting the access to the notion of files and doing the flash management behind the scenes, but I guess just designing the data so it fits the blocks (and then writing blocks) would work as well.
-
BTW my use case here would be to try and do a circular buffer for my air quality sensor https://hackaday.io/project/174293-bleifying-a-honeywell-pm-sensor
Instead of saving the data onto an SD card, I thought of using spi flash instead which would be faster. That way I can query data for the past 100 points or so (depending on the size of the spi flash).
-
I got myself one of those W25 spi flash chips, and I was wondering if instead of using the W25 module, can we somehow abstract all of that with the Storage module?
I saw that Bangle has this which makes all storage be saved in external flash https://www.espruino.com/Bangle.js+Technical#software
Does that mean I just need to recompile following that of Bangle and it should just work? (not at my dev machine atm but will try it out when I can).
-
Ah, I didn't notice that. I guess @Gordon needs to update this text :P
Yes, I use the Web IDE to flash the Espruino firmware. I attached a screenshot.