Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ MKDIR = mkdir -p

DEVICES = $(BUILDDIR)/devices/dspic33e.o \
$(BUILDDIR)/devices/dspic33f.o \
$(BUILDDIR)/devices/dspic33ck.o \
$(BUILDDIR)/devices/pic10f322.o \
$(BUILDDIR)/devices/pic18fj.o \
$(BUILDDIR)/devices/pic24fjxxxga0xx.o \
Expand All @@ -28,15 +29,17 @@ raspberrypi: CFLAGS += -DBOARD_RPI
raspberrypi2: CFLAGS += -DBOARD_RPI2
raspberrypi4: CFLAGS += -DBOARD_RPI4
am335x: CFLAGS += -DBOARD_AM335X
rk3308: CFLAGS += -DBOARD_RK3308

default:
@echo "Please specify a target with 'make raspberrypi', 'make a10' or 'make am335x'."
@echo "Please specify a target with 'make raspberrypi', 'make a10', 'make am335x', or 'make rk3308'."

raspberrypi: prepare picberry
raspberrypi2: prepare picberry
raspberrypi4: prepare picberry
a10: prepare picberry
am335x: prepare picberry gpio_test
rk3308: prepare picberry gpio_test

prepare:
$(MKDIR) $(BUILDDIR)/devices
Expand Down
17 changes: 13 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,16 @@ You should have received a copy of the GNU General Public License along with thi

_picberry_ is a PIC programmer using GPIOs that doesn't require additional programming hardware.

It theorically supports dsPIC33E/PIC24E, dsPIC33F/PIC24H, PIC24FJ, PIC18FxxJxx, PIC32MX, PIC32MZ and PIC32MK families, but only some PICs have been tested.
It theorically supports dsPIC33E/PIC24E, dsPIC33F/PIC24H, dsPIC33CK64/32, PIC24FJ, PIC18FxxJxx, PIC32MX, PIC32MZ and PIC32MK families, but only some PICs have been tested.

### Supported hosts

Currently _picberry_ has support for the following host boards/processors:

- the [Raspberry Pi](https://www.raspberrypi.org/)
- Allwinner A10-based boards (like the [Cubieboard](http://cubieboard.org/))
- The [Raspberry Pi](https://www.raspberrypi.org/).
- Allwinner A10-based boards (like the [Cubieboard](http://cubieboard.org/)).
- TI AM335x-based boards (like the [Beaglebone Black](https://beagleboard.org/black) or the [AM3359 ICEv2](http://www.ti.com/tool/tmdsice3359)).
- Rock Pi S / S0 (and maybe other boards based on the RK3308).

Support for additional boards and processors can be easily added, providing the following macro in a header file inside the _hosts_ folder:

Expand Down Expand Up @@ -54,9 +55,10 @@ To build picberry launch `make TARGET`, where _TARGET_ can be one of the followi
| ------------- | ------------------------------------------ |
| raspberrypi | Raspberry Pi v1 or Zero |
| raspberrypi2 | Raspberry Pi v2 or v3 |
| raspberrypi4 | Raspberry Pi 4A or 4B or CM4
| raspberrypi4 | Raspberry Pi 4A or 4B or CM4 |
| am335x | Boards based on TI AM335x (BeagleBone) |
| a10 | Boards based on Allwinner A10 (Cubieboard) |
| rk3308 | Rock Pi S, Rock S0 and others |

Then launch `sudo make install` to install it to /usr/bin.

Expand Down Expand Up @@ -124,6 +126,12 @@ for BeagleBone Black (AM335x):
PGC <-> GPIO60 (P9.12)
PGD <-> GPIO49 (P9.23)
MCLR <-> GPIO48 (P9.15)

for Rock Pi S / Rock S0:

PGC <-> GPIO2_C0
PGD <-> GPIO2_B2
MCLR <-> GPIO2_A4


### Remote GUI
Expand All @@ -144,6 +152,7 @@ To compile it, just launch `qmake` and then `make` in the *remote_gui* folder.
- [PIC12(L)F1822/PIC16(L)F182X Flash Programming Specification](http://ww1.microchip.com/downloads/en/DeviceDoc/41390D.pdf)
- [PIC18F2XJXX/4XJXX Family Programming Specification](http://ww1.microchip.com/downloads/en/DeviceDoc/39687e.pdf)
- [PIC32 Flash Programming Specification](http://ww1.microchip.com/downloads/en/DeviceDoc/60001145S.pdf)
- [dsPIC33CK64/32 Flash Programming Specification](https://ww1.microchip.com/downloads/aemDocuments/documents/OTH/ProductDocuments/ProgrammingSpecifications/70005352c.pdf)

## Licensing

Expand Down
2 changes: 2 additions & 0 deletions src/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@
#include "hosts/rpi4.h"
#elif defined(BOARD_AM335X)
#include "hosts/am335x.h"
#elif defined(BOARD_RK3308)
#include "hosts/rk3308.h"
#endif

#include "devices/device.h"
Expand Down
Loading