Code Monkey home page Code Monkey logo

Comments (35)

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

but also have no idea how to update the runtime to the latest version on p8.

For updating the espruino image, use daflasher:

  1. Scan for the watch using daflasher, select it.
  2. Press the "Start Bootloader" button. The button will turn gray.
  3. Go back/kill daflasher.
  4. Scan for the watch using daflasher, select the dfutarg device, this is the P8 now.
  5. Select "do dfu update"
  6. Uncheck the "use nordic" and press select.
  7. choose the latest step4 espruino image
  8. after upload is finished, the watch will restart and run the scripts, done.

from eucwatch.

enaon avatar enaon commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024
>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.

enaon avatar enaon commented on June 4, 2024

it looks ok.

from eucwatch.

enaon avatar enaon commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

Do this check for me, I have an idea of what may be happening.

  1. connect from the ide
  2. press the third button on the middle, the device storage. report if it shows any files inside.
  3. type reset(); on the left side, press the side button, and then enter, so that it will restart with the button pressed.
  4. did it make a buzz?

from eucwatch.

osnwt avatar osnwt commented on June 4, 2024

Did storage erase and reset;
Storage browser: no files;
reset(); - with both button pressed or released it did not buzz.

from eucwatch.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

Yes, I can upload files to Storage. I can then view it using browser.

from eucwatch.

osnwt avatar osnwt commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

Well, flashed the file you linked (2v08.5 (c) 2019). Connected IDE. No files in the Storage.

from eucwatch.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

enaon avatar enaon commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

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.

osnwt avatar osnwt commented on June 4, 2024

The issue was resolved for now, so closing it.

from eucwatch.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.