Avatar for jlawson

jlawson

Member since Sep 2013 • Last active Jul 2019
  • 3 conversations
  • 29 comments

Most recent activity

  • in Pico / Wifi / Original Espruino
    Avatar for jlawson

    @Robin Thanks for the pointers. I did have a bit of trouble with that bit.

  • in Pico / Wifi / Original Espruino
    Avatar for jlawson

    @Gordon I finally got time to implement your suggestions and the results were all consistent with a clock that is running way too fast so I tried it on a second Espruino board and the code worked fine.
    No errors on load() except the occasional I2C bus confusion from the previous

    I think this particular board may just require a longer delay for the LSE clock to settle down as it works once powered and then the reset button pressed.

    This is probably due to borderline capacitance on the 32.768KHz crystal circuit (which I had added).

    So, it appears that resetting the time and then immediately creating intervals does work.

    Thanks,
    Jamie

  • in Pico / Wifi / Original Espruino
    Avatar for jlawson

    Hi,
    The following (much cut down) code works fine when uploaded from the IDE but after using save() and power cycling it appears as if setInterval has no effect. The LCD and clock then update as quickly as possible (the clock goes through a day in about 6 seconds).

    On power-up or after using load() it exhibits this problem.
    However, if I then press the physical reset button or use E.reboot() from the IDE it will run properly.

    I may just be that I'm not setting things up properly for using save() with setInterval (I rarely use save).

    This is on an original Espruino board with added 32.168kHz crystal.
    Firmware is version 2v03.21 but with some fonts compiled in.

    Any ideas?
    Thanks,
    Jamie

    let data_rec = Array(7)
    let lcd = undefined
    let Tmin = undefined
    let Tmax = undefined
    
    function LCD_init(spi) {
      let lcd = require("PCD8544").connect(spi,A6,B0,B1,­ function() {
        lcd.clear()
        lcd.flip()
        }
       )
      return lcd
    }
    
    function LCD_update() {
      lcd.clear()
      let d = new Date().toISOString()
      // split the datetime string to fit the screen
      lcd.drawString(d.split('T')[0].replace('­-','.').replace('-','.'),0,0)
      lcd.drawString(d.split('T')[1].split('.'­)[0],50,0)
      // update display with data
      lcd.drawString(data_rec[6],20,20)
      lcd.flip()
    }
    
    function data_update() {
      // updates the data_rec with data from other sources
      data_rec[6]=analogRead(C1)*3.3*3/2
    }
    
    function onInit() {
      clearInterval()
      clearWatch()
    
      // initialize the rtc from the DS3231
      I2C1.setup({sda:B9,scl:B8})
      rtc = require("DS3231_J").connect(I2C1)
      let t = rtc.timeArray()
      setTime((new Date(t[0],t[1]-1,t[2],t[3],t[4],t[5],0).­getTime())/1000)
      data_rec = [new Date(), 0,0, 0.0, 0.0, 'K', 1, 0.0]
    
      // initialize the LCD
      SPI1.setup({sck:A5, mosi:A7})
      lcd = LCD_init(SPI1)
      setTimeout(function() {
        setInterval(LCD_update, 500)
        }, 1000)
    
      // timeout used here to allow for the initial data reading to complete
      setTimeout(function () {setInterval(data_update,1000)}, 1500)
    }
    
  • in General
    Avatar for jlawson

    Ordered. It will be available in Canada on the same date as the UK release.

  • in Puck.js, Pixl.js and MDBT42
    Avatar for jlawson

    @Gordon "wrong code received" came from the CSR software off the CD that the dongle came with. I have removed all that and it now works very well using the built in Bluetooth.

  • in Puck.js, Pixl.js and MDBT42
    Avatar for jlawson

    FWIW I tried a Win 10 64-bit laptop with a built in Bluetooth radio (Intel) and it didn't see the Puck. So I disabled the built in Bluetooth radio and tried a CSR 4.0 dongle. The CSR saw the Puck but would not work past that point ("wrong code received").
    I then removed the CSR drivers and re-enabled the built in Bluetooth radio and the Puck still could not be found but it now it does show up in Device Manager and the standalone web IDE just works fine.

  • in General
    Avatar for jlawson

    No problems encountered.

  • in News
    Avatar for jlawson

    @Gordon - the link is broken but I have rebuilt the latest pulled version here.

    Works on three Espruino 1v3 with the LSE running and also with the finger stopped LSE.
    These boards all have a 32K crystal but I will try it on a bare 1v3 later.
    Thanks again.

  • in News
    Avatar for jlawson

    With 1v87 it appears that holding my finger on the crystal leads actually STOPS the LSE from starting up, possibly because it does not detect the crystal.

    With 1v88 it seems to detect the crystal and attempts to use the LSE even though it hasn't started up.

    Checked with peek32(0x40021020), RCC_BDCR register, after reset.

Actions