1. Firmware update LTE modem https://docs.pycom.io/updatefirmware/ltemodem/
2. Install toit https://docs.toit.io/getstarted/installation
3. Connect P2 to GND
4. Connect Fipy via USB and check what port you device is on by typing `ls /dev/` in the terminal
5. Run the following command:
```bash=
toit serial reinstall \
-p model.cellular.enabled=1 \
-p model.cellular.tx=33 \
-p model.cellular.rx=34 \
-p model.cellular.rts=32 \
-p model.cellular.cts=35 \
-p model.cellular.monarch=1 \
-p cellular.apn=iot.1nce.net \
--port=/dev/cu.usbmodemPy6d3a601
```
6. When toit is trying to connect to the device, press on the reset button on the pycom device.
5. Remove the jumper wire between P2 and GND, and restart the device by pressing on the reset button on the pycom device.
6. Install screen if you don’t have it and change the port and run the command below. You can also use VS code with the pymakr extension to listen to the device. Run the command below in the terminal.
```bash=
screen /dev/cu.usbmodemPy6d3a601 115200
```
8. Wait for it to connect
9. Copy the hardware ID (aka identity) and go to toit.io

Or use PuTTY for Windows

You can find your device under `Ports` in the `Device Manager` in windows. Once the port is known, type it under `Serial line` in PuTTY (You need to select `Serial` first) and click `Open`. A terminal window will open, as shown below) and you can there see all the output from the device.

:::info
PuTTY auto-scrolls, which can be very annoying. You can disable this by following this 3-step guide: https://shaarli.callmematthi.eu/?ukskig
:::
9. Connect P2 to GND again and reset the device using the black button on the device.
10. Navigate to `Serial` in the left menu and click on `Ready`, choose the USB port of the Pycom device and click on `Connect`.
11. Once connected, click on `Claim` to claim the device, and in the hardware field, paste the hardware ID we copied earlier.
12. Now you should see you device under devices in toit with the “healthy” status.
13. To deploy apps to your device, install Visual Studio Code and the toit extension.
14. Create a new folder and open it in VS code.
15. Create a file and name it time.toit and paste the following code in it:
```python
main:
time := Time.now.local
print "Time: $(%02d time.h):$(%02d time.m)"
print "Date: $(%04d time.year)-$(%02d time.month)-$(%02d time.day)"
```
16. Run the code in VS code

17. Now in the Device logs in toit.io, you see

18. Now we need to Make this an app, so let’s create a file and name it time.yaml and write the following
```yaml
# Description of an app specification file using YAML syntax.
name: TimeApp
entrypoint: time.toit
triggers:
on_boot: true
on_install: false
on_interval: 30s
```
18. More about how to use yaml here: https://docs.toit.io/platform/apps/appspec
19. now save and hit deploy in VS Code

20. Your App should now execute every 10 seconds.
21. Finally, add connectivity options for the device in toit.io (`Devices->your Device->Configuration->Connection`). For cellular, only provide the apn, and leave the operator field empty (they change from time to time)..
Screenshot
