Arduino dock setup not working



  • Hi all,

    I attempted to set up my Omega to use the Arduino dock for the first time last night. I got the Omega connected to my WiFi, i updated the firmware, and then I was following the steps in the initial setup guide for the Arduino dock. In the serial terminal, I had no problem running opkg update, but it kept saying could not install when i ran opkg install arduino-dock. Has anyone else run into this/gotten around this? Thanks!


  • administrators

    @Peter-Natale Which version of the firmware are you running?
    Can you post the output of the opkg update and opkg install arduino-dock commands?



  • @Lazar-Demin I actually managed to get <code>opkg install arduino-dock</code> to work. My problem now is that when i try to upload a sketch, it keeps saying <code>ash: merge-sketch-with-bootloader.lua: not found</code> repeatedly and prompts me for my password again.

    The results of resetting the Arduino dock and then running i2cdetect -y 0 results in just lines of blanks

    EDIT: I have also attempted to flash the bootloader via the ICSP header method, and it also results in a solid LED on the Arduino dock and rows of blanks when running i2cdetect -y 0


  • administrators

    @Peter-Natale
    When the bootloader is flashed for the first time, the Omega should not be detecting an I2C device with an address of 0x08. As you mentioned, the LED on the Arduino will be on (it's actually flickering really fast), meaning that the Arduino Dock is in the bootloader mode, ready to accept an incoming sketch.

    Uploading a sketch at this point will be successful. As mentioned in the Using the Arduino Dock article on the wiki:

    Note: An orange message saying ash: merge-sketch-with-bootloader.lua: not found may appear in the info screen. You can safely ignore this message, it does not affect the sketch upload.

    To verify the sketch has indeed been uploaded, try enabling verbose compilation and upload in the Arduino IDE settings. The output should be pretty clear about whether the flashing was successful or not.

    The 0x08 I2C device address will show up only if the sketch you upload contains the Onion Arduino Library. This allows the Omega to put the ATmega chip into reset via I2C, allowing for a new sketch to be flashed.

    With the new Arduino Dock R2, this process will be a LOT more straight-forward!!! :)



  • @Lazar-Demin I noticed that the wiki article mentioned that the message shouldn't be an issue, but it keeps prompting me for the password. I hadn't changed it from the default password, so I would enter the default and then it would just ask me again to enter my password. I also tried pushing the MCU Reset button after entering the password, but it still just prompted me again for it.



  • Also, I can't wait for my Omega2 and the Arduino Dock R2! I'm very excited!


  • administrators

    @Peter-Natale Can you try flashing a sketch using the Omega? That should work!



  • @Lazar-Demin --
    root@Omega-0C8B:~# sh /usr/bin/arduino-dock flash blink2.ino.hex

    Flashing application 'blink2.ino.hex' ...
    Error: Write failed
    failed to switch to bootloader (invalid address?): No such device or address
    Done



  • @Peter-Natale can you check if you can see on the Omega:
    device : /dev/i2c-0 (address: 0x29)

    Did you try this with the MCU_RESET button?



  • @Luciano-S I didn't have much time to try it, but I did notice that the LED on my arduino dock is not turning on.


  • administrators

    @Peter-Natale Looks like the ATmega isn't responding to being put into Reset via I2C. This is most likely because the last sketch that was flashed did not include the Onion Library that sets up the I2C reset method.

    From the Using the Arduino Dock article on the wiki:

    (If your previous sketch did not include the Onion Arduino Library you will have to press the MCU_RESET button on the Arduino Dock just before pressing Enter for the arduino-dock command)

    As @Luciano-S mentioned, try using the MCU_RESET button before flashing the sketch.



  • Huzzah! It works now! I think a problem I was having was that i was using an older version of the Arduino IDE, and then I upgraded to 1.6.10 which was giving me issues regarding the uno.upload.via_ssh=true line. But now that I installed 1.6.6, I got it to upload normally.



  • After a whole day trying my solution for the following ERROR

    failed to switch to bootloader (invalid address?): No such device or address
    This occurred via the Arduino IDE and using the Onion Command Line

    My hardware is Original Onion Omega + Original Arduino Dock
    (Any communication with Onion results in "We suggest you upgrade to Onion2")

    Anyway I eventually found a very concise instructions @ [https://onioniot.github.io/wiki/Tutorials/Arduino-Dock/Initial-Setup](link url)

    It would appear that it must be configured by burning a new bootloader the very first time.
    The second method worked for me i.e. Using the Omega + Expansion Dock with the Arduino Dock ICSP Header

    And after that I was able to use the Arduino IDE to program the Arduino Dock.
    Now the question is can I communicate via the Onion and the Arduino Dock i.e can a program on the Onion use the Arduino I/O Pins?
    And can the two communicate via Serial?



  • @Brian-Moreau

    Q: Onion (LEDE/OpenWRT) <-> Arduino
    A: Use Firmata.


Log in to reply
 

Looks like your connection to Community was lost, please wait while we try to reconnect.