Comments (35)
I will have a look, thanks.
it is installing fine n a 2.08 using the "full" install option. Can you please try from a different chrome browser, just to rule it out?
from eucwatch.
Updating just handler in manual mode (after selecting proper 816 and sc7a20) gives a bit other response:
Customise failed, Unexpected response ....readJSON('setting.json',1).acctype
Maybe I should cleanup/edit something first?
from eucwatch.
but also have no idea how to update the runtime to the latest version on p8.
For updating the espruino image, use daflasher:
- Scan for the watch using daflasher, select it.
- Press the "Start Bootloader" button. The button will turn gray.
- Go back/kill daflasher.
- Scan for the watch using daflasher, select the dfutarg device, this is the P8 now.
- Select "do dfu update"
- Uncheck the "use nordic" and press select.
- choose the latest step4 espruino image
- after upload is finished, the watch will restart and run the scripts, done.
from eucwatch.
Updating just handler in manual mode (after selecting proper 816 and sc7a20) gives a bit other response:
Customise failed, Unexpected response ....readJSON('setting.json',1).acctype
Maybe I should cleanup/edit something first?
please try a different browser of refresh/clear github cookies
from eucwatch.
you could also try getting the watch to devmode before uploading, it is best practice anyways, it will have more ram available.
swipe up, press info, long hold on devmode.
Connect from the loader to the espruino-devmode device, this is the p8.
from eucwatch.
I think I got what is happening,
You had the cli option disabled in settings, you enabled it and tried to use the loader.
This cannot be done, not in the version you are using, the loader restarts the watch, and if the cli option was not saved enabled, it will revert to off, and connection will fail.
Select the cli, then do a restart to save he option, then connect the loader, or just use devmode, it is better.
from eucwatch.
Updated to latest runtime using your instructions, thanks.
It looks like before uploading the handler it resets (vibration), so you should be right. I did a clean install, so don't know why it worked for the 1st time (1st p8) and didn't work with the 2nd.
Could you give a hint about cli: how to "select the cli, then do restart" or switch to devmode without UI? I can't swipe up yet, it has black screen since no previous version running. But I can connect espruino ide and type commands.
from eucwatch.
connect from the loader while keeping the side button down, this will force devmode when the loader issues the restart to the watch. Release the side button after some seconds.
If the loader is still connected, continue with a full install, else refresh the loader/connect, and then try a full install.
from eucwatch.
Still no go. Trying to connect the loader, it connects to 'espruino-devmode' device, ok. But using full install, it still resets it before flashing the handler, no matter what I do.
Once I was able to flash the handler from the library as a single file (after selecting options for touch/acc). But after that I tried the full install again (without reconnecting), it reset all data and failed...
from eucwatch.
do it once more, this time select the "remove all apps" option from the installer tab.
then select the set time option, this will also exit devmode and restart.
scan again, it should be a p8xx, like fresh.
from eucwatch.
Did that, got p8xx, connected and tried to flash all - same.
Maybe I should repeat all 4 steps of flashing, or original bootloader is not involved anymore after espruino runtime is installed?
Maybe I can manually edit some settings file using Web IDE?
from eucwatch.
as a last resort, use the ide to manually make sure the watch is cleared:
connect from the ide
https://www.espruino.com/ide/#
and on the left hand side, the black field, do:
check flash size:
require("Storage").getFree();
press enter
if not 4MB, enable the flash chip
var spi=new SPI();spi.setup({sck:D2,mosi:D3,miso:D4,mode:0}); spi.send([0xab],D5); //wake
press enter
spi.send([0x9f,0,0,0],D5);
press enter
you should get something like that =new Uint8Array([0, 11, 64, 22])
if not, let me know
if yes, erase the flash:
require("Storage").eraseAll();
from eucwatch.
>require("Storage").getFree();
=4141544
>var spi=new SPI();spi.setup({sck:D2,mosi:D3,miso:D4,mode:0}); spi.send([0xab],D5); //wake
=new Uint8Array([255])
>spi.send([0x9f,0,0,0],D5);
=new Uint8Array([0, 104, 64, 22])
>require("Storage").eraseAll();
=undefined
>
Looks like all was erased. Now trying again the full install, right?
EDIT: same. Will try to update ALL bootloaders.
from eucwatch.
it looks ok.
from eucwatch.
EDIT: same. Will try to update ALL bootloaders.
You cannot/should not do that, something else is happening.
use the ide again, and try to upload a file, a not essential one, not init or handler, does it work?
from eucwatch.
Seems I can't now update bootloaders from steps 1-3:
Started DFU Error GATT ERROR
yes this is normal, you cannot just repeat steps 1-3.
from eucwatch.
Do this check for me, I have an idea of what may be happening.
- connect from the ide
- press the third button on the middle, the device storage. report if it shows any files inside.
- type reset(); on the left side, press the side button, and then enter, so that it will restart with the button pressed.
- did it make a buzz?
from eucwatch.
Did storage erase and reset;
Storage browser: no files;
reset(); - with both button pressed or released it did not buzz.
from eucwatch.
this all looks good, very strange.
try uploading some text using the ide to a file, the same storage button, just create a new file, name it test, and copy paste something inside.
does it appear on the device, can you access it after you create it?
from eucwatch.
Yes, I can upload files to Storage. I can then view it using browser.
from eucwatch.
Just was able to upload handler from the web library, then P8 core... Seems I can now upload file by file manually. Should I do that for all files on the Library tab?
If I try to to automatic full upload, after erase it could fail again.
I noticed that cli: 1 is set in default settings. You wrote it should NOT be enabled to use uploader, maybe something is wrong with default settings somehow? Settings.json from device:
{"name":"P8-eucWatch","touchtype":"816","acctype":"SC7A20","timezone":"3","woe":1,"wob":1,"rfTX":-4,"cli":1,"hid":0,"gb":0,"atc":0,"acc":0,"accE":0,"dnd":0,"hidT":"media","bri":2,"dash":0}
from eucwatch.
Uploaded all modules one by one and restarted watch: it works. Now I am afraid of trying something else (like reset storage and upload automatically). But it is the same as doing manual all modules upload, I may keep it as is for now.
from eucwatch.
ok, if you are sure that you cannot use the loader at this stage, I can only see one thing as a possible problem.
the fact thet the loader stops at the handler file suggests a watchdog firing, but no files are inside.
this can only happen if the core file (.bootrst on the device) is uploaded prior to the external flash being initialized, and that can only happen if you manually installed core on a new device, of the full install option failed to init the flash somehow.
this will lead to strange situation where .bootrst exits in internal flash and is executed, then external is enabled, and then havoc.
solution:
1.Install step 4 espruino nonflash enabled image using the daflasher steps above:
https://github.com/fanoush/ds-d6/blob/master/espruino/DFU/P8/espruino_2v08.5_p8_SDK12_SD30.zip
2.connect from the ide
3.check if any files exist using the storage button, if so delete them and reinstall latest 2.09
if not, let me know.
I noticed that cli: 1 is set in default settings. You wrote it should NOT be enabled to use uploader, maybe something is wrong with default settings somehow? Settings.json from device:
I wrote it should be enabled if it was not, the do a restart to save, then use the loader. The cli is needed for the ide/loader. But that was because you seemed to have access to the menus on the watch at that point. A restart from the info page on settings, saves the setting options on the watch,
from eucwatch.
Well, flashed the file you linked (2v08.5 (c) 2019
). Connected IDE. No files in the Storage.
from eucwatch.
ok do this:
var spi=new SPI();spi.setup({sck:D2,mosi:D3,miso:D4,mode:0});
enter
spi.send([0xb9],D5); //powerdown
enter
spi.send([0x9f,0,0,0],D5); //check status
enter
this will get it back to flash disabled.
do a >reset(); check files again, and if still nothing
do a >require("Storage").eraseAll();
and then load 2.09, it should be as new install. Try using the loader again and hopefuly it will be ok.
from eucwatch.
Did all above (was no files in the internal flash, still did eraseAll).
Now flashed 2.09 and went to the uploader page.
Issues:
- selecting device, it says 'connected to p8xx' before I click Connect;
- the bottom message 'Getting app list' appears even before I click Connect;
- The progress bar on stops almost near the end, and then later shows: 'Device connection failed, undefined', but the device IS connected at that time;
- when I click All I see a dialog to select drivers blinks and instantly disappears, then I only see confirmation dialog about erasing/installing. Is this an expected behaviour?
I don't remember where (at which step) it should ask for touch/acc, but it looks like this selection does not happen now, and this may be the reason why wrong handler is uploaded.
from eucwatch.
Are you using a phone or a pc? The same that you used to succesfully install the previus p8?
Have you tried other pc/browser, edge maybe? Those issues are not image related, and since no one else is reporting them, maybe you should try a different setup to rule it out?
or maybe do a restart? :)
from eucwatch.
Well, I just used another macbook and started the installation. The same above happened EXCEPT it asked for sensor types. After giving proper answers, the install proceeded. Now it is being installed. So the answer to original question is: it failed due to incorrect sensor types specified. And new question arises: why the dialog is silently closed on my Chrome while it happens on another.
Anyway, the problem is (hopefully) solved now. I want to thank you for really instant responses. This level of support is amazing. Maybe one day I could help with development. I fixed one minor bug recently, but since you rewrite all the code, I did not make a PR yet.
from eucwatch.
I can see why you didn't want it to be your side, you use a mac.
it happens some times to mac's too :)
It could be cookies related, maybe try cleaning the github storage cookies, it may work.
from eucwatch.
Anyway, the problem is (hopefully) solved now. I want to thank you for really instant responses. This level of support is amazing. Maybe one day I could help with development. I fixed one minor bug recently, but since you rewrite all the code, I did not make a PR yet.
Thanks as well, it was nice trying to find the problem, clearly you had knowledge so something was happening. Yes the next version will solve alot and change some too, but I wil be happy if you want to help after I release it.
from eucwatch.
So the answer to original question is: it failed due to incorrect sensor types specified. And new question arises: why the dialog is silently closed on my Chrome while it happens on another.
this could be importand, the loader tries to get the acc type from the watch flash, a new change to support the new version, updates will no longer need the user to remember the type etc. But if it fails it reverts to undefined, maybe your browser does not like that? I will fix it to a string in any case, thanks.
from eucwatch.
I didn't say it is not on my side, but I cleared/removed all cookies for github sites. Actually, the problem might be that I did initial install before that, and Chrome did not ask for sensor types this time and saved wrong config. When I flashed another p8 a month ago, it DID ask for it. I did not change the system significantly, but might have Chrome updated. Still, my macOS wants for reinstall since 2014, so I should give it such pleasure one day.
It's another matter why it happened, but I am glad it was finally resolved with the proper way (automatic install, not a manual app installation).
I was going to add some features to old version for myself like PWM vibration warning (similarly to WheelLog). I would be glad to contribute some thing (at least, ideas or some code) later. Thank you for great work and very interesting gadget firmware.
from eucwatch.
yes, It could be the undefined variables, the next loader version is using a different procedure.
are you using it on a kingsong wheel?
If so try this loader from the chrome that failed and let me know if it was ok if you like.
https://enaon.github.io/eucWatch/p8-testing
ps, the accel will not work on sca
from eucwatch.
Sorry, I went to a ride yesterday, so quickly disappeared.
No, I use it with Gotway/Begode (Tesla V2, MSuperX).
Also that watch was a gift, so I have no the 2nd one right now for testing. Maybe I should order a new one as a test device/replacement.
from eucwatch.
The issue was resolved for now, so closing it.
from eucwatch.
Related Issues (19)
- P8: Double tap too sensitive HOT 7
- P8 black screen of death? HOT 1
- P22B touch not working HOT 2
- Bridge EUC world Overvoltage Alarm HOT 1
- Gadgetbridge alarms HOT 1
- PineTime and howto HOT 11
- sensor p22 HOT 4
- InMoution V12 support HOT 1
- Bricked P8 HOT 2
- Some notes to help the frustrated HOT 1
- Question to enaon | InMotion Support for custom App HOT 1
- Kingsong s22 and begode master HOT 3
- P22(D) pinout
- eucWorld.js HOT 3
- P8 Bluetooth Antenna Information? HOT 5
- how to connect the Gadgetbridge app HOT 3
- Begode mten3 Voltage is wrong HOT 2
- P22 Drivers HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eucwatch.