# Use Website to updated deployed Devices

**URL:** <https://community.particle.io/t/use-website-to-updated-deployed-devices/44784>\
**Category:** Hardware\
**Created:** [October 25, 2018, 7:29pm UTC](https://community.particle.io/t/use-website-to-updated-deployed-devices/44784 "2018-10-25T19:29:19Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![wesner0019](https://avatars.discourse-cdn.com/v4/letter/w/0ea827/32.png) [@wesner0019](https://community.particle.io/u/wesner0019)\
**Post date:** [October 25, 2018, 7:29pm UTC](https://community.particle.io/t/use-website-to-updated-deployed-devices/44784/1 "2018-10-25T19:29:19Z")

</div>

It would be awesome if there was a way to host our latest firmware on a website and then instruct our customers to plug their device into thier computer, go to a certain website, and then click update. Then the device could be flashed with the latest firmwae and Device OS.

Do you think something like this could be made?

---

<div class="post-metadata">

**Author:** ![Moors7](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/moors7/32/588_2.png) [@Moors7](https://community.particle.io/u/Moors7)\
**Post date:** [October 25, 2018, 8:44pm UTC](https://community.particle.io/t/use-website-to-updated-deployed-devices/44784/2 "2018-10-25T20:44:47Z")

</div>

Seeing as the API is open, and flashing endpoints are available, I wouldn't know why not. You just need to be able to match the customer with their device, and after having confirmed, make the right calls.

> [@wesner0019](#):
>
> plug their device into thier computer

Does it _have_ to be over the wire? That would make things more difficult, rather than easier, I think.

---

<div class="post-metadata">

**Author:** ![armor](https://sea2.discourse-cdn.com/flex026/user_avatar/community.particle.io/armor/32/18398_2.png) [@armor](https://community.particle.io/u/armor)\
**Post date:** [October 26, 2018, 10:23am UTC](https://community.particle.io/t/use-website-to-updated-deployed-devices/44784/3 "2018-10-26T10:23:55Z")

</div>

Another approach is to use the Particle Console, build your devices as products and use all that existing infrastructure to download OTA new firmware. If you want a customer pull driven approach then on your website all you would need to do is have the customer flag that they want a software update to happen - this could then call a cloud function on devices to call `System.enableUpdates();` The default setting on restart would be `System.disableUpdates()`. There are other threads where the issues of managing the update process (so as to not interrupt a critical control process) and also ensuring the device updates (because the auto update process is triggered when the connection session is renewed). Also, have a look at the IoT Rules Engine - there is a tutorial there about using the Rules Engine to manage this sort of scenario.
