Updated usb serial console (markdown)

Erwin Ried 2024-01-11 16:06:14 +01:00
parent 8d6a8f7e9d
commit 8b60cfc315

@ -1,47 +1,38 @@
# USB Serial Console # USB Serial Console
The PortaPack Mayhem firmware exposes a serial console via USB when connected to a Computer. The PortaPack Mayhem firmware exposes a serial console via USB when connected to a computer.
https://hackrf.app/ ![image](https://github.com/portapack-mayhem/mayhem-firmware/assets/1091420/2caf6ccf-0ee2-4bad-8a19-a140ee856c84)
![291070616-9817bf9d-bd6a-4e8d-b7c9-5074e9965f11](https://github.com/eried/portapack-mayhem/assets/13151053/f00a2a55-0116-4390-b5f4-cb11c4fb262a) ![image](https://github.com/portapack-mayhem/mayhem-firmware/assets/1091420/ca238acd-f09e-4153-a96a-36a48ff92428)
![image](https://github.com/eried/portapack-mayhem/assets/4393979/21bdbb62-0534-40c0-89f0-fda8acfd2ebe)
Any serial terminal client can be used to connect like PuTTY, minicom, screen, etc. There are even web based ones (Chrome&Edge, no Firefox): https://www.serialterminal.com/ or use https://hackrf.app/
Any serial terminal client can be used to connect like PuTTY, minicom, screen, [HTerm](https://www.der-hammer.info/). There are even web based ones (Chrome&Edge, no Firefox): https://www.serialterminal.com/ or **https://hackrf.app/**
The terminal exposes the ChibiOS/RT Shell: The terminal exposes the ChibiOS/RT Shell:
![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/0642485a-ff13-4386-a1f4-4516d654d8dc) ![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/0642485a-ff13-4386-a1f4-4516d654d8dc)
# Available Commands # Available Commands
* help * `help`: lists all available commands.
* lists all available commands.
* ![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/80e42df3-3db7-4804-bdd7-5e33015781ee) ![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/80e42df3-3db7-4804-bdd7-5e33015781ee)
* info * `info`: shows the ChibiOS/RT system details.
* shows the ChibiOS/RT system details. * `systime`: shows the uptime in ms.
* systime * `reboot`: reboots the PortaPack. This will also work on devices where the reset button is not working.
* shows the uptime in ms. * `dfu`: reboots the PortaPack into DFU firmware upgrade mode.
* reboot * `hackrf`: Starts the original HackHF firmware to use the PortaPack as HackHF.
* reboots the PortaPack. This will also work on devices where the reset button is not working. * `sd_over_usb`: Starts the [SD Over USB](SD-Over-USB) mode.
* dfu * `flash`: This is the [Flash Utility](Flash-Utility).
* reboots the PortaPack into DFU firmware upgrade mode. * `screenshot`: Takes a screenshot.
* hackrf
* Starts the original hackrf firmware to use the PortaPack as hackrf. ![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/1c5278a9-3977-4bf7-8043-44cc524e8b83)
* sd_over_usb * `write_memory`: Writes arbitrary memory locations.
* Starts the [SD Over USB](SD-Over-USB) mode.
* flash ![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/6d655d31-8de4-4c70-aa30-e0540583c236)
* This is the [Flash Utility](Flash-Utility). * `read_memory`: Reads arbitrary memory locations.
* screenshot * `button`: Simulates a button press
* Takes a screenshot.
* ![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/1c5278a9-3977-4bf7-8043-44cc524e8b83)
* write_memory
* Writes arbitrary memory locations.
* ![grafik](https://github.com/eried/portapack-mayhem/assets/13151053/6d655d31-8de4-4c70-aa30-e0540583c236)
* read_memory
* Reads arbitrary memory locations.
* button
* Simulates a button press.
* button 1: Right * button 1: Right
* button 2: Left * button 2: Left
* button 3: Down * button 3: Down
@ -50,26 +41,21 @@ The terminal exposes the ChibiOS/RT Shell:
* button 6: DFU * button 6: DFU
* button 7: Rotary Left * button 7: Rotary Left
* button 8: Rotary Right * button 8: Rotary Right
* ls * `ls`: Lists files and directories.
* Lists files and directories. * `mkdir`: Creates a directory.
* mkdir * `unlink`: Deletes a file.
* unlink * `fopen`: Opens a file for reading and modification.
* Deletes a file. > [!NOTE]
* fopen > The current position will be set to the end of the file. Use `fseek 0` to move to the start of the file.
* Opens a file for reading and modification. * `fseek`: Sets the current position inside the currently opened file.
* Note: The current position will be set to the end of the file. Use "fseek 0" to move to the start of the file. * `fclose`: Closes the currently opened file.
* fseek * `ftruncate`: removes all content in the file behind the current position.
* Sets the current position inside the currently opened file. * `ftell`: shows the current position is the file.
* fclose * `fread`: Reads n bytes from the currently opened file.
* Closes the currently opened file. > [!TIP]
* ftruncate > there is a faster binary read option: `frb`
* removes all content in the file behind the current position. * `fwrite`: Writes bytes from the currently opened file.
* ftell
* shows the current position is the file. ![291070841-9e4ecef9-89bb-4a47-be0c-710384a84a22](https://github.com/eried/portapack-mayhem/assets/13151053/b7156f62-537a-4a7b-9d76-0c197992a040)
* fread > [!TIP]
* Reads n bytes from the currently opened file. > there is a faster binary write option: `frw`
* there is a faster binary read option: frb
* fwrite
* Writes bytes from the currently opened file.
* ![291070841-9e4ecef9-89bb-4a47-be0c-710384a84a22](https://github.com/eried/portapack-mayhem/assets/13151053/b7156f62-537a-4a7b-9d76-0c197992a040)
* there is a faster binary write option: frw