Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Jun 29 14:32
    nrobinson2000 closed #44
  • Jun 29 14:32
    nrobinson2000 closed #31
  • Jun 29 14:31
    nrobinson2000 closed #46
  • Jun 29 02:00
    shivams commented #46
  • Jun 28 18:01
    nrobinson2000 commented #46
  • Jun 28 17:18
    shivams opened #46
  • Jun 21 04:21

    nrobinson2000 on master

    Update README.md (compare)

  • Jun 21 04:11
    nrobinson2000 closed #32
  • Jun 21 04:10
    nrobinson2000 closed #40
  • Jun 21 04:10
    nrobinson2000 closed #37
  • Jun 21 04:09
    nrobinson2000 commented #44
  • Jun 21 04:08
    nrobinson2000 closed #7
  • Jun 21 04:07
    nrobinson2000 closed #17
  • Jun 21 04:07
    nrobinson2000 closed #18
  • Jun 21 04:07
    nrobinson2000 closed #24
  • Jun 21 04:06
    nrobinson2000 commented #31
  • Jan 20 2019 03:23
    nrobinson2000 commented #44
  • Jan 05 2019 04:37
    nrobinson2000 deleted #29
  • Jul 21 2018 18:34

    nrobinson2000 on get

    [skip ci] at 14:34 of 2018-07-21 (compare)

  • Jul 21 2018 18:33

    nrobinson2000 on get

    [skip ci] at 14:33 of 2018-07-21 (compare)

Thorsten von Eicken
@tve
/home/tve/.po-util/bin/gcc-arm-embedded/gcc-arm-none-eabi-5_3-2016q1/bin/../lib/gcc/arm-none-eabi/5.
3.1/../../../../arm-none-eabi/bin/ld: cannot open linker script file module_user_memory.ld: No such
file or directory
Nathan Robinson
@nrobinson2000
What about po xenon flash-beta ?
Thorsten von Eicken
@tve
tve@soumak /h/s/g/p/gps-test> po xenon flash-beta

          ______    ______
         /      \  /      \    Building firmware...
        /██████  |/██████  |
        ██ |  ██ |██ |  ██ |   Build Parameters:
        ██ |__██ |██ \__██ |     xenon
        ██    ██/ ██    ██/      gps-test
        ███████/   ██████/
        ██ |
        ██ |
        ██/  po xenon build gps-test

/home/tve/.po-util/bin/gcc-arm-embedded/gcc-arm-none-eabi-5_3-2016q1/bin/../lib/gcc/arm-none-eabi/5.3.1/../../../../arm-none-eabi/bin/ld: cannot open linker script file module_user_memory.ld: No such
file or directory
collect2: error: ld returned 1 exit status
make[2]: *** [../../../build/module.mk:235: /home/src/goobies/particle/gps-test/target/gps-test.elf] Error 1
make[1]: *** [../build/recurse.mk:12: modules/xenon/user-part] Error 2
make: *** [/home/tve/.po-util/src/particle.mk:46: flash-user] Error 2

Building firmware failed! DFU closed.


No Particle Devices in DFU mode found!
same linker error
Nathan Robinson
@nrobinson2000
Can you try cleaning? po xenon clean-beta
Thorsten von Eicken
@tve
same issue
tve@soumak /h/s/g/p/gps-test> po xenon clean-beta

Cleaning firmware...
Sucessfully cleaned.

tve@soumak /h/s/g/p/gps-test> po xenon flash-beta

          ______    ______
         /      \  /      \    Building firmware...
        /██████  |/██████  |
        ██ |  ██ |██ |  ██ |   Build Parameters:
        ██ |__██ |██ \__██ |     xenon
        ██    ██/ ██    ██/      gps-test
        ███████/   ██████/
        ██ |
        ██ |
        ██/  po xenon build gps-test

/home/tve/.po-util/bin/gcc-arm-embedded/gcc-arm-none-eabi-5_3-2016q1/bin/../lib/gcc/arm-none-eabi/5.3.1/../../../../arm-none-eabi/bin/ld: cannot open linker script file module_user_memory.ld: No such
file or directory
collect2: error: ld returned 1 exit status
make[2]: *** [../../../build/module.mk:235: /home/src/goobies/particle/gps-test/target/gps-test.elf] Error 1
make[1]: *** [../build/recurse.mk:12: modules/xenon/user-part] Error 2
make: *** [/home/tve/.po-util/src/particle.mk:46: flash-user] Error 2

