Close

System Tools

A project log for Pico Picow

A tiny handheld dev console, with a 12 button keypad, Pi Pico W inside, and 128x64 OLED.

gordonGordon 9 hours ago0 Comments

I discovered that I didn't lose as much progress as I thought.

Currently every feature that is available in the PC developement version is available and working on device.

I am trying to figure out a good way to keep the interpreter separate from the devices code. In the sense that routines for handling the devices wifi connection or printing a line out to the OLED should be accessible from the interpreter while running on the device, but not while running it on PC.

I decided to create an option from the device commandline to type 

"s.<system command>"

Currently all I have implimented is a command line utility on device that can:

  1. [ s.wa] Create wifi AP, using a hard coded ssid and password or a new one
  2. [ s.ws ] scan for wifi networks. running this cmd saves a list of available networks
  3. [ s.wl ] view the list of networks saved in last scan
  4. [ s.wc<n> ] connect to the network of number specified from networks in list, this will prompt for a password. if command is run without a number, it will try to connect to the last saved network running [ s.w ] will do the same thing as   [ s.wc]
  5. [ s.wx ] turns off wifi, whether AP or Client, it goes off. I have it set up so only AP or client can be run at same time.

I will later impliment a save file on flash that will have different saved settings including saved networks and passwords. when running [ s.w ] in that case it will automatically scan and see if there is a saved network that matches, then connect.

I have also created a new function specific to the Pico Picow for easier printing of lines and getting input from anywhere in the devices code. While running the interpreter, the device is basically always stuck in an input mode. But I realized these system tools will need the ability for input that can be accessed out of the interpreters command line.

I really want to get back to adding functions for the interpreter, but wanted to make sure 100% that it was all going to work on the device okay before I went any further. So far so good. I have a better backup system I am using right now too.

Discussions