Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums



(Advanced Search)

Forum Statistics
» Members: 30,266
» Latest member: Laurose
» Forum threads: 16,393
» Forum posts: 117,649

Full Statistics

Latest Threads
Booting Issues
Forum: PineNote Software
Last Post: vlagged
10 hours ago
» Replies: 25
» Views: 25,912
Alpha One - no connectivi...
Forum: Getting Started
Last Post: Dabdarklighter
Yesterday, 03:51 PM
» Replies: 1
» Views: 1,093
Article: The Advantages o...
Forum: General
Last Post: zetabeta
10-20-2026, 02:38 PM
» Replies: 2
» Views: 206
Star64 Irradium (based on...
Forum: Getting Started
Last Post: mara
10-19-2026, 12:27 PM
» Replies: 22
» Views: 21,385
StarPro64 Irradium (based...
Forum: Getting Started
Last Post: mara
10-19-2026, 10:01 AM
» Replies: 25
» Views: 16,181
Article: Will Linux phone...
Forum: General
Last Post: amosbatto
10-19-2026, 09:52 AM
» Replies: 11
» Views: 1,321
Login issues
Forum: PineTab Hardware
Last Post: Corkonian
10-17-2026, 02:34 AM
» Replies: 2
» Views: 340
Rii mini 4 keyboard and t...
Forum: PinePhone Accessories
Last Post: Flymoon
10-15-2026, 08:04 AM
» Replies: 3
» Views: 5,914
Pinephone visibly losing ...
Forum: General Discussion on PinePhone
Last Post: Flymoon
10-14-2026, 04:20 PM
» Replies: 10
» Views: 9,618
Pinecil V2 + Raspberry Pi...
Forum: General
Last Post: tllim
10-12-2026, 09:42 PM
» Replies: 1
» Views: 407

 
  Flashing not working
Posted by: yokonav - 12-28-2019, 06:49 AM - Forum: General Discussion on PineTime - Replies (13)

I am using OpenOCD with Raspberry Pi 4 to flash the PineTime dev kit. It worked for a day properly. I tested bluetooth and LCD example code using Zephyr RTOS. But all of the sudden it stopped working.
What I noticed when connecting SWD wires the LCD backlight turns on and also when putting the back cover (no SWD connection) the motor starts vibrating. Is it short-circuit? What should I check? Investing the OpenOCD debug log (below) it seems chip is not getting acknowledged.

Open On-Chip Debugger 0.10.0+dev-00985-g2dc88e14 (2019-12-25-21:43)
User : 13 9 options.c:63 configuration_output_handler(): debug_level: 4
User : 14 9 options.c:63 configuration_output_handler(): 
Debug: 15 9 options.c:187 add_default_dirs(): bindir=/usr/local/bin
Debug: 16 9 options.c:188 add_default_dirs(): pkgdatadir=/usr/local/share/openocd
Debug: 17 9 options.c:189 add_default_dirs(): exepath=/home/pi/openocd/src
Debug: 18 9 options.c:190 add_default_dirs(): bin2data=../share/openocd
Debug: 19 9 configuration.c:42 add_script_search_dir(): adding /root/.openocd
Debug: 20 9 configuration.c:42 add_script_search_dir(): adding /home/pi/openocd/src/../share/openocd/site
Debug: 21 9 configuration.c:42 add_script_search_dir(): adding /home/pi/openocd/src/../share/openocd/scripts
Debug: 22 10 configuration.c:97 find_file(): found /home/pi/swd-pi.ocd
Debug: 23 10 command.c:143 script_debug(): command - interface interface bcm2835gpio
Debug: 25 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_jtag_nums'...
Debug: 26 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_tck_num'...
Debug: 27 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_tms_num'...
Debug: 28 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_tdo_num'...
Debug: 29 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_tdi_num'...
Debug: 30 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_swd_nums'...
Debug: 31 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_swclk_num'...
Debug: 32 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_swdio_num'...
Debug: 33 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_srst_num'...
Debug: 34 10 command.c:354 register_command_handler(): registering 'bcm2835gpio_trst_num'...
Debug: 35 11 command.c:354 register_command_handler(): registering 'bcm2835gpio_speed_coeffs'...
Debug: 36 11 command.c:354 register_command_handler(): registering 'bcm2835gpio_peripheral_base'...
Debug: 37 11 command.c:143 script_debug(): command - bcm2835gpio_peripheral_base bcm2835gpio_peripheral_base 0x3F000000
Debug: 39 11 command.c:143 script_debug(): command - bcm2835gpio_speed_coeffs bcm2835gpio_speed_coeffs 194938 48
Debug: 41 11 command.c:143 script_debug(): command - bcm2835gpio_swd_nums bcm2835gpio_swd_nums 20 21
Debug: 43 11 command.c:143 script_debug(): command - bcm2835gpio_srst_num bcm2835gpio_srst_num 18
Debug: 45 11 command.c:143 script_debug(): command - transport transport select swd
Debug: 46 11 command.c:354 register_command_handler(): registering 'swd'...
Debug: 47 11 bitbang.c:402 bitbang_swd_init(): bitbang_swd_init
Debug: 48 11 configuration.c:97 find_file(): found /home/pi/openocd/tcl/target/nrf52.cfg
Debug: 49 12 configuration.c:97 find_file(): found /home/pi/openocd/tcl/target/swj-dp.tcl
Debug: 50 12 command.c:143 script_debug(): command - transport transport select
Debug: 51 12 command.c:143 script_debug(): command - transport transport select
Debug: 52 12 command.c:143 script_debug(): command - transport transport select
Debug: 53 13 command.c:143 script_debug(): command - transport transport select
Debug: 54 13 command.c:143 script_debug(): command - swd swd newdap nrf52 cpu -expected-id 0x2ba01477
Debug: 55 13 tcl.c:567 jim_newtap_cmd(): Creating New Tap, Chip: nrf52, Tap: cpu, Dotted: nrf52.cpu, 2 params
Debug: 56 13 core.c:1373 jtag_tap_init(): Created Tap: nrf52.cpu @ abs position 0, irlen 0, capture: 0x0 mask: 0x0
Debug: 57 13 command.c:143 script_debug(): command - dap dap create nrf52.dap -chain-position nrf52.cpu
Debug: 58 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 59 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 60 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 61 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 62 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 63 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 64 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 65 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 66 13 command.c:354 register_command_handler(): registering 'nrf52.dap'...
Debug: 67 13 command.c:143 script_debug(): command - target target create nrf52.cpu cortex_m -dap nrf52.dap
Debug: 68 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 69 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 70 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 71 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 72 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 73 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 74 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 75 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 76 14 command.c:354 register_command_handler(): registering 'arm'...
Debug: 77 14 command.c:354 register_command_handler(): registering 'tpiu'...
Debug: 78 14 command.c:354 register_command_handler(): registering 'itm'...
Debug: 79 14 command.c:354 register_command_handler(): registering 'itm'...
Debug: 80 14 command.c:354 register_command_handler(): registering 'cortex_m'...
Debug: 81 14 command.c:354 register_command_handler(): registering 'cortex_m'...
Debug: 82 14 command.c:354 register_command_handler(): registering 'cortex_m'...
Debug: 83 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 84 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 85 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 86 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 87 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 88 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 89 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 90 14 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 91 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 92 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 93 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 94 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 95 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 96 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 97 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 98 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 99 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 100 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 101 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 102 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 103 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 104 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 105 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 106 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 107 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 108 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 109 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 110 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 111 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 112 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 113 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 114 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 115 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 116 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 117 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 118 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 119 15 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 120 16 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 121 16 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 122 16 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 123 16 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 124 16 command.c:354 register_command_handler(): registering 'nrf52.cpu'...
Debug: 125 16 command.c:143 script_debug(): command - adapter_khz adapter_khz 1000
Debug: 127 16 core.c:1705 jtag_config_khz(): handle jtag khz
Debug: 128 16 core.c:1668 adapter_khz_to_speed(): convert khz to interface specific speed value
Debug: 129 16 core.c:1668 adapter_khz_to_speed(): convert khz to interface specific speed value
Debug: 130 16 command.c:143 script_debug(): command - nrf52.cpu nrf52.cpu configure -work-area-phys 0x20000000 -work-area-size 0x4000 -work-area-backup 0
Debug: 131 16 target.c:1961 target_free_all_working_areas_restore(): freeing all working areas
Debug: 132 16 target.c:1961 target_free_all_working_areas_restore(): freeing all working areas
Debug: 133 16 target.c:1961 target_free_all_working_areas_restore(): freeing all working areas
Debug: 134 16 command.c:143 script_debug(): command - transport transport select
Debug: 135 16 command.c:143 script_debug(): command - cortex_m cortex_m reset_config sysresetreq
Debug: 137 16 command.c:143 script_debug(): command - flash flash bank nrf52.flash nrf5 0x00000000 0 1 1 nrf52.cpu
Debug: 139 16 command.c:354 register_command_handler(): registering 'nrf5'...
Debug: 140 16 command.c:354 register_command_handler(): registering 'nrf5'...
Debug: 141 17 command.c:354 register_command_handler(): registering 'nrf51'...
Debug: 142 17 command.c:354 register_command_handler(): registering 'nrf51'...
Debug: 143 17 tcl.c:1156 handle_flash_bank_command(): 'nrf5' driver usage field missing
Debug: 144 17 command.c:143 script_debug(): command - flash flash bank nrf52.uicr nrf5 0x10001000 0 1 1 nrf52.cpu
Debug: 146 17 command.c:376 register_command(): command 'nrf5' is already registered in '<global>' context
Debug: 147 17 command.c:376 register_command(): command 'mass_erase' is already registered in 'nrf5' context
Debug: 148 17 command.c:376 register_command(): command 'info' is already registered in 'nrf5' context
Debug: 149 17 command.c:376 register_command(): command 'nrf51' is already registered in '<global>' context
Debug: 150 17 command.c:376 register_command(): command 'mass_erase' is already registered in 'nrf51' context
Debug: 151 17 command.c:376 register_command(): command 'info' is already registered in 'nrf51' context
Debug: 152 17 tcl.c:1156 handle_flash_bank_command(): 'nrf5' driver usage field missing
Debug: 153 17 command.c:143 script_debug(): command - reset_config reset_config srst_only srst_nogate
Debug: 155 17 command.c:143 script_debug(): command - adapter_nsrst_delay adapter_nsrst_delay 100
Debug: 157 17 command.c:143 script_debug(): command - adapter_nsrst_assert_width adapter_nsrst_assert_width 100
Debug: 159 17 command.c:143 script_debug(): command - init init
Debug: 161 17 command.c:143 script_debug(): command - target target init
Debug: 163 17 command.c:143 script_debug(): command - target target names
Debug: 164 18 command.c:143 script_debug(): command - nrf52.cpu nrf52.cpu cget -event gdb-flash-erase-start
Debug: 165 18 command.c:143 script_debug(): command - nrf52.cpu nrf52.cpu configure -event gdb-flash-erase-start reset init
Debug: 166 18 command.c:143 script_debug(): command - nrf52.cpu nrf52.cpu cget -event gdb-flash-write-end
Debug: 167 18 command.c:143 script_debug(): command - nrf52.cpu nrf52.cpu configure -event gdb-flash-write-end reset halt
Debug: 168 18 command.c:143 script_debug(): command - nrf52.cpu nrf52.cpu cget -event gdb-attach
Debug: 169 18 command.c:143 script_debug(): command - nrf52.cpu nrf52.cpu configure -event gdb-attach halt
Debug: 170 18 target.c:1423 handle_target_init_command(): Initializing targets...
Debug: 171 18 semihosting_common.c:97 semihosting_common_init():  
Debug: 172 18 command.c:354 register_command_handler(): registering 'target_request'...
Debug: 173 18 command.c:354 register_command_handler(): registering 'trace'...
Debug: 174 18 command.c:354 register_command_handler(): registering 'trace'...
Debug: 175 18 command.c:354 register_command_handler(): registering 'fast_load_image'...
Debug: 176 18 command.c:354 register_command_handler(): registering 'fast_load'...
Debug: 177 18 command.c:354 register_command_handler(): registering 'profile'...
Debug: 178 18 command.c:354 register_command_handler(): registering 'virt2phys'...
Debug: 179 19 command.c:354 register_command_handler(): registering 'reg'...
Debug: 180 19 command.c:354 register_command_handler(): registering 'poll'...
Debug: 181 19 command.c:354 register_command_handler(): registering 'wait_halt'...
Debug: 182 19 command.c:354 register_command_handler(): registering 'halt'...
Debug: 183 19 command.c:354 register_command_handler(): registering 'resume'...
Debug: 184 19 command.c:354 register_command_handler(): registering 'reset'...
Debug: 185 19 command.c:354 register_command_handler(): registering 'soft_reset_halt'...
Debug: 186 19 command.c:354 register_command_handler(): registering 'step'...
Debug: 187 19 command.c:354 register_command_handler(): registering 'mdd'...
Debug: 188 19 command.c:354 register_command_handler(): registering 'mdw'...
Debug: 189 19 command.c:354 register_command_handler(): registering 'mdh'...
Debug: 190 19 command.c:354 register_command_handler(): registering 'mdb'...
Debug: 191 19 command.c:354 register_command_handler(): registering 'mwd'...
Debug: 192 19 command.c:354 register_command_handler(): registering 'mww'...
Debug: 193 19 command.c:354 register_command_handler(): registering 'mwh'...
Debug: 194 19 command.c:354 register_command_handler(): registering 'mwb'...
Debug: 195 19 command.c:354 register_command_handler(): registering 'bp'...
Debug: 196 19 command.c:354 register_command_handler(): registering 'rbp'...
Debug: 197 19 command.c:354 register_command_handler(): registering 'wp'...
Debug: 198 19 command.c:354 register_command_handler(): registering 'rwp'...
Debug: 199 19 command.c:354 register_command_handler(): registering 'load_image'...
Debug: 200 19 command.c:354 register_command_handler(): registering 'dump_image'...
Debug: 201 19 command.c:354 register_command_handler(): registering 'verify_image_checksum'...
Debug: 202 19 command.c:354 register_command_handler(): registering 'verify_image'...
Debug: 203 20 command.c:354 register_command_handler(): registering 'test_image'...
Debug: 204 20 command.c:354 register_command_handler(): registering 'reset_nag'...
Debug: 205 20 command.c:354 register_command_handler(): registering 'ps'...
Debug: 206 20 command.c:354 register_command_handler(): registering 'test_mem_access'...
Info : 207 20 bcm2835gpio.c:450 bcm2835gpio_init(): BCM2835 GPIO JTAG/SWD bitbang driver
Info : 208 20 bcm2835gpio.c:458 bcm2835gpio_init(): SWD only mode enabled (specify tck, tms, tdi and tdo gpios to add JTAG mode)
Debug: 209 20 bcm2835gpio.c:525 bcm2835gpio_init(): saved pinmux settings: tck 0 tms 0 tdi 0 tdo 0 trst 0 srst 4
Debug: 210 20 bitbang.c:457 bitbang_switch_to_swd(): bitbang_switch_to_swd
Debug: 211 20 bitbang.c:409 bitbang_exchange(): bitbang_exchange
Debug: 212 20 core.c:1668 adapter_khz_to_speed(): convert khz to interface specific speed value
Debug: 213 20 core.c:1672 adapter_khz_to_speed(): have interface set up
Debug: 214 20 core.c:1668 adapter_khz_to_speed(): convert khz to interface specific speed value
Debug: 215 20 core.c:1672 adapter_khz_to_speed(): have interface set up
Info : 216 20 core.c:1450 adapter_init(): clock speed 1004 kHz
Debug: 217 20 openocd.c:141 handle_init_command(): Debug Adapter init complete
Debug: 218 20 command.c:143 script_debug(): command - transport transport init
Debug: 220 20 transport.c:239 handle_transport_init(): handle_transport_init
Debug: 221 20 command.c:143 script_debug(): command - dap dap init
Debug: 223 20 arm_dap.c:106 dap_init_all(): Initializing all DAPs ...
Debug: 224 20 bitbang.c:432 bitbang_swd_switch_seq(): bitbang_swd_switch_seq
Debug: 225 20 bitbang.c:440 bitbang_swd_switch_seq(): JTAG-to-SWD
Debug: 226 20 bitbang.c:409 bitbang_exchange(): bitbang_exchange
Debug: 227 21 bitbang.c:469 bitbang_swd_read_reg(): bitbang_swd_read_reg
Debug: 228 21 bitbang.c:409 bitbang_exchange(): bitbang_exchange
Debug: 229 21 bitbang.c:409 bitbang_exchange(): bitbang_exchange
Debug: 230 21 bitbang.c:496 bitbang_swd_read_reg(): JUNK DP read reg 0 = ffffffff
Debug: 231 21 bitbang.c:519 bitbang_swd_read_reg(): No valid acknowledge: ack=7
Debug: 232 21 bitbang.c:528 bitbang_swd_write_reg(): bitbang_swd_write_reg
Debug: 233 21 bitbang.c:532 bitbang_swd_write_reg(): Skip bitbang_swd_write_reg because queued_retval=7
Debug: 234 21 bitbang.c:580 bitbang_swd_run_queue(): bitbang_swd_run_queue
Debug: 235 21 bitbang.c:409 bitbang_exchange(): bitbang_exchange
Debug: 236 21 bitbang.c:587 bitbang_swd_run_queue(): SWD queue return value: 07
Debug: 237 21 command.c:629 run_command(): Command 'dap init' failed with error code 7
User : 238 21 command.c:694 command_run_line(): 
Debug: 239 21 command.c:629 run_command(): Command 'init' failed with error code -4
User : 240 22 command.c:694 command_run_line(): 
Debug: 241 22 target.c:1961 target_free_all_working_areas_restore(): freeing all working areas
Debug: 242 22 bitbang.c:432 bitbang_swd_switch_seq(): bitbang_swd_switch_seq
Debug: 243 22 bitbang.c:444 bitbang_swd_switch_seq(): SWD-to-JTAG
Debug: 244 22 bitbang.c:409 bitbang_exchange(): bitbang_exchange
Debug: 245 22 bitbang.c:580 bitbang_swd_run_queue(): bitbang_swd_run_queue
Debug: 246 22 bitbang.c:409 bitbang_exchange(): bitbang_exchange
Debug: 247 22 bitbang.c:587 bitbang_swd_run_queue(): SWD queue return value: 00


  Instructions for extra touchpad gestures
Posted by: clover - 12-27-2019, 11:48 PM - Forum: Pinebook Pro Tutorials - Replies (13)

If you would like to have page back and page forward gestures (swipe left and right with THREE fingers), pinch to zoom in and out, quickly switch workspaces and more on your Pinebook Pro, look no further! This is how I got mine set up.



BTW I am using Manjaro KDE (Default Debian tutorial below!!!), if you are using something else, YMMV.



Download xdotool

Code:
sudo pacman -S xdotool




Enable AUR and download libinput-gestures



Code:
sudo pacman -S libinput-gestures
make your users config settings file based off the default



Code:
cp /etc/libinput-gestures.conf ~/.config/
Start it up!



Code:
libinput-gestures-setup start
if you want to have it start on every boot.



Code:
libinput-gestures-setup autostart
Enjoy your new fancy three finger swipes to move back and forth between webpages. The config file is very customizable so feel free to get creative. 



EDIT:

If you would also like the ability to switch between workspaces (desktops) with a four finger swipe, jump to beginning and end of webpage, and pinch to zoom in and out, here is the edit:



Code:
# Jump to the beginning of a webpage (three fingers) gesture swipe down      xdotool key Home # Jump to the end of a webpage (three fingers) gesture swipe up        xdotool key End # Workspace/desktop switch (four fingers) gesture swipe left      4 _internal ws_up # Workspace/desktop switch (four fingers) gesture swipe right     4 _internal ws_down ############################################################################### # PINCH GESTURES: ############################################################################### # zoom in gesture pinch in        xdotool key ctrl+minus # zoom out gesture pinch out       xdotool key ctrl+plus


NOTE: the Manjaro ARM KDE image does not have virtual desktops set up by default, you will have to add a second one yourself:

Virtual Desktops -> Add -> edit your new desktop to say 'Desktop 2'. you should now see Desktop 1 and 2 in the list.





DEFAULT DEBIAN TUTORIAL:



Install Dependencies

Code:
sudo apt-get update sudo apt-get upgrade sudo apt-get install xdotool wmctrl sudo apt-get install libinput-tools




We are going to have to build it ourselves



Code:
git clone https://github.com/bulletmark/libinput-gestures.git cd libinput-gestures/ sudo make install




Add this to ~/.config/libinput-gestures.conf (you will have to create this file yourself)



Code:
# Configuration file for libinput-gestures on Pinebook Pro. # clover, Dec 2019 # # The default configuration file exists at /etc/libinput-gestures.conf # but a user can create a personal custom configuration file at # ~/.config/libinput-gestures.conf. # # NOTE: This configuration works on Manjaro KDE/Plasma and Debian + MATE if you are using something else YMMV ############################################################################### # SWIPE GESTURES: ############################################################################### # Jump to the beginning of a webpage (three fingers) gesture swipe down      xdotool key Home # Jump to the end of a webpage (three fingers) gesture swipe up        xdotool key End # Browser go forward (three fingers) gesture swipe left      3 xdotool key alt+Right # Browser go back (three fingers) gesture swipe right     3 xdotool key alt+Left # Workspace/desktop switch (four fingers) gesture swipe left      4 _internal ws_up # Workspace/desktop switch (four fingers) gesture swipe right     4 _internal ws_down ############################################################################### # PINCH GESTURES: ############################################################################### # zoom in gesture pinch in        xdotool key ctrl+minus # zoom out gesture pinch out       xdotool key ctrl+plus





add user to the input group:
Code:
sudo adduser clover input




If you want it to start on every boot create systemd file

Code:
sudo touch /etc/systemd/system/gestures.service


add this to gestures.service:

Code:
[Unit] Description=gestures [Service] User=clover Group=clover Type=simple ExecStart=env DISPLAY=:0 /usr/bin/python3 /usr/bin/libinput-gestures




Finally, start and enable

Code:
sudo systemctl enable --now




Thats it!


  Disable ttyS2 console
Posted by: inillaug - 12-27-2019, 02:43 PM - Forum: Linux on Rock64 - No Replies

Hello,

I need to connect a device to uart. I saw in documents that the only uart is ttyS2.

ttyS2 is connected to the debug console of the ROCK64.

How can I free ttyS2 for my purposes?

The image I used is "stretch-minimal-rock64-0.8.3-1141-arm64.img".

I opened "/boot/extlinux/extlinux.conf" but there isn't reference to tty console to disable.


  My order from November appears to have shipped.
Posted by: AukonDK - 12-27-2019, 11:44 AM - Forum: General Discussion on Pinebook Pro - Replies (1)

Got a SMS from DHL asking for customs information (I'm in Croatia). They wanted an EORI number but I was able to enter "n/a" and continue to the next page where they wanted a description of the item and a receipt uploaded.
According to the tracking number it hasn't left HK yet. ETA Jan 2nd.


  Impressive Hardware and Software
Posted by: VMMainFrame - 12-26-2019, 03:47 PM - Forum: General - No Replies

https://www.thirtythreeforty.net/posts/2...uns-linux/


  forgot login and password
Posted by: sumer - 12-26-2019, 01:02 PM - Forum: General Discussion on Pinebook - Replies (12)

I forgot my login and pasword. How can I format my pinebook without a pass?


  Google Authentication or similar
Posted by: hitchhiker - 12-26-2019, 10:28 AM - Forum: General Discussion on PinePhone - Replies (9)

Hello,
I need to use a Google Authentication app to generate secure code, is there anything similar for PinePhone?
I mean I would like to buy this phone but I need this feature, otherwise I will use an Android Sad
Operating Systems could be anything.


  In-Circuit Programming of SPI NOR Flash
Posted by: hmuller - 12-25-2019, 08:36 PM - Forum: Pinebook Pro Tutorials - Replies (13)

This approach uses additional hardware to probe, read, write, verify and erase the 128Mbit SPI NOR flash found on the Pinebook Pro.  Although this should work on the PBP's cousins (ROCKPro64, ROCK64, PINE A64-LTS, PINE H64 vB, CUBE?), the process has only been thoroughly tested on the PBP.

In summary, I used a Raspberry Pi (with monitor and USB keyboard), a USB flash drive, a test clip, a breadboard with jumper wire, and an external 3V3 power supply to perform in-circuit operations on the installed GD25Q127C SPI NOR flash ROM successfully. This post is being made with the Pinebook Pro I own and used in the experiments.  

WARNING: I accept no liability for any outcome that results from any use of this information.

I can confirm that, at least on my unit, the SPI NOR flash arrives empty. You will find a detailed write up of the entire process at this link:

https://gist.github.com/hxmuller/1c209d2...37237b649e

The Pine64 single board computers (SBCs) might work as well, I just don't own any to test with.


  Screws and Spacers
Posted by: belfastraven - 12-25-2019, 07:29 PM - Forum: General Discussion on Pinebook Pro - Replies (11)

Could someone please provide the specs for the screws and spacers?  I'm assuming that the screws are soome kind of standard size,  and that I can find replacements for the spacers if I know their dimensions.  I have removed the back cover at least a dozen times and have already lost two screws and have broken spacers . (One was broken when I received the notebook) If I knew what the specs were,  I am sure I could buy them online here (U.S.). 

Perhaps, in future devices, slightly larger screws could be used.

  Also,  would it be possible to buy another bottom cover?  I would love to try putting a hinged port over the areas with the switches (emmc, serial, reset button, emmc socket) so that I wouldn't have to deal with the ten tiny screws.... :-)


  New NVMe SSD not seen by OSes
Posted by: tophneal - 12-24-2019, 07:41 PM - Forum: Pinebook Pro Hardware and Accessories - Replies (14)

Purchased one of these recently and finally got it today. Found plenty of good reviews, but only one with power usage information, and it looks like it should be perfect for the PBP and its power restrictions. Installed it without any issues (great thing that it's a shorter one, I didn't want to cut the board.) However, now that I'm booted back into Manjaro (or Chromium) I can't even see that the drive is there. I'm going to try reinstalling the hardware, but I was curious and thought I'd ask if anyone else has experienced a similar issue. Has anyone's NVMe drive given you issues being made available for formatting/partitioning?

So far neither Gnome Disks or Gparted shows the drive, and I don't see it within /dev/, Chromium doesn't show the drive at all either.