Building firmware failed! DFU closed.


No Particle Devices in DFU mode found!
Thorsten von Eicken
@tve
In po-common, line 1776, there is no "$1" unlike on line 1754 (store_build_parameters-beta "$1"), that doesn't solve it though
Thorsten von Eicken
@tve
It looks to me like adding a prebuild prereq to the program-dfu target in the particle build/module.mk solves the linking issue. Line 122 :
program-dfu: prebuild $(MAKE_DEPENDENCIES) $(TARGET_BASE).dfu
should probablyu also have a postbuild prereq...
the all target used by compile-beta says:
all: prebuild $(MAKE_DEPENDENCIES) $(TARGET) postbuild
and gittter.im is having a hiccup...
The reason UI have to explicitly run po dfu open -d /dev/ttyACM0 is:
tve@soumak ~> dfu-util -l
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

tve@soumak ~>
Nathan Robinson
@nrobinson2000
Which version of gcc-arm are you using?
arm-none-eabi-gcc --version
Thorsten von Eicken
@tve
I removed all globally installed arm-none-eabi-gcc
tve@soumak ~> ~/.po-util/bin/gcc-arm-embedded/gcc-arm-none-eabi-5_3-2016q1/bin/arm-none-eabi-gcc --version
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 5.3.1 20160307 (release) [ARM/embedded-5-branch revision 234589]
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
(I'm not sure everything I typed into gitterm.im came across, the following line shows up in red for me, so I wonder whether it hit an error:
Yup, now I'm successful with po dfu open -d /dev/ttyACM0; po xenon flash-beta
)
Nathan Robinson
@nrobinson2000
dfu-util -l
This would only list the xenon when it's in dfu mode, which is expected.
po xenon flash-beta should automatically put the xenon into dfu for you as long as the xenon is the only /dev/ttyACM
Thorsten von Eicken
@tve
OK, but if I look in po-common, for dfu_open() the only condition that does anything without a -d is if the device is listed by dfu-util -l. I don't see how it can do anything useful unless the -d options is specified...
Where in the code does it look for /dev/ACM* ?
What do you think about the prebuild and postbuild prerequisites missing on program-dfu?
Nathan Robinson
@nrobinson2000
In po-linux line 432 it tries to find /dev/ACM*
Thorsten von Eicken
@tve
I see, I have a /dev/ttyACM1 that is something else and that messes it up.
Nathan Robinson
@nrobinson2000
Yeah
Thorsten von Eicken
@tve
Have you considered:
tve@soumak /h/s/g/p/gps-test> ls /dev/serial/by-id
usb-FTDI_FT232R_USB_UART_A1014JRC-if00-port0@
usb-Linux_4.4.13-ntc-mlc_with_musb-hdrc_CDC_Composite_Gadget-if02@
usb-Particle_Xenon_CDC_Mode_e00fce68a8f4dc1358b533f5-if00@
[tve@soumak ~]$ for modem in /dev/serial/by-id/usb-Particle*; do echo $modem; done
/dev/serial/by-id/usb-Particle_Xenon_CDC_Mode_e00fce68a8f4dc1358b533f5-if00
so you could do:
for modem in /dev/ttyACM* /dev/serial/by-id/usb-Particle*; do
I made that change locally and happiness ensues :-)
Uhh, not so fast, bash uglyness if that doesn't exist...
Nathan Robinson
@nrobinson2000
I did not know about /dev/serial/by-id/
Thorsten von Eicken
@tve

To catch ttyACM and by-id you need something along the lines of

[tve@soumak ~]$ for modem in /dev/ttyACM* /dev/serial/by-id/usb-Particle* foobar*; do [ -e $modem ]
&& echo modem is $modem; done
modem is /dev/ttyACM0
modem is /dev/ttyACM1
modem is /dev/serial/by-id/usb-Particle_Xenon_CDC_Mode_e00fce68a8f4dc1358b533f5-if00
[tve@soumak ~]$

(I added the foobar* to show that it works if there are no files matching the wildcard)

I now have:
for modem in /dev/ttyACM* /dev/serial/by-id/usb-Particle*; do
    if [ -e "$modem" ]; then
        MODEM="$modem"
        MODEM_DUO="$modem"
    fi
done
echo MODEM is set to $MODEM
dinner time here, thanks for your help!
Thorsten von Eicken
@tve
Kevin McQuown
@iitgrad
how do I get po-util to know about the mesh Gen 3 products. I'm getting ./build/platform-id.mk:72: *** "Unknown platform: xenon. Stop. when doing a build
Thorsten von Eicken
@tve
po boron flash-beta
Nathan Robinson
@nrobinson2000
Have you done the following?
po config v0.8.0-rc.27
po setup-mesh
Thorsten von Eicken
@tve
quick Q: are those two commands global or per application directory?
Nathan Robinson
@nrobinson2000
Global
I'd like to make a per application option in the future
Jeremy Ellis
@hpssjellis
Does po have knowledge of the latest releases? is the newest one called po config v1.1.0-rc.1
Nathan Robinson
@nrobinson2000
Yes. You may need to do po update first so it can grab the latest releases.
Jeremy Ellis
@hpssjellis

Hi Nathan: I am installing po on a cloud Docker environment using this Dockerfile command:

RUN apt-get update                                                                                               \
    && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends dbus gcc g++ automake           \
               libtool lsb-release make  clang-format-6.0   libdbus-1-dev libboost-dev libreadline-dev           \                                     
               autoconf autoconf-archive  software-properties-common bsdtar                                      \
               sudo curl git gzip python gnupg2 software-properties-common build-essential libarchive-zip-perl   \
    && apt-get update                                                   \
    && /bin/bash -c "bash <(curl -sL https://particle.io/install-cli)"  \
    && /bin/bash -c "bash <(curl -sL get.po-util.com)"                  \
    && po                                             \
    && chown -R gitpod:gitpod /home/gitpod/.po-util   \
    && chmod -R 777 /home/gitpod/.po-util

and building using these commands

po init argon myProjectName
cd myProjectName

po config mesh-develop

po setup-mesh

MODULAR=n po argon build

but I get this error, which is not a fault of Po I simply haven't installed a needed dependency, just not sure what it would be.


mbedtls/library/oid.c:558:31: error: 'oid_cipher_alg' defined but not used [-Werror=unused-const-variable=]
 static const oid_cipher_alg_t oid_cipher_alg[] =
                               ^~~~~~~~~~~~~~
mbedtls/library/oid.c:295:39: error: 'oid_ext_key_usage' defined but not used [-Werror=unused-const-variable=]
 static const mbedtls_oid_descriptor_t oid_ext_key_usage[] =
                                       ^~~~~~~~~~~~~~~~~
mbedtls/library/oid.c:167:30: error: 'oid_x520_attr_type' defined but not used [-Werror=unused-const-variable=]
 static const oid_x520_attr_t oid_x520_attr_type[] =
                              ^~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[2]: *** [../../build/module.mk:272: ../../build/target/mbedtls/platform-12/./mbedtls/library/oid.o] Error 1
make[1]: *** [../build/recurse.mk:12: third_party/mbedtls] Error 2
make: *** [../build/recurse.mk:12: crypto] Error 2
Nathan Robinson
@nrobinson2000

Does installing these packages help?:

sudo apt-get install gcc-multilib libncurses5:i386

https://docs.particle.io/support/particle-tools-faq/workbench/#linux-tips

In the future, I'd like to reduce the overhead of po-util a lot by having it rely more on components from particle-cli and Workbench.
Jeremy Ellis
@hpssjellis
Thanks for the suggestions. I will try them out. My Dockerfile actually installs for Openthread and po so it has a fair bit of overhead. Actually takes a fair bit of time to load.
Jeremy Ellis
@hpssjellis
My docker build can't find libncurses5:i386 I will look into a solution. For openthread I also could not install libreadline and libglib2.0-dev if that is relevant
Jeremy Ellis
@hpssjellis
Looks like particle doesn't totally hate me. They want to see my openthread methods https://community.particle.io/t/using-particle-mesh-devices-with-the-openthread-border-router/46189/68
Nathan Robinson
@nrobinson2000
I saw your post earlier today. I'm pretty sure Brandon is going to try replicating your setup in Workbench.
Jeremy Ellis
@hpssjellis
image.